Legacy tools

legacy tools are the classic pySim-prog and pySim-read programs that existed long before pySim-shell.

pySim-prog

pySim-prog was the first part of the pySim software suite. It started as a tool to write ICCID, IMSI, MSISDN and Ki to very simplistic SIM cards, and was later extended to a variety of other cards. As the number of features supported became no longer bearable to express with command-line arguments, pySim-shell was created.

Basic use cases can still use pySim-prog.

Program customizable SIMs

Two modes are possible:

  • one where you specify every parameter manually :

./pySim-prog.py -n 26C3 -c 49 -x 262 -y 42 -i <IMSI> -s <ICCID>

  • one where they are generated from some minimal set :

./pySim-prog.py -n 26C3 -c 49 -x 262 -y 42 -z <random_string_of_choice> -j <card_num>

With <random_string_of_choice> and <card_num>, the soft will generate ‘predictable’ IMSI and ICCID, so make sure you choose them so as not to conflict with anyone. (for eg. your name as <random_string_of_choice> and 0 1 2 … for <card num>).

You also need to enter some parameters to select the device :

-t TYPE : type of card (supersim, magicsim, fakemagicsim or try ‘auto’) -d DEV : Serial port device (default /dev/ttyUSB0) -b BAUD : Baudrate (default 9600)

pySim-read

pySim-read allows you to read some data from a SIM card. It will only some files of the card, and will only read files accessible to a normal user (without any special authentication)

Specifically, pySim-read will dump the following:

  • MF

  • EF.ICCID

  • DF.GSM

  • EF,IMSI

  • EF.GID1

  • EF.GID2

  • EF.SMSP

  • EF.SPN

  • EF.PLMNsel

  • EF.PLMNwAcT

  • EF.OPLMNwAcT

  • EF.HPLMNAcT

  • EF.ACC

  • EF.MSISDN

  • EF.AD

  • EF.SST

  • ADF.USIM

  • EF.EHPLMN

  • EF.UST

  • EF.ePDGId

  • EF.ePDGSelection

  • ADF.ISIM

  • EF.PCSCF

  • EF.DOMAIN

  • EF.IMPI

  • EF.IMPU

  • EF.UICCIARI

  • EF.IST

Usage: pySim-read.py [options]

Options:
  -h, --help            show this help message and exit
  -d DEV, --device=DEV  Serial Device for SIM access [default: /dev/ttyUSB0]
  -b BAUD, --baud=BAUD  Baudrate used for SIM access [default: 9600]
  -p PCSC, --pcsc-device=PCSC
                        Which PC/SC reader number for SIM access
  --modem-device=DEV    Serial port of modem for Generic SIM Access (3GPP TS
                        27.007)
  --modem-baud=BAUD     Baudrate used for modem's port [default: 115200]
  --osmocon=PATH        Socket path for Calypso (e.g. Motorola C1XX) based
                        reader (via OsmocomBB)