For a Computer Science Information Warfare class a few years ago I wrote a python script that ran on libpcap promiscuous packet capture files to parse out facebook chat traffic (earlang tuples passed in clear text), and thought an interesting project would be to port the program to Android.
I would like to rewrite it in Java but can't find any information about packet capturing directly on the handset.
No, you can't do this because your android wifi interface does not support monitor mode(used in monitor mode enabling or packet injection). So it will better for you to use external wifi-adapter which support monitor-mode. few nexsus android devices are capable of packet injection but not all.
External wireless cards are necessary because Android devices do not support monitor mode on most devices apart from some Qualcomm chips used in modern Snapdragon SOC.
As far as I'm aware, there is no way to put the Wifi NIC into monitoring mode from the public API. However, depending on the device used by the phone, you may be able to get the system to put it into monitor mode if you have root access.
Take a look at the code in the android-wifi-tether project:
http://code.google.com/p/android-wifi-tether/source/browse/?r=304#svn/trunk%3Fstate%3Dclosed
There are some Linux binaries and config files in the res/raw/ directory, which are copied into place and controlled by the app in Java.
Remember that you will need to root the phone for this to work.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With