Saturday, December 7, 2013

Wifi Sniffing Ilegal ?

A couple years ago, we were disappointed to see a judge take the technologically wrong stance that data transmitted over WiFi is not a "radio communication," thereby making sniffing of unencrypted WiFi signals potentially a form of wiretapping. Indeed, based on that, the court eventually ruled that Google's infamous WiFi sniffing could be a violation of wiretap laws. This is wrong on so many levels... and tragically, an appeals court has now upheld the lower court's ruling.

There are serious problems with this. Under no reasonable view is WiFi not a radio communication first of all. That's exactly what it is. Second, sniffing unencrypted packets on an open network is a perfectly normal thing to do. The data is unencrypted and it's done on a network that is decidedly open. It's like saying it's "wiretapping" for turning on your radio and having it catch the signals your neighbor is broadcasting. That's not wiretapping. Third, even the court here admits that based on this ruling, parts of the law don't make any sense, because it renders those parts superfluous. Generally speaking, when a court ruling would render a part of a law completely superfluous, it means that the court misinterpreted the law.

Bizarrely, the court seems to rely on the claim that most radio communications are "auditory" (i.e., involving sound) and thus data transmissions are somehow not radio. Seriously. This statement is so uninformed and flat out wrong that it's kind of shocking the court made it. Specifically the ruling says that the "telltale signs" of "radio communications" are that they're (1) "auditory" and (2) "broadcast" and then says it doesn't even need to consider whether or not WiFi signals are broadcast, since the fact that they're not auditory means they don't even have to consider that fact. Seriously. Read this and try not to bang your head on the nearest desk or wall:
We need not reach the question of what exactly constitutes a "broadcast" because the Wi-Fi transmissions in question were not predominantly auditory.
The court also stumbles badly on the other key question in the lawsuit -- over whether or not these things are "readily accessible to the general public." Again, here, if you know anything about the technology you know without question that broadcasting unencrypted data over an open WiFi network are by definition "readily accessible to the general public." That's how it works and how it was designed to work. But the court says it's not because someone might send something "sensitive" from a secured network to an open WiFi network, and the sender didn't intend for that info to be available via open WiFi. But that gets the calculus totally wrong. First, if I'm sending something "sensitive," it should be encrypted, full stop. Second, the security of the endpoint recipient is the responsibility of that recipient, not the sender, so the whole analogy makes no sense.

Later, the court argues that WiFi isn't readily accessible because the signal is "geographically limited." But, um, again, that's true of just about any radio signal. If I have a low-power transmitter, that's still a radio transmitter. It also claims that it's "difficult" to access unencrypted data on an open network, but that's not true at all. They claim it requires "sophisticated" hardware and software, but that's not actually true, and if you believe it's true, you could basically make the same argument about all kinds of radio transmissions.

Either way, there's a fundamental fact here that the courts don't seem to recognize: when you broadcast unencrypted data on an open network it's there for anyone to access. It seems ridiculous to then claim that it's illegal to access it when it's presented in a manner that more or less cries out "come take a look!" This really feels like a situation where the court looked at what Google did, decided it didn't like it, and then tried to tap dance around reality to make it a violation of the law even though it's almost certainly not a violation.

Saturday, August 3, 2013

Recompiling the linux Kernel in Centos

The Linux Kernel is a very interesting piece of Software. Recompiling a linux Kernel is every Linux Geeks right of passage. This is a tutorial on how to Recompile the Linux Kernel.The reasons to compile kernels are far and few in between. You may want to consider doing this if you have exotic architecture or hardware that the mainline kernel does not support, which is a rarity today. Another reason may be performance benefits. If you have a very old machine, creating a custom kernel with a minimal disk and memory footprint could be your thing. Similarly, if you need a kernel for an odd target device that has constrained resources, like a router or such, the only way to get past the limitations would be by compiling your own kernel, Well enough babbling from me lets begin with the process.

Step 1 Install the kernel-devel kernel-headers packages

    [root@blizzard ~]# yum install kernel-devel kernel-headers ncurses  ncurses-devel


Step 2  Install the Development and Debugging Tools these will be needed in order to recompile the linux kernel.

     [root@blizzard ~]# yum groupinstall "Development-Tools" "Debugging Tools"


Step 3  Grab a copy of the lastest kernel. The latest version of the kernel at the time of this writing is 3.6

     [root@blizzard ~]#  wget  http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.0.87.tar.gz


Step 4 Copy the linux-3.0.87.tar.gz kernel package over to the /usr/src directory.This directory holds the linux kernel sources.

[root@blizzard csh11]# cp linux-3.6.tar.gz /usr/src/

Step 5  Unpack the Linux Kernel Package

[root@blizzard src]# tar -xzvf linux-3.0.87.tar.gz


Step 6  Change into the linux-3.6  Directory

[root@blizzard src]# cd linux-3.0.87 


Step 7 Run the make menuconfig (text menu) or make config to configure the kernel
Note: its always best to run the make menuconfig command its alot easier to select or deselect modules.

[root@blizzard src]#  make config


Step 8 Run the make command

[root@blizzard src]#  make 



Step 9 Install the kernel

