Sniffing your SIMConnecting your deviceYou will need to put your SIM into the SIMtrace hardware, connect
one of the four flex cables to the SIMtrace hardware, put the other side
into the SIM socket of your phone. Use USB to connect the SIMtrace hardware
to the PC. On your PC you should be able to see the USB device now.Launching SIMtrace
$ ./simtrace
simtrace - GSM SIM and smartcard tracing
(C) 2010 by Harald Welte <laforge@gnumonks.org>
Launching the simtrace will try to find
the SIMtrace hardware and then try to claim the USB device. The
application will send the received data encapsulated in the GSMTAP
format on localhost and the IANA assigned GSMTAP port.Launching WiresharkThe wireshark application will start a GUI
and given the right permissions you should be able listen to the
localhost interface and filter for the GSMTAP port on 4729. You should
be able to see the decoded messages like in the figure below.Known Firmware IssuesCombined ATR/APDU messageFor some cards the firmware does not send an USB message at
the end of the ATR. The ATR and first APDU will be send in one message
and the host utility fails to split APDUs and nothing will be traced.
A band-aid for the firmware exists and can be found on the mailinglist.
Lost bytesFor some new high speed cards the firmware can lose bytes. The
issue appears to be when the received bytes will be copied to the memory
of the USB controller. The workaround is to reduce the size of the buffer.
Other modesThe hardware is capable to be used as an ordinary card reader,
provide Man-In-The-Middle (MITM) attacks, or operate as a SIM. The
firmware currently does not have support for these modes.The SIMtrace hardware supports ISO7816 Part 3 T=0/T=1 protocols,
it basically can be used to intercept and analyze any traffic from (ISO7816)
smart cards. This includes SIM cards, Pay TV cards (smart card for CAM),
ATM cards, chip credit card, PKI smart cards, e-passport etc. etc. However
watch out: You have to make your chip card fitting in the "SIM card size"
ID-000 reader or build another adapter.