Project

General

Profile

SoftSIM » History » Revision 12

Revision 11 (fixeria, 01/21/2019 03:03 AM) → Revision 12/15 (fixeria, 01/21/2019 03:16 AM)

h2. softSIM 

 softSIM is a collection of tools to play with the SIM applications (in the SIM card or elsewhere). 

 It uses "bluetooth":http://bluetooth.org/ "profile":https://www.bluetooth.org/Technical/Specifications/adopted.htm "SIM Access Profile":https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=158740 as abstraction layer to access the SIM (but no Bluetooth is required). 

 Possible use cases: 

 * virtual SIM, simulated in software 
 * remote SIM access, using PC/SC interface 
 * remote SIM access, using a Bluetooth enabled phone as reader 


 h2. Requirements 

 All the scripts are written in Ruby: 

 <pre> 
 $ sudo apt-get install ruby 
 </pre> 

 To use all tools, additional libraries and gems are required (you might want to use "sudo gem install" if you have ruby smartcard package loading problems): 

 <pre> 
 $ sudo apt-get install rubygems ruby-dev libdbus-ruby pcscd ruby-serialport libpcsclite1 libpcsclite-dev libruby libxml-ruby 
 $ gem install --user-install smartcard 
 </pre> 

 detailed information is in README. 

 h2. Source code 

 <pre> 
 $ git clone git://git.osmocom.org/softsim.git 
 </pre> 

 


 h2. Tools 

 h3. General description SAP 

 At the moment, the following tools are available: 

 * demo_server.rb - (BT)SAP Server implementation. Can either SAP is useful as it provides a easy common way to talk to a PC/SC reader, or use a stored dump. Clients can connect either via UNIX socket, or using TCP/IP. the SIM, not restricted to any device (as PCSC is). 
 * demo_client.rb - (BT)SAP Client demo. Can connect A tool to our demo_server.rb either via UNIX socket, or using TCP/IP. Alternatively can connect to a regular phone (that does support BTSAP servers is also provided (some phones offer this profile) using Bluetooth. Basically executes a sequence of common APDUs. 
 * apdu_forward.rb - forwards APDUs from a UNIX socket profile). 

 You have to a (BT)SAP server using TCP/IP. tell the Server how to communicate with the SIM. 

 h3. SIM information 

 h3. SIM copy 

 <pre> 
 ./demo_client.rb -t copy 
 </pre> 

 This file can then be used by the SIMOS server to do softSIM. 

 There are limitations to the copy. Only the body of the files with access condition ALWAYS or CHV1 can be read, otherwise only the header is saved. Ki (the secret key used for authentication and encryption) *can not be extracted* (SIM cards can not be cloned). Only some A38 triplets are saved. 

 Copying a card takes > 5min. Sometimes the copy hangs (the APDU traffic is blocked). 
 I don't know the origin of this problem (smartcard gem, pcscd, reader, card, ???). 
 Just wait ~30s and it will continue. 

 

 h2. Bugs & more 

 Please contact the author if any bug is discovered.
Add picture from clipboard (Maximum size: 48.8 MB)