Sniffing for GSM packets

GSM network works on a frequency 850-900 MHz. In other words we can sniff the packet transfer between the phone and a GSM tower with an rtl-sdr dongle.

How to?
At first you might have to get the dependences:
  • apt-get –y install git-core autoconf automake libtool g++ python-dev swig libpcap0.8-dev
  • apt-get install gnuradio gnuradio-dev cmake git libboost-all-dev libusb-1.0-0 libusb-1.0-0-dev libfftw3-dev swig python-numpy libpcsclite-dev 
Now you will need to get libosmocore:
  • git clone git://git.osmocom.org/libosmocore.git
  • cd libosmocore
  • autoreconf –i
  • ./configure
  • make
  • make install
  • ldconfig
  • cd ..
Now you will need airprobe:

  • git clone https://github.com/ksnieck/airprobe.git
At the end you might have to install the gsmdecoder:

  • cd airprobe/gsmdecode
  • ./bootstrap 
  • ./configure
  • make
  • cd ..

At last you might have to install the receiver:

  • cd airprobe/gsm-receiver
  • ./bootstrap
  • ./configure
  • make


Now to start the sniffing:
  • python gsm_receive_rtl.py -s 1e6
Now open wireshark and set the interface to lo(loopback). And set the filter to gsmtap so that you only get the gsm packets.




Note:- 
If you don't get packets change the frequency with the gnu radio GUI. If you want to know more you can refer to this article. You might have to add a few more dependencies if you are using other distributions of Linux.




1 comment :

  1. Hi what using hardware for sniff ? Please describe specification your hardware RTL , thanks

    ReplyDelete