[root@blizzard src]#  make modules_install install


Step 10 Verify that the new kernel has been install

[root@blizzard src]#  uname -r 


That's it I hope this article will be useful to anyone trying to learn about recompiling the linux kernel in centos.





Tuesday, June 25, 2013

Freebsd on SonyPlayStation 4

This is a wonder time of the year, Freebsd is now 20 years old created by David Greenman, Jordan Hubbard, and Rod Grimes, which started out as freebsd4.3  later to be named freebsd. and I'm finding out that the new SonyPlayStation 4 will be running a modified version of Freebsd 9.0, Sony calls it Orbis OS. This is very good news for hackers and developers looking to do some interesting things with this version of the OS. The PlayStation 4 will offer either console or gui access when booting up the console. Hmmmmm i wonder if i can install python on it lol :). Well this is some cool stuff i will definitely keep everyone posted as time goes on.

Sunday, June 23, 2013

Freebsd on the Rasberry Pi

As of late i've been doing alot of work with freebsd from converting all of my centos servers over to freebsd. Now its time to get freebsd running on the rasberry pi.  Installing FreeBsd on the rasberry pi was pretty simple. I took the following steps in order to get freebsd installed on the pi.


Step 1 ->  get an image i used the following image FreeBSD-HEAD-r249996-ARMv6-RPI-B-WIFI-3GB.img.tgz. Open a web browser and go to the folllowing url http://files.khubla.com/freebsd-raspberry-pi/FreeBSD-HEAD-r249996-ARMv6-RPI-B-WIFI-3GB.img.tgz, or if your a command line buff like my self lol :) you can run the following command











Step2 -> Extract the downloaded image







Step3 -> Umount the SD card






Step4 -> Copy the image to the SD  card using the dd utility (Unix/linux/Mac)  as for windows im not sure what utility to use , but google.com can take care of this issue for you :).






Step5-> Unmount the SD card Again



Once the above steps have been completed, boot up the rasberry pi and bingo you will see the following screen. NOTE: username:pi   password:raspberry  once logged in you can su to root


Tuesday, January 15, 2013

Adding Memory to a Solaris Zone on the fly

Well good morning and god bless everyone. This is a quick tutorial on how to Add memory to a Solaris Zone on the fly while its running without a reboot, Solaris Zones is some pretty cool technology well enough chatter from me lets get to it.

prctl, rcapadm can modify a running zone. and the zonecfg defines the resource parameters of the zone when it boots.

So in order to make changes dynamically you will have to do the following:
1. Update the zonecfg.
2. Use the prctl, rcapadm commands to modify the zone while it is online. make sure that everything matches the changes you've made to the zonecfg.

Below are the detail steps to add the capped-memory  to the running zone container.

zonecfg -z blah 

zonecfg:blah; select capped-memory
zonecfg:blah:capped-memory> info 
capped-memory:
physical: 1G
[swap: 2G]
[locked: 512M]
zonecfg:blah:capped-memory> set physical=2g
zonecfg:blah:capped-memory> set swap=3g

zonecfg:blah:capped-memory> info 
capped-memory:
physical: 2G
[swap: 3G]
[locked: 512M]
zonecfg:blah:capped-memory> end
zonecfg:blah> exit


Modify the zones running settings:

blah:/
# rcapadm -z blah -m 2048m

blah:/
# sleep 60

blah:/
# rcapstat -z 1 1 

blah:/
prctl -n zone.max-swap -v 3g -t privileged -r -e deny -i zone blah

Verify that the settings have taken effect

zlogin -C blah 

Then run the top command 

#top -c 

Well its about that time, i hope you enjoyed and really got something out of this tutorial. 
 until next time i wish you nothing but happiness and success. 

Monday, January 14, 2013

Java 7 Release Update 11

Good Morning hope everyone is having a great day. Well the Java 7 Security Vulnerability issue has finally been resolved with the release of Java 7 update 11. Java update 10 and earlier has an big security hole that allows the attacker to remotely exploit a system without the need for a username and password. To be successfully exploited, an unsuspecting user running an affected release in a browser will need to visit a malicious web page that leverages these vulnerabilities. Successful exploits can impact the availability, integrity, and confidentiality of the user's system. With that being said please head over to http://www.java.com/en/download/manual.jsp to download the latest update.
Also Note: JDK and JRE 6, 5.0 and 1.4.2, and Java SE Embedded JRE releases are not affected. by this vulnerability.

Sunday, January 13, 2013

Understanding ZFS (Zpools)

Good Morning everyone hope everyone is enjoying the weekend, This is a quick tutorial on the zfs filesystem mainly focusing on zpools. But before jumping into command and how things work let me give you a little background on the zfs filesystem, ZFS which stands for Zetabyte File System is a 128bit filesystem that is also a volume manager rolled up in on. In reality this is the Sun Volume manager on steroids. With the Sun Volume Manager the admin had to use soft partitioning in order to expand disk space on the ufs filesystem, this is not so with the zfs filesystem. By simply adding a disk to the disk pool automatically adds disk space to the volume this is such a cool filesystem. Over time developers have ported zfs over to linux and freebsd which in my most humble opinion is the best OS(bsd) :). Well enough of this chatter let me show some of the cools stuff that zfs has to offer beginning with zpools. Zpools are the heart of the zfs filesystem , without zpools there is no zfs period, in order to use zfs you  will have to create a zpool by typing in the following command.

