返回顶部

NFC模拟加密卡

  [复制链接]
天际线0907 显示全部楼层 发表于 2021-1-18 00:52:33 |阅读模式 打印 上一主题 下一主题 来自: 中国–山东–泰安肥城县 电信
记录小米手机NFC模拟加密门禁卡,以及Proxmark3的使用。
( n, u! g& S" R2 K7 j
  j9 f4 ^' e  d8 \9 D0. 缘起
4 L1 [& x1 s! Y% e" B2 @1 V
. O, v% n) p: @& C) p之前,小区用的门禁卡为非加密的门禁卡,使用小米手机系统自带的门卡模拟功能复制即可。
* C* @8 n) L9 ]3 R2 C后来,小区门禁系统换了一家供应商,再使用之前的方法复制门禁卡,手机提示为加密卡,无法复制。$ ?# n5 q3 G* d3 k3 U3 ~7 p% Y

/ Z" A' {, Z  v! f新的门禁系统,更安全了,也支持APP远程控制开门了,直到有一天门禁卡丢了,开始使用APP开门,发现这APP写得烂透了,十次有五次点击开门按钮无反应,需要反复退出、打开APP多次才能点击开门按钮成功,还有两次直接没了开门按钮,提示到物业管理处处理……
6 B* c6 a( \6 [& `6 O8 `" Y那个时候,我又开始怀念用手机刷门禁的快感了。。
5 }6 w& L" f( u* T& W4 j; B5 Q. B# |8 H: Z# n; A; I( d; M3 o
1. 基础知识
2 k, {) q1 j3 ^1 U9 S
  G% X9 @0 G% ~% \于是,我开始查阅资料,基本确定了小米手机是还是可以通过其它方式模拟加密门禁卡的。
% C4 v, u: @; c然后,资料查多了,记不到,又怕以后用到需要重新找,干脆水一篇博客记录下来。* e, G" ?) u3 ]) F* ?% k
如果熟悉NFC和IC卡,或者只想模拟加密门禁卡,并不关心原理,这章可以跳过,直接看下一章。3 N. `; Q* }, {3 W

9 W8 ^+ e2 }8 W# B; x5 R1.1 ID卡和IC卡
$ p# ]9 j) C3 C$ i+ A0 c# |# x$ v5 ?" j: w
ID卡:全称身份识别卡(Identification Card),多为低频(125Khz),是一种不可写入的感应卡,含固定的编号,主要有台湾SYRIS的EM格式,美国HID、TI、MOTOROLA等各类ID卡。
/ ~+ z% I, m6 o2 t( {( F3 g  H" J0 F$ J9 v- j/ v% T
IC卡:全称集成电路卡(Integrated Circuit Card),又称智能卡(Smart Card)。多为高频(13.56Mhz),可读写数据、容量大、有加密功能、数据记录可靠、使用更方便,如一卡通系统、消费系统等,目前主要有PHILIPS的Mifare系列卡。, i) f$ Z' u/ \# r" f: a  m* C

2 X9 r% {% u8 o; c. c: E8 i主要区别:
, A5 P% x# n1 n5 r7 lID卡,低频,不可写入数据,其记录内容(卡号)只可由芯片生产厂一次性写入,开发商只可读出卡号加以利用,无法根据系统的实际需要制订新的号码管理制度;
* e/ b- p" w4 S9 ~' d3 xIC卡,高频,不仅可由授权用户读出大量数据,而且亦可由授权用户写入大量数据(如新的卡用户的权限、用户资料等),IC卡所记录内容可反复擦写;
0 E7 ^2 k: O, G+ P& F2 J# H4 {: a0 P% L* Z2 d1 \
IC卡由于其固有的信息安全、便于携带、比较完善的标准化等优点,在身份认证、银行、电信、公共交通、车场管理等领域正得到越来越多的应用,例如二代身份证、银行的电子钱包,电信的手机SIM卡、公共交通的公交卡、地铁卡、用于收取停车费的停车卡、小区门禁卡等;
& J+ Y3 J* }' K8 h( M7 c8 E) S4 y" k3 v  G

/ X4 ]% t1 o9 P" ~: |2 r' Y& p% |, c/ C
- t: `7 z5 v1 p* C5 o
. v: ~' Z3 k6 U# A5 J
以上图片来自淘宝商家,网上找了半天相关资料,发现淘宝商家解释得最清楚。
1 R5 [: l. x+ e' u  T- h
% |6 ?$ I, \" N8 u总结:, g8 ?! @1 q: o3 t# P2 a* t
1.ID卡多为低频,IC多为高频;
1 U5 d% [; E! ?3 E' |2.IC卡整体上看比ID卡更有优势,市面上使用的大多数也是IC卡;" m1 I) r' H6 P3 Y
3.对于矩形白卡,里面为矩形线圈、表面没有编号的多为IC卡,里面为圆形线圈、表面有编号的多为ID卡;
2 ?! O: `* ]+ s* p3 X0 I4.对于异形卡,有编号的多为ID卡,最好使用带NFC的手机进行测试(目前手机NFC只能读高频13.56Mhz),IC卡会有反应;
) ?- @4 S+ }: X: U
* o# o4 @# ~: |. P, z) N, R1.2 接触式和非接触式IC卡1 J5 M+ g1 I, N6 D& @3 O# g

" p3 I$ I* K4 I. V0 b$ TIC卡又可以分为接触式IC卡和非接触式IC卡。0 o+ F* F4 O( @$ A5 s" J* R. J& @
0 e& h" g9 R4 C- e
接触式IC卡:该类卡是通过IC卡读写设备的触点与IC卡的触点接触后进行数据的读写;
$ v7 ~. z6 J- j, w7 r3 s2 P" H$ G& T$ {; S
非接触式IC卡:又称射频卡、感应式IC卡,该类卡与卡设备无电路接触,而是通过非接触式的读写技术进行读写(例如RFID、NFC),其内嵌芯片除了CPU、逻辑单元、存储单元外,增加了射频收发电路。该类卡一般用在使用频繁、信息量相对较少、可靠性要求较高的场合。' Y0 {- {; u* C0 B- {# C) M
" j( T1 K4 l9 Q5 A' T' u' \
两者比较好区分,直接看卡上有无金属触点即可。% y7 ]3 M$ \5 f9 Z# n! _. w  l  l0 D

5 n( _, b5 c& V  l4 y5 Q
- `5 i  }+ v3 f! o$ O: h. V
1 N8 r+ M* G4 t. i1 m* |9 {. J1.3 RFID和NFC% i: N6 }9 e" `4 c' B! a" U2 t
$ @+ U9 O8 [& q- d
非接触式的读写技术常见的有两种:RFID技术和NFC技术。
9 g1 L1 @, ]1 Y' R- k
6 V. a$ x/ M% G! V5 g3 L$ wRFID技术:0 Z. l& i  N7 H& Q
1.通常应用在生产,物流,跟踪和资产管理上;7 a1 K4 W4 e6 S/ h- E
2.根据频率划分包含低频、高频(13.56MHz)、超高频、微波等;8 c, Z7 `9 ]4 P1 L- o( X, q" w5 Y
3.作用距离取决于频率、读写器功率、读写器天线增益值、标签天线尺寸等,工作距离在几厘米到几十米不等;
; L* G5 o- G8 t0 ?. E4.读写器和非接触卡可以是一对多关系,也可以说一对一关系;且读写器和非接触卡是两个实体,不能切换;
' t3 l3 W4 ]9 ?3 G" r$ B. x3 u" S3 g
NFC技术:
7 j  |6 e% [3 @* L0 p1.通常应用在门禁,公交卡,手机支付等领域;
. Y" l  u. J4 v" _2.频率也是13.56MHz,且兼容大部分RFID高频相关标准(有些是不兼容);
  m$ T( F  E2 o; d4 S% o' i& `3.NFC作用距离较短,一般都是0~10厘米;  q4 k+ A) p* I7 R) D2 n
