SpoofMAC - Spoof your MAC address in Mac OS X
feross.org
feross.org
To those wondering why you would use SpoofMAC when you can just do `sudo ifconfig en1 ether 00:11:22:33:44:55:66`, let me explain why I wrote this.
The main advantage of SpoofMAC is that it automatically disassociates from any connected Wi-Fi networks before it changes your MAC address. The ensures the MAC change will be applied correctly. The biggest annoyance with doing it manually is figuring out how to dissociate manually, which usually requires trying to connect to a non-existant network.
After I put the code on GitHub, a few random contributors submitted patches for features like random MAC generation, etc. <3 open source.
Glad that so many are finding this useful.
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport --disassociate
EDIT: and looking at the source, that's exactly how you're doing it.You repeatedly bump each other off of the connection until someone gives up and leaves. Please don't do that.
sudo ifconfig [device] [mac]
...and one can replace [mac] with `openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/.$//'` for a random address.
openssl rand -hex 6 2>/dev/null | sed 's/\(..\)/\1:/g; s/.$//'
because if you are running this on startup there is a chance HOME or RANDFILE aren't set yet, the .rnd file doesn't exist or the permissions on it are not set properly - resulting in a warning such as "PRNG not seeded" or "unable to write 'random state'" that would be passed into the ifconfig command.I'm also in that habit for anything fired at startup or in cron so you don't pollute logs.
i.e. sudo python SpoofMAC.py en1
It's eventually going to throw up alarms if your macbook pro osx 10.8.2 with an valid apple or intel MAC is on a network segment, then drops off, then a machine reappears with a DECstation MAC address.
I can't see how you could do this without swapping out part of the OS, which is where the network stack lives these days. A simpler way might be to swap out the whole OS, by using virtual machines that communicate on an internal virtual LAN: The Windows XP virtual machine sends the packets under control of the Linux virtual machine that's hosting the analysis software.
> It's eventually going to throw up alarms if your macbook pro osx 10.8.2 with an valid apple or intel MAC is on a network segment, then drops off, then a machine reappears with a DECstation MAC address.
It's an eternal game of cat and mouse anyway; if it isn't detailed MAC address analysis, it's subtle timing quirks, or hooking AM radio receivers to computers listening for the sounds of CPUs grinding through AES, or something else.
On another note: GO BEARS! Down with the tree!
When I was living in a dorm on campus, I had two devices (gaming consoles) whose OSs didn’t support WPA2, meaning I had to connect them to dragonfly2. These two devices filled up my whitelist. And occasionally, the dragonfly3 network signal totally dropped out while I was using that network on my computer, while the dragonfly2 network stayed accessible. So then I wanted to connect to dragonfly2 with my computer.
To do that, I had to log in to the web interface, select one of my other devices to unlist, and then add my computer’s MAC address in its place. If I had had SpoofMAC, I could have used it to set my computer’s MAC address to match one of my other device’s. Running SpoofMAC would probably have taken much less time than changing my whitelist through the web interface, and would have obviated the need to re-list the removed device when I wanted to use it again.
Also, for these silly things I usually keep a DD-WRT capable router around like the trusty WRT54G or one of the newer Buffalo routers. It's easy to use it in a bridge configuration to have as many devices as you want behind it.
For example, the Panera Breads in my area all limit their connection times to 30 minutes during lunchtime. If you spoof your MAC address every 30 minutes, you can keep going.
Because their technical support was so awful, it was easier to spoof the MAC of the old server than it was to get through to someone who could actually whitelist my new machine's MAC.
`$ sudo ifconfig en1 ether 00:11:22:33:44:55:66`