in reply to Re: Kismet Drone
in thread Kismet Drone

Just to keep everyone up to date, and so that I have a backup of this; here's some sloppy code.
#!/usr/bin/perl -w use Net::Pcap; my $err; my $dev = $ARGV[0]; my $object; $object = Net::Pcap::open_offline($dev, \$err); unless (defined $object) { die 'Unable to create packet capture on device ', $dev, ' - ', $er +r; } Net::Pcap::loop($object, -1, \&callback_function, ''); Net::Pcap::close($object); sub callback_function { my ($user_data,$header,$packet) =@_; #the beacons have to be atleast 37 bytes if (length($packet)>36) { my $sourcemac = unpack ('H12',substr($packet,10,6)); my $bs = unpack ('H12',substr($packet,16,6)); my $o = unpack ('H2*',substr($packet,0,1)); my $len = sprintf("%x",unpack ('H1',substr($packet,38,1))); my $ssid=0; if ($o eq "80") { $ssid=unpack ('A*',substr($packet,38,$len)); if ($ssid eq " ") { #doesnt work yet $ssid=">no ssid<"; } print "Beacon Frame: source mac:",$sourcemac," basestation id: $ +bs other: ",$o," ssid: $ssid len: $len\n"; } } }