# zpool create (which in my case is nixpool :) )  

#zpool create nixpool c1t0d0s0


List all zpools 

# zpool status -xv 
all pools are healthy

Creating a mirrored zpool 

#zpool create nixpool mirror c0d0 c1d0

Creating a mirrored zpool with a hot spare#Note: These devices are not actively used in the pool, but when an active device fails, it is automatically replaced by a hot spare zfs rocks :).

#zpool create pool mirror c0d0 c1d0 spare c2d0 c3d0

Create a zpool with log devices. log devices come in handy sometimes for example databases often require their transactions to be a on a stable storage devices when returning from a system call. Multiple log devices can also be specified and they can be mirrored. 


# zpool create nixpool c0d0 c1d0 log c2d0 

Another cool thing about zpools is that their properties can be modified. you can get a list of zpool properties by running their following command:

# zpool get all testpool

Adding a Mirror to a Zfs Storage Pool Note: The following command addss two mirrored disks  to the 
pool nixpool, assuming the pool is already made up of two-way mirrors.

# zpool add nixpool mirror c1t0d0 c1t1d0


Destroying a zpool Note: the following command destroys the pool nixpool and any datasets contained within. 


# zpool destroy -f nixpool 

well this will conclude  the zpool tutorial, if you desire to know more about the zpool command. Please go through and read the man pages on your local unix system  

man zpool :).




Saturday, January 12, 2013

Automating Port Installs in Freebsd

Happy New Year Everyone, last year i did not do a good job in blogging and keeping things posted but  year im looking to do a better job with this blog site. Well i  Just spent most of my day messing around with freebsd and talking with a few people on irc who stated that they were having issue installing ports without have to answer any of the menu based questions. so i figured i would do a quick tutorial on automating the installation of ports of a freebsd system.  Well enough talking on this end lets get to it. 

Step1.  im going to assume that you already have the ports tree installed on the system, If you do not have the port tree installed you can do so with the following commands 

portsnap fetch 
portsnap extract 

for more information regarding the portsnap command please check out the man pages.

Step2. cd /usr/ports/mail/postfix  (or whatever port you are trying to install) 

Step3.  make config ( this will create a configuration file in the /var/db/ports/postfix directory) 

Step4. modify the config file if there is one and make all the changes that you would like to that file.

Step5. Once you are satisfied with your config file run the following command 

cd /usr/ports/mail/postfix; env BATCH=yes make install clean 

Note: This is the more cleaner way of automating port installation rather than putting the "BATCH = yes" into the /etc/make.conf file.


NOTE: This procedure has been tested on freebsd 8.2 so as far as i know this should work on other versions of freebsd.

Well thats all for right now. I'm to go watch a movie i hope someone gets something out of this tutorial. 



      

Tuesday, December 4, 2012

The Adventures of the BsdJedi.


 Well today is Decemeber 3rd alot has happend with me since the last time ive posted
anything on this blog. Well lets see I got married on Nov 11, 2012 :) that was the best thing i could have ever done in my life.
I'm really enjoying my life. Also i have decided to take the plunge into the Security Area and really give this Pentesting Stuff a go.
ive been dabbling a bit for a while with security and pentesting but now im going to make this my lively hood. First Step will be the OSCP certification
which is a hands on pentration testing cert. So over the course of the rest of this yr and into 2013 i will be posting sample code as well as any security issues that i might
stumble across along the way. Well im Off to work :)

Monday, October 8, 2012

New Direction

I've been away from blogging for a while. life has just been a roller coaster. Ive been planning for my Wedding which is around the corner nov 10th and then trying to run my own business which is doing pretty well so far so good, im just feeling thankful and blessed for everything that i have accomplished. Just been looking into a new direction of becoming a pentester and focusing on programming mainly python for the time being im starting to realize that my passion is with coding and creating things. I've just recently purchased a Rasberry pi and that got my fire back. Currently in the process of Studying for my CEH, and then finish off the RHCSA and RHCE. just trying to make it happen. This my new adventure and mission taking one day at a time and changing the world with open source and coding. Well its time for work everyone enjoy your day and be blessed. :)

Sunday, July 22, 2012

A New Day

Well i'm finally back i haven't blogged since april its been a while a lot has happened since my last post. Well i decided to leave Nasa and go into business for myself. Ive been planning to make this move for a long time, but i did not think i was going to do it this soon. But There were just so many wrong things happening that i just could not take it anymore. Sometimes i wonder about IT and its direction you get these corporate guys that come in and think they know Technology but only to find out that they are just button pushers waiting on your next big idea so they can take it and say that they created it. Well enough rambling about that, I'm very excited about my new adventure this is going to be very interesting to see where this is going to go. Well thats all for now time for breakfast and starting the day. Later

Cracking Kerberos Service Tickets (TGS) Using Kerberoasting

As of late I've been spending a lot of time researching and learning different techniques when it comes to attacking Active Directory En...