Smartcard Reader/Writer



20000905

Brute force cracking added. The controller sends all the possible commands consecutive in all bits of the card while watching the contents for any changes of the data. If there are some commands that can change the data of the card this device will find them.

phoenix

20000901

This is a program for Atmel AVR AT90S series (2313,4414,8515 only) controllers. It uses AVR_stdlib for most non-smartcard related functions. Only 8 wires are needed to interface the smartcard with the controller.
To control the device a serial port is used and commands are issued to the controller and then executed in series. Examples of simple reads are shown below. Currently only basic read functions are available and for synchronous cards only. Soon asynchronous support will be added along with write support.

phoenix


My SCRW in development..
Source code: scrw4.asm
Requires: AVR_stdlib


Example #1: A dump of a greek phonecard. 64 bytes are read.
SCRW v4.20000901 by Phoenix (phoenix@grhack.gr)
mplex# 3498
Resetting smartcard..
mplex# 254098
Reading smartcard..
D24500F70DC6955E00007E1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFE07FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
mplex#

Example #2: A dump of Sussex University's library smartcard used in photocopiers. (190bytes)
SCRW v4.20000901 by Phoenix (phoenix@grhack.gr)
mplex# 3498
Resetting smartcard..
mplex# 25BE98
Reading smartcard..
6DFFFFFFFFFFFFFFFFFFFFFFFFFFFFA17A2015F0BA21FFFEBDABA8001E0000801FAB7A53CBD16467
AD4FF3BB515DE6C2D60997721FFFFFFFFFFFFFFFFFFE6BB1E353D9F1FAB7A2A6447E8FB3BB65FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFE6DFFFFFFFFFFFFFFFFFFFFFFFFFFFFA17A2015F0BA21FFFEBDABA8001E000080
1FAB7A53CBD16467AD4FF3BB515DE6C2D60997721FFFFFFFFFFFFFFFFFFE
mplex#

Example #3: Brute forcing the photocopiers cashcard. 128bytes card with max 6 commands.
SCRW v4.20000905 by Phoenix (phoenix@grhack.gr)
mplex# 66800398
Brute force starting.. [80,03]
Dumping: 3F
6DFFFFFFFFFFFFFFFFFFFFFFFFFFFFA17A2015F0BA21FFFEBDABA8001E000080
1FAB7A53CBD16467AD4FF3BB515DE6C2D60997721FFFFFFFFFFFFFFFFFFE6BB1
E353D9F1FAB7A2A6447E8FB3BB65FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
Initialising table: 02
Current block: 000000
Comparing: 7F
Crunching card..
Current block: 010000
Comparing: 7F
Crunching card..
Current block: 020000
Comparing: 7F
Crunching card..
and so on...