4.读写器和标签几乎都是一对一关系;且支持读写模式和卡模式,可以作为读写器也可变为非接触卡;
% P! z1 B* K3 @# ^3 d
6 G5 o- V$ g; D; ^总体来说,NFC是RFID的子集,但NFC有些新特性又是RFID所不具备的。0 d8 T6 I& Z. g. h$ _# _, t7 \- G
3 G* ], i% o' n8 X+ A6 T2 x5 ^
1.4 ID卡类型
4 B' I7 l2 i9 o
3 r+ ?2 e( H) ~7 k1 EID卡,工作在低频(125Khz),根据卡内使用芯片的不同,有如下分类:! R$ \4 @7 M( S/ ^& Z

' ~. F# i) q0 `7 T- YID卡% V8 y* p7 q/ B
EM4XX系列,多为EM4100/EM4102卡,常用的固化ID卡,出厂固化ID,只能读不能写;常用于低成本门禁卡,小区门禁卡,停车场门禁卡;
! O, B& H, u/ i/ z
  G' T( B, V4 A% U! z/ W4 C- ~ID白卡
% s, G! s1 T8 V" P) b; oEM4305或T5577,可用来克隆ID卡,出厂为白卡,内部EEPROM可读可写,修改卡内EEPROM的内容即可修改卡片对外的ID号,达到复制普通ID卡的目的;0 f/ M# r7 `& f& c1 e0 m' N
T5577写入ID号可以变身成为ID卡,写入HID号可以变身HID卡,写入Indala卡号,可以变身Indala卡9 |& _% P( O4 n" I# J& [
& ~/ U1 J. J! V7 [. a; n1 B
HID卡3 ^2 L) p3 n1 k* O
全称HID ProxⅡ,美国常用的低频卡,可擦写,不与其他卡通用;
; H0 V+ c' W+ g! c4 |7 U5 o4 N+ f- B7 E8 `2 Z
1.5 IC卡类型: M0 l0 T7 E0 h6 e
4 E% ~! f. A" N
IC卡中最常见的是NXP Mifare系列卡,工作在高频(13.56Mhz),根据卡内使用芯片的不同,有如下分类:
" r7 i! W/ Y5 `: o, F" Y% Z& r  O5 p9 o, i3 ^
M1卡( H( j) [( V2 O( D5 v
全称Mifare S50,是最常见的卡,出厂固化UID(UID即指卡号,全球唯一),可存储修改数据;常用于学生卡,饭卡,公交卡,门禁卡;
" E& g( o7 a( X
# B' |2 W( _) r3 h8 U% wM0卡/ Q! y, X: i; A$ h& F1 q9 `* I
全称Mifare UltraLight,相当于M1卡的精简版,容量更小、功能更少,但价格更低,出厂固化UID,可存储修改数据;常用于地铁卡,公交卡;( r, a4 K0 j5 n5 o! \: O" ~
1 L/ I! Y7 I& \3 ~" {; u$ C$ M
以上两种固化了UID,为正规卡,接下来就是一些没有固化UID,即不正规的卡:3 S. J0 N" ]' j* h
5 w+ u9 W, ^* d3 t. P# P$ ^: D
UID卡
* N, W. Q! Q+ }% `; j0 @  u0 K全称Mifare UID Chinese magic card,国外叫做中国魔术卡,M1卡的变异版本,使用后门指令(magic指令),可修改UID(UID在block0分区),可以用来完整克隆M1卡的数据;& G4 t2 U2 S3 F! q" N
但是现在新的读卡系统通过检测卡片对后门指令的回应,可以检测出UID卡,因此可以来拒绝UID卡的访问,来达到屏蔽复制卡的功能(即UID防火墙系统);
2 j% T* f+ |. [9 O# e0 z: M( B7 m- t, o2 C$ x7 G
CUID卡
1 U* ?- e; S6 W; e为了避开UID防火墙系统,CUID卡应运而生,取消响应后门指令(magic指令),可修改UID,是目前市场上最常用的复制卡;
  i' l0 ]  v/ q  X- a近两年,智能卡系统制造公司,根据CUID卡的特性研发出CUID卡防火墙,虽然现在(2019年)还不是很普及,但是总有一天CUID卡会和UID卡一样面临着淘汰;
2 L" M2 G2 {. ?) i
5 v7 g) ^1 b  `4 ]- L. L5 hFUID卡
; Y5 B" q* M# ^5 O, p0 HFUID卡只能写一次UID,写完之后自动固化UID所在分区,就等同M1卡,目前任何防火墙系统都无法屏蔽,复制的卡几乎和原卡一模一样;: J* R! W+ L2 w+ L
但缺点也相对明显,价格高、写坏卡率高,写错就废卡。
8 b( U6 V7 I% D% w) r+ x8 |+ j( r" A) m# ?; f: R0 Y+ }, ^/ C
UFUID卡
5 Z; y7 I* V! O) A集UID卡和FUID卡的优点于一身,使用后门指令,可修改UID,再手动锁卡,变成M1卡。* o# N4 q% @& G2 N
可先反复读写UID,确认数据无误,手动锁卡变成M1,解决了UID卡的UID防火墙屏蔽,也解决FUID的一次性写入容易写错的问题,且价格比FUID卡还便宜;, N$ S& s5 d; l3 r* k
  W3 t3 w6 g& X3 d) q
判断是M0卡(Mifare UltraLight),还是M1卡(Mifare Classic 1k),可以通过SAK值判断。
7 ^8 b) L. W7 m' ?3 i. l/ D$ }2 V1 u  i+ q- d) a. i- t
产品ATQASAKUID长度Mifare Mini00 04094 bytesMifare Classic 1k00 04084 bytesMifare Classic 4k00 02184 bytesMifare Ultraligh00 44007 bytesMifare Plus00 44207 bytes
; \% K: N" w+ \( |% U9 X; L$ _2 a, ^5 f- M. n! L$ P3 E: B0 R, S& b
1.6 IC卡详细分析
" r0 ?3 Y% G9 E- e
8 i5 H* P6 g# H0 n$ W* w. k1.6.1 IC卡存储器结构& T  R3 m9 T6 s1 z9 k$ q) w) [. J

, x1 h4 ~) P& B( \& d- d以M1卡为例,介绍IC卡数据结构。/ m; t) s1 |2 Y. D6 O0 {; t; v
M1卡有从0到15共16个扇区,每个扇区配备了从0到3共4个数据段,每个数据段可以保存16字节的内容;
, s# I1 G9 u% O1 C: F! D每个扇区中的段按照0~3编号,第4个段中包含KEYA(密钥A 6字节)、控制位(4字节)、KEYB(密钥B 6字节),每个扇区可以通过它包含的密钥A或者密钥B单独加密;
/ E  U" L- |) e: W8 W- }
$ x& o- j7 h6 f
# |3 B3 Y+ ?6 y# u* @- J) U8 d3 p( E, P. g; P" _* `, a: ?6 f+ t
厂商段: ?0 R# ~: ~0 W4 ]$ i
每张M1卡都有一个全球唯一的UID号,这个UID号保存在卡的第一个扇区(0 扇区)的第一段(0 编号数据段),也称为厂商段。) Y: z2 t4 R1 W4 c  W& w) h3 c
其中前4个字节是卡的UID,第5个字节是卡 UID 的校验位,剩下的是厂商数据。
" ^4 R, r' o$ d% b并且这个段在出厂之前就会被设置了写入保护,只能读取不能修改,前面各种能修改UID的卡,UID是没有设置保护的,也就是厂家不按规范生产的卡。8 e. t; S/ o# d

1 I9 Z( m1 l6 _9 [- c" D4 B
( A/ c3 m* X4 q; d
3 E0 j/ l- z( D+ A数据段
$ @5 ?* u) `& G! [$ f/ P除了第0扇区外,其它每个扇区都把段0、段1、段2作为了数据段,用于保存数据。8 X, r) L3 e6 S1 K
数据段的数据类型可以被区尾的控制位(Access Bits)配置为读/写段(用于譬如无线访问控制)或者值段(用于譬如电子钱包)。
( g6 _  j# j/ }8 v值段有固定的存储格式,只能在值段格式的写操作时产生,值段可以进行错误检测和纠正并备份管理,其有效命令包括读、写、加、减、传送、恢复,值段格式如下:
. o* o6 W2 U0 a0 W* W& N6 A
: g4 B0 t7 \% w" k% _- T, x7 R- Z
8 K& S% a5 U3 y6 a
$ I. x. i* c8 X: r% WValue表示一个带符号4字节值,为了保证数据的正确性和保密性,值被保存了3次,两次直接保存,一次取反保存。该值先保存在0字节-3字节中,然后将取反的字节保存在4字节-7字节中,还保存了一次在8字节-11字节中。
3 v# ~$ D/ c5 V0 M' Z1 kAdr表示一个字节的地址,当执行备份管理时用于保存存储段的地址。地址字节保存了4次,取反和不取反各保存了2次。在执行加值、减值、恢复和传送等操作时,地址保持不变,它只能通过写命令改变。
9 `' C) w* z8 _$ y' V/ L1 O* t2 M# S
控制段
" ]# ?4 d' `! B& H每个扇区都有一个区尾控制段,它包括密钥A和密钥B(可选),以及本扇区四个段的访问控制位 (Access bits);访问控制位也可用于指出数据段的类型(为读/写段还是值段);控制段的存储格式如下:
* r) D- @' t! I& b; q3 p  y: w% L- h$ n$ \
, z, Y# _* E) @  [
7 @* |0 i& J6 P& n2 i3 M2 t
如果不需要密钥B,那么区尾的最后6个字节可以作为数据字节,用户数据可以存储在区尾的第9个字节,这个字节具有和字节6、7、8一样的访问权限。  a% Y8 r' B% w5 K/ D- |
. w# y9 s. X  @: a* k+ i
1.6.2 IC卡访问存储器" P% M. M/ J0 y

) a8 Q. R+ y! S& @数据段支持的操作
0 C0 O& ~9 v1 n+ H9 z3 ~根据使用的密钥和相应区尾访问条件的不同,数据段所支持的存储器操作也不同,存储器的操作类型如下:1 J/ z5 ^* P# j2 U0 o8 }( `7 u2 c

! r0 y& ^9 M% A# J0 p% e* m9 _8 K, p# A$ X) J" F1 I
& L- Y& _1 [; `
可以看到只有作为值段时,才能加、减、传送、恢复。
2 c/ n$ @6 x$ l$ p; I7 m  M9 y3 @0 O" i9 T  ]$ {: X2 g3 ~
各区的访问位定义
; G* n+ @: N2 }( Y" b' b0 \5 T( n4 f每个数据段和区尾的访问条件由3个位来定义,它们以取反和不取反的形式保存在区尾指定字节中。9 C& V, l9 @% d) ?6 v
访问位控制了使用密钥A和B操作存储器的权限,当知道相关的密钥和当前的访问控制条件时,可以修改访问条件,各区的访问位定义如下:
2 l1 Y3 X! C3 X4 S& S4 V  Z3 v6 u) C2 W$ n/ K; V* F
# [+ e6 E) E3 A8 m
0 o+ r. h3 t) k% w) l
访问位在区尾的存储形式& W2 _" T, K+ |7 ]7 S
4 m9 L: X, Y. D

, ^& o0 O: T& P1 @; |$ q. Q7 P2 j, x  Z! m' u& X
区尾的访问条件/ N' |) [3 z# }7 v  E) ^; z$ T  f
根据区尾(段 3)访问位的不同,访问条件可分为 “从不”、“密钥A”、“密钥B” 或“密钥A|B”(密钥A或密钥B),区尾的访问条件如下:
9 p; S. m- K) K$ l; q2 U) F% P
8 G5 O/ D$ Y% y3 n: a5 K. F9 \" Q" j2 f/ z! `8 a6 i  ]& c8 G

1 G1 \! D" J! x  W  l0 }0 b用灰色标明的行是密钥B可被读的访问条件,此时密钥B可以存放数据。' s: O9 T! u3 T9 J% r* j' [1 J4 ]
例如:当段3的访问条件C13C23C33=100时,表示:密钥 不可读(隐藏),验证密钥B正确后,可写(或更改);访问控制位在验证密钥A或密钥B正确后,可读不可写(写保护);密钥B不可读,在验证密钥 B 正确后可写;
2 L, _2 U2 V) H3 i4 F( Z又如:当段3的访问条件C13C23C33=110或者111时,除访问控制位需要在验证密钥A或密钥B正确后可读外,其他如访问控制位的改写,密钥 A,密钥 B 的读写权限均被锁死而无法访问;
" w2 b# u0 U9 Y1 N) K3 u/ t* D: a( j% l& h: ~
数据段的访问条件3 F* k+ F& c0 e9 b5 e. P* T2 B
根据数据段(段 0-2 访问位的不同,访问条件可分为 “从不”、“密钥A ”、“密钥B ” 或“密钥A|B”(密钥A或密钥B)。9 ~$ v  H0 m) K' o4 p3 r) r
相关访问位的设置定义了该段的应用(或者说数据段类型)以及所支持的应用命令,不同的数据段类型可以进行不同的访问操作。 读/写段可以进行读操作和写操作。值段可以进行加、减、传送和恢复的值操作。& m! F2 Z* F) r7 K3 N, ~$ o# ]
其中一种情况中(001)只能对不可再充电的卡进行读操作和减操作,另一种情况中(110)使用密钥B可以再充电。 厂商段无论设置任何的访问位都只是只读的, 数据段的访问条件如下:4 a3 V$ m6 }3 E. L! O& X) ^# G
7 A" W! q, x. y* G/ ]& R
  I# ]' _9 N/ X+ W$ K2 V$ S* Y

