从身份验证跟踪中恢复Mifare Classic密钥

时间:2014-07-16 12:42:46

标签: rfid mifare contactless-smartcard

我获得了Mifare Classic身份验证跟踪,并且想知道是否有任何可用于获取密钥的工具或教程?

Start    | End     | Src | Data
---------|---------|-----|--------
0        | 4704    | Rdr | 60 00 f5 7b
6708     | 11380   | Tag | 21 91 c4 03
82240    | 83552   | Rdr | 26
249792   | 250848  | Rdr | 26
252020   | 254388  | Tag | 04 00
333568   | 336032  | Rdr | 93 20
337204   | 343092  | Tag | 45 c7 a6 23 07
446208   | 456672  | Rdr | 93 70 45 c7 a6 23 07 f8 f6
457908   | 461428  | Tag | 88 be 59
1870544  | 1875248 | Rdr | 60 00 f5 7b
1877252  | 1881924 | Tag | be fd 8b 22
1953424  | 1954736 | Rdr | 26
2120208  | 2121264 | Rdr | 26
2122452  | 2124820 | Tag | 04 00
2205152  | 2207616 | Rdr | 93 20
2208788  | 2214676 | Tag | 45 c7 a6 23 07
2317024  | 2327488 | Rdr | 93 70 45 c7 a6 23 07 f8 f6
2328724  | 2332244 | Tag | 88 be 59
2538400  | 2543104 | Rdr | 60 00 f5 7b
2545108  | 2549844 | Tag | b3 38 4c d0
2651552  | 2660864 | Rdr | 55 09 6b fe ec fa ba c2 !crc
2662100  | 2666836 | Tag | a3! bf! 4f 07
17282768 |17287536 | Rdr | ef b6 fc 33 !crc

1 个答案:

答案 0 :(得分:3)

论文Garcia et al.: Dismantling MIFARE Classic (ESORICS 2008)应该给你一个很好的起点:

  

第二个更有效的攻击使用了加密的弱点   CRYPTO1密码允许我们恢复内部状态   密码给出了密钥流的一小部分。一个人来攻击这个攻击   只需要读者进行一次或两次部分认证即可恢复   一秒钟内的密钥,在普通硬件上。这次袭击   不需要任何预先计算,只需要大约8 MB   要执行的内存。

     

当攻击者窃听通信时   在标签和阅读器之间,相同的方法使我们能够恢复所有   跟踪中使用的密钥并对其进行解密。这给了我们足够的   读取卡,克隆卡或将卡还原到的信息   以前的状态。我们已经成功地执行了这些攻击   真实的系统,包括伦敦牡蛎卡和荷兰人   OV-Chipkaart。

此外,CRAPTO1 library(基于上述论文和其他一些发现)应该为您提供一个如何实现工具来从已记录的MIFARE Classic跟踪中恢复密钥的起点。

此跟踪的有趣部分是:

  446208 | 456672 | Rdr | 93 70 45 c7 a6 23 07 f8 f6

这是读者的选择命令,您可以从中获取标记的UID:45 c7 a6 23

 1870544 | 1875248 | Rdr | 60 00 f5 7b

这是一个针对扇区0的密钥A的身份验证命令。

 1877252 | 1881924 | Tag | be fd 8b 22

这是标签响应认证命令发送的随机数。标签发送随机数后,命令就会中止。

 2538400 | 2543104 | Rdr | 60 00 f5 7b

这是一个针对扇区0的密钥A的身份验证命令。

 2545108 | 2549844 | Tag | b3 38 4c d0

这是标签响应认证命令发送的随机数。

 2651552 | 2660864 | Rdr | 55 09 6b fe ec fa ba c2 !crc

这是读者的随机数(用密钥流ks 1 加密)和读者对标签挑战(随机数)的响应,基于认证密钥(用密钥流ks 2加密)。

 2662100 | 2666836 | Tag | a3! bf! 4f 07 

这是标签对基于身份验证密钥(使用密钥流ks 3 进行加密)的读者挑战(随机数)的响应。


我想知道我的计算是否正确,关键是36 ... 41!?