! ]3 t7 o, V/ L8 j6 i# f如果密钥B可以在相应的区尾被读出,它就不能用于确认(在前面所有表中的灰色行)。如果读卡器要用这些(带灰色标记的)访问条件的密钥B确认任何段,卡会在确认后拒绝任何存储器访问操作。, [; o3 E6 g7 C( C2 Q6 T% Q% I
5 }6 [! L- Q; V: k: w
1.6.3 举例说明
+ T% b* }- z1 x  @8 E7 }9 T% G( A* ^% l
Mifare S50出厂时,访问控制字节(字节6-字节9)被初始化为“FF 07 80 69”,KEY A和KEY B的默认值为“FF FF FF FF FF FF” ;+ }9 _% j" D8 ~. C, F0 G6 D
字节6为FF,二进制为1111111;字节7为07,二进制为00000111;字节8为80,二进制为10000000,如下:* R9 l/ V3 Q! q5 ^% t% Y
3 J+ l! L( @5 |9 X# q

6 j0 B/ |3 P4 j
6 f+ L6 Q' A! _1 U7 n/ ?2 R7 h对照前面的访问位在区尾的存储形式图,可得知访问控制位为:
/ i; V$ ~1 p  g% x; B. u0 E. |# G# kC10C20C30=000;C11C21C31=000;C12C22C32=000;C13C23C33=001。
2 r3 v/ C6 {* S! g; d  r$ @" K0 N: X* N! I3 ^" N. Y
C10C20C30、C11C21C31、C12C22C32对应数据段0、1、2,参考数据段的访问条件图即可得知该段三个数据区的访问权限;  v# k+ ~! `! O3 Y; N0 {9 K
C13C23C33对应区尾(段 3),参考区尾的访问条件图即可得知该段的访问权限;
" T4 e2 ~7 s1 `9 n, K) B* f; ~) L3 [: n
块0控制位为:0 0 0 权限为:通过A或者B密码认证后可读,可写,可进行加值和减值操作;
) V4 l% }! y9 J% O* ]2 Q& r" l$ l块1控制位为:0 0 0 权限为:通过A或者B密码认证后可读,可写,可进行加值和减值操作;
; y5 L# ~! b3 P. r块2控制位为:0 0 0 权限为:通过A或者B密码认证后可读,可写,可进行加值和减值操作;% P& Y9 x  Y4 \! T1 f3 J' }0 d
块3控制位为:0 0 1 权限为:A密码不可读,验证A或者B密码后可改写A密码;验证A或者B密码后,可读可改写存取控制;验证A密码或者B密码后,可读可改写B密码;
) M! V/ L1 k$ h, I& v
4 J! c  u! Q% n这样每次换算还是有点麻烦,可以使用M1 S50卡控制字节生成工具快速换算:( n- a+ d, d  p$ J: }: m# K

6 P3 |5 K$ R# d$ S8 _7 P  W8 x! t5 G8 H
. B: i! |) G: B
最下面一行可以输入想解释的控制字,也可以根据上面的设置生成控制字;3 G' Y( e6 P: t) w0 L- D8 e
最上面一行,左边是数据段0、1、2的访问控制位,右边是对应权限所需要的秘钥;, `3 F8 B4 T+ }
中间的一行,左边是区尾的访问控制位,右边是对应权限所需要的秘钥;
7 V) {7 A0 K, c- v" O, A
2 d8 K: p( G" z! y; R4 B/ _+ ^1.7 非加密IC卡和加密IC卡
: a2 _/ S, k/ X* X! `5 b) x; ^# B4 ~* o# L& y7 o  m
非加密IC卡和加密IC卡的区别就是,非加密IC卡中所有扇区的KEYA和KEYB数值都是默认值FFFFFFFFFFFF;
: ^5 ?8 k* x6 H4 A: f, y而加密IC卡中,其中有扇区的KEYA和KEYB不等于FFFFFFFFFFFF,部分扇区加密的卡称半加密IC卡,所有扇区都加密的卡称全加密IC卡。' e6 R8 D3 }' {8 _" O
: n& }, S; L' w) `5 R* M8 E
一般的读卡器,像手机的NFC,是读不到IC卡的加密数据的,需要用专门的工具,比如Proxmark3读取。9 A3 }  o6 x6 K" c

  p5 a* ^  q& q7 }% f# G! l& ^对于IC卡,除了对卡上数据加密,还有滚动码加密、服务器数据验证等技术。
+ J2 \3 I0 k  M  e9 }& N因此,对IC卡的解密,更多的是门禁卡、签到卡、车库卡等的讨论,像公交卡、饭卡等涉及到资金问题的,基本都有服务器定期校验,得先搞定服务器再说,难度高还违法。
1 a0 J. B- @" b% k
& p7 j- s/ Q/ p& r参考资料:
9 v  x/ |! W( H% Z; [码农生活 篇二:IC卡门卡模拟探秘  E( x. g$ g* ~3 Z, |
IC卡简介【M1/S50,UID,CUID,FUID,UFUID复制卡介绍】, H. r9 \6 J: P; ?9 o
谈谈 Mifare Classic 破解
" C' c% S% Y; |/ U& s2 I4 i' Arfid-practice
% y% `" H2 l; kType A 卡存储结构与通信
. I, \7 Y4 t4 \Proxmark3 Easy破解门禁卡学习过程  \! q/ q1 M- @, w' L, f- n# q
, {/ c2 H% o& [7 D& T( r/ ~
2. 手机NFC模拟加密门禁卡
0 g" t% J3 L. |% [, I6 u1 \! D0 l( {% j$ l& i/ o+ Y% H
有了前面的知识,再来看现在我的加密门禁卡情况,手机能识别为加密卡,肯定是IC卡。/ i, o( e1 m/ c, f

& G2 @; a: j5 ^5 }" i首先,加密卡在目前这个情况下是无法解密的,如果按照下面的操作失败,请参考下一章。
1 ~  f- _/ A# v5 k7 ?# Y$ }( `' Z部分门禁系统只认证IC卡的UID,利用这一情况,可以试试复制门禁卡的UID,看运气能否打开门。+ f+ |, b' R9 R& O6 J
/ |+ e  B) o: F! D7 P- _4 p
在已root的情况下,直接使用APP NFC卡模拟 便可读取加密卡的UID和非加密数据、并写UID到手机NFC里。
2 y0 g5 _+ F, k* i& y8 P7 B在未root的情况下,使用小米系统自带的门卡模拟功能,出于安全考虑,是不能对加密卡进行任何操作。手机的NFC,理论上可以读加密IC卡的UID,因此可以使用第三方软件MifareClassicTool读取UID,因为没有root,不能写手机NFC,但可以写IC卡,因此还需要一张CUID卡(不能使用UID卡),某宝上一块多一张,思路就是先读取加密卡的UID,再读取CUID卡的数据,然后将CUID卡的UID改为加密卡一样的UID,再将修改后的数据写回到CUID卡,最后用小米系统自带的门卡模拟功能,复制未加密的CUID卡即可。
3 y* G: [' y2 R+ Y2 a/ b& ]( g
7 G4 Y$ [( E% f/ }+ o1.读取加密卡的UID5 }! ]7 i' R1 t) P* J' ]
打开软件Mifare Classic Tool,将加密门禁卡放到手机的NFC感应区域,识别到IC卡后,点击“工具”->“显示标签信息”,可以看到加密门禁卡的8个数字,4字节的UID。' U7 n/ i6 o: L% ^* v& w
注意,在16进制里,每个数字为4位(2^4=16),8位(bits)为一字节(bytes),即两个数字组成一字节,这里8个数字,即为4字节(Bytes)。; c& O% [0 ^, _" s% I0 O) p6 z, o
前8个数字,每个数字代表4位,8位为一字节,8个数字就是32位,即4字节9 W- D; [& b. r; A
接着打开“工具”->“BCC计算器”,输入UID,得到1位BBC(两个数字)校验数据。6 A- k/ G- X3 ?7 I  c0 ]
) B9 [  A$ K4 d) l! g

4 v8 \6 v. e, Z( G, }" R* p& @" P) ?/ P& X& [1 u7 Z
2.读取CUID卡数据
( @* M* m) z+ r. r将CUID卡放到手机的NFC感应区域,识别到IC卡后,点击“读标签”->“启动映射并读取标签”,即可得到CUID白卡的所有信息。
2 V* F" e' L7 @4 L5 A2 y接着修改第一行的前10个数字,改为加密门禁卡的UID(8个数字)和BCC(2个数字),一共10个数字,并点右上角保存图标保存。
( d3 {+ {: R  S8 Q  |# d6 j8 Y  D# \4 {3 m

; t3 h& r  A4 i% [
7 x- V$ {/ h3 o! f3.写数据到CUID卡/ _1 ~& ~3 }* s6 ]9 Z
再将CUID卡放到手机的NFC感应区域,识别到IC卡后,点击“写标签”,勾选“写转储(克隆)”->“显示选项”->“高级:使能厂商块写入”。
- W2 R6 n! r- u2 _5 ^9 w再点击“选择转储”,选择刚才保存的数据,点击“选择转储”。
6 l3 d) m' K6 e1 w6 C; K1 F# `6 v7 M( g/ ?, M$ s, n+ k

8 \8 H$ |3 I+ L$ y
/ n, S" v" [( J* R在弹出的选择写扇区界面,默认即可,点击“好的”,最后点击“启动映射并写转储数据”。
3 |: z; A0 w0 C
$ c' _) r2 F' s  w" L& i. \
- F; J' A3 ]' f: ]  q  O
8 }9 A4 h  v$ @! g( Q0 `9 d4.NFC手机复制CUID卡0 m3 [! ?( c7 Q9 }; d
最后,使用小米手机系统自带的门卡模拟功能,复制刚才写入新UID的CUID卡即可。- _/ {2 n4 w5 i7 n1 @7 P
% W: \+ z& ]$ W4 ]" a4 k* w3 ]( a8 c7 h
接着,就看运气吧,我小区的门禁系统就只认UID,搞定。
/ p2 @9 Q' C- S3 t  k
  y9 b0 g  s4 F
) ~0 q0 b! l7 T/ O

精彩评论8

BI3NRS 来自手机 显示全部楼层 发表于 2021-1-18 13:25:25 来自: 中国–河北–唐山 联通
学习一下,感谢分享
回复 支持 反对

使用道具 举报

15314375698 来自手机 显示全部楼层 发表于 2021-1-19 07:46:45 来自: 中国–山东–滨州–无棣县 联通
学习了师傅厉害
回复 支持 反对

使用道具 举报

彩虹之约 来自手机 显示全部楼层 发表于 2021-1-19 15:42:33 来自: 中国–云南–文山壮族苗族自治州 移动
谢谢师傅,好详细的文章。
回复 支持 反对

使用道具 举报

畅游天下 显示全部楼层 发表于 2021-4-8 13:45:17 来自: 中国–陕西–铜川 电信
- t; E* \+ |' S# [5 H% p8 J
谢谢师傅,好详细的文章。现在多用于UID和CUID以及IC
回复 支持 反对

使用道具 举报

灵活的胖子 来自手机 显示全部楼层 发表于 2021-5-16 08:00:48 来自: 中国–江西–南昌 电信
每天学习一点点,每天进步一点点
回复 支持 反对

使用道具 举报

苍蓝 来自手机 显示全部楼层 发表于 2022-7-1 09:21:24 来自: 中国–北京–北京 移动/数据上网公共出口
学习一下,谢谢分享。
回复 支持 反对

使用道具 举报

A锁作锁为,为你 来自手机 显示全部楼层 发表于 2022-7-1 21:08:08 来自: 中国–云南 电信/数据上网公共出口
谢谢师傅,好详细的文章
回复 支持 反对

使用道具 举报

向世伟 来自手机 显示全部楼层 发表于 2022-7-14 06:41:54 来自: 中国–重庆–重庆–铜梁区 电信
不错不错不错不错,谢谢分享!辛苦了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册成为锁艺人

本版积分规则

中国锁艺人,这里是一个锁的世界,锁匠行业交流门户网站,聚集了锁具爱好者、锁具开发者、锁匠、锁匠协会、锁匠俱乐部、锁具企业等会员在这里交流互动。锁艺互动,技艺飞跃,洞悉锁艺奥秘。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Copyright © 2008-2022, Lockartist  | All Rights Reserved. 锁艺人 | 锁匠 | 开锁 | 开锁学校 | 西安开锁 | 西安汽车钥匙
  • 西安锁艺人安防设备有限公司 版权所有 陕ICP备12005758号-11 | 电子营业执照 | 经营许可证编号 陕B2-20200181