返回顶部

NFC模拟加密卡

  [复制链接]
天际线0907 显示全部楼层 发表于 2021-1-18 00:52:33 |阅读模式 打印 上一主题 下一主题 来自: 山东泰安
记录小米手机NFC模拟加密门禁卡,以及Proxmark3的使用。
8 C) G6 |! @0 ]' G
4 o$ \8 ^0 F# k/ a. j0. 缘起
, a2 |' Q& Y! u2 V& A$ \+ B/ o2 h+ J, H' Y
之前,小区用的门禁卡为非加密的门禁卡,使用小米手机系统自带的门卡模拟功能复制即可。
# m3 q, Z% o. u后来,小区门禁系统换了一家供应商,再使用之前的方法复制门禁卡,手机提示为加密卡,无法复制。, ~# w: }6 ]* D8 @- ~* n& o6 z

+ f+ E* [; n0 z, I( ^新的门禁系统,更安全了,也支持APP远程控制开门了,直到有一天门禁卡丢了,开始使用APP开门,发现这APP写得烂透了,十次有五次点击开门按钮无反应,需要反复退出、打开APP多次才能点击开门按钮成功,还有两次直接没了开门按钮,提示到物业管理处处理……
: m1 l. F! n1 n0 p% M那个时候,我又开始怀念用手机刷门禁的快感了。。
5 V  @1 j" E( M1 n* Y5 C- b/ E' m
1. 基础知识
# G9 B) D6 t) T6 J: H
6 D( j" G0 X% T- C" u" h于是,我开始查阅资料,基本确定了小米手机是还是可以通过其它方式模拟加密门禁卡的。, L+ o+ I2 }; p! b9 A
然后,资料查多了,记不到,又怕以后用到需要重新找,干脆水一篇博客记录下来。( P: B2 D4 i/ ^8 D% [
如果熟悉NFC和IC卡,或者只想模拟加密门禁卡,并不关心原理,这章可以跳过,直接看下一章。
- g1 w' N& h! `2 S5 @( V/ N! o
3 W) v+ R3 T" V0 y1.1 ID卡和IC卡( c% ~; o: _! x( `; I
% Y* e$ F2 J3 w& d  h
ID卡:全称身份识别卡(Identification Card),多为低频(125Khz),是一种不可写入的感应卡,含固定的编号,主要有台湾SYRIS的EM格式,美国HID、TI、MOTOROLA等各类ID卡。8 h1 y+ Q7 ^9 P; Q4 ^

6 {& F# X8 y5 C9 K5 f  Q4 {IC卡:全称集成电路卡(Integrated Circuit Card),又称智能卡(Smart Card)。多为高频(13.56Mhz),可读写数据、容量大、有加密功能、数据记录可靠、使用更方便,如一卡通系统、消费系统等,目前主要有PHILIPS的Mifare系列卡。7 t! G: n* d, u

3 w4 E8 ~/ C( F主要区别:8 g( G2 J  A4 `& w
ID卡,低频,不可写入数据,其记录内容(卡号)只可由芯片生产厂一次性写入,开发商只可读出卡号加以利用,无法根据系统的实际需要制订新的号码管理制度;
# K) R# ^/ c# n' u) g8 |IC卡,高频,不仅可由授权用户读出大量数据,而且亦可由授权用户写入大量数据(如新的卡用户的权限、用户资料等),IC卡所记录内容可反复擦写;
# g1 O5 L, J8 Z3 T+ f9 m1 z+ h9 g3 K
IC卡由于其固有的信息安全、便于携带、比较完善的标准化等优点,在身份认证、银行、电信、公共交通、车场管理等领域正得到越来越多的应用,例如二代身份证、银行的电子钱包,电信的手机SIM卡、公共交通的公交卡、地铁卡、用于收取停车费的停车卡、小区门禁卡等;
) f- ^0 @0 R3 K0 _/ V1 l
0 `/ ]; j2 y8 i; e# |3 h/ U( C0 g2 p  W; L9 I! V) r1 l2 e

0 [; O$ ]# a+ u" }# u/ a
4 T2 V8 N% w8 z8 \5 ]% k( L# J% b$ `. A) A8 w6 g
以上图片来自淘宝商家,网上找了半天相关资料,发现淘宝商家解释得最清楚。' C/ S5 G& _- E0 J  i+ j  y" O4 Y
9 {: \+ f9 b* r+ V. X, j
总结:
. e# l4 d* L3 v: ^1 V1.ID卡多为低频,IC多为高频;- P  E% u8 I5 i# E$ v
2.IC卡整体上看比ID卡更有优势,市面上使用的大多数也是IC卡;# K- }( Z% S2 Q
3.对于矩形白卡,里面为矩形线圈、表面没有编号的多为IC卡,里面为圆形线圈、表面有编号的多为ID卡;- s3 ?" H7 F1 U5 v/ U- F" d# e
4.对于异形卡,有编号的多为ID卡,最好使用带NFC的手机进行测试(目前手机NFC只能读高频13.56Mhz),IC卡会有反应;
( I: g; J/ ]9 c8 r5 y* [& R) l% _/ g
1.2 接触式和非接触式IC卡
! c( G# v# C8 z9 E- d- o: n) L3 E$ {: a
IC卡又可以分为接触式IC卡和非接触式IC卡。& Z/ L7 g8 q" b8 P/ V" z# U, G, O

8 q* x, q% P: w, h! X1 k接触式IC卡:该类卡是通过IC卡读写设备的触点与IC卡的触点接触后进行数据的读写;
7 x1 i3 k! `, K$ I/ R) e% n. m' |
( b; z+ e/ J, E' u* Q: e) W非接触式IC卡:又称射频卡、感应式IC卡,该类卡与卡设备无电路接触,而是通过非接触式的读写技术进行读写(例如RFID、NFC),其内嵌芯片除了CPU、逻辑单元、存储单元外,增加了射频收发电路。该类卡一般用在使用频繁、信息量相对较少、可靠性要求较高的场合。
/ J5 m5 ]5 D+ D+ x+ U! P' X% y! o0 o
两者比较好区分,直接看卡上有无金属触点即可。2 t1 P0 ^7 p' d' i9 @( w

) b9 _9 T! D1 C9 j" |% T3 E  R5 A
4 ]4 _: n% e5 c: t
/ X! y/ d- K3 a: n) G# \1.3 RFID和NFC
$ r1 K/ @" m) B# t) R- @; }0 t0 n# t/ T" }" H$ V, ^" L* Z( x
非接触式的读写技术常见的有两种:RFID技术和NFC技术。% o- n+ E2 x/ F  |# r& [" D
. ^/ n- w# x7 E: r
RFID技术:3 a' l) h- F1 t- N1 Q* a
1.通常应用在生产,物流,跟踪和资产管理上;! v6 V* g% e* m! o6 i6 E: A) N1 V
2.根据频率划分包含低频、高频(13.56MHz)、超高频、微波等;
7 M9 f8 z* O( t* o" d3.作用距离取决于频率、读写器功率、读写器天线增益值、标签天线尺寸等,工作距离在几厘米到几十米不等;" ?8 N/ m9 {7 {( n
4.读写器和非接触卡可以是一对多关系,也可以说一对一关系;且读写器和非接触卡是两个实体,不能切换;
) [+ }1 T% o4 C
- N3 F5 s% i: v8 U" Z/ s6 k# l2 \NFC技术:% D3 d5 p6 l5 }9 ?: m5 M' H$ Y( D
1.通常应用在门禁,公交卡,手机支付等领域;
/ U4 Z+ G( @/ h1 q; K: F2.频率也是13.56MHz,且兼容大部分RFID高频相关标准(有些是不兼容);! ?8 {9 e, m& @, `; r. v
3.NFC作用距离较短,一般都是0~10厘米;
- x$ ~( Y% g! r8 R. }4.读写器和标签几乎都是一对一关系;且支持读写模式和卡模式,可以作为读写器也可变为非接触卡;
7 I2 m2 m/ ]1 X) J& h, S$ {+ X3 n' R
总体来说,NFC是RFID的子集,但NFC有些新特性又是RFID所不具备的。
* W9 k+ e6 N& C" C
8 g( |" S$ v+ B& {9 T! L* e1.4 ID卡类型3 E0 B9 [9 r! u- J* _3 m" L3 |

, p& \. C; x( T6 B6 I- Y# nID卡,工作在低频(125Khz),根据卡内使用芯片的不同,有如下分类:. H2 d8 R- I! q" F
! p+ Z* L+ E- j: S& O% n/ m
ID卡. R) Y* @% x, d& f  G' n  M" W
EM4XX系列,多为EM4100/EM4102卡,常用的固化ID卡,出厂固化ID,只能读不能写;常用于低成本门禁卡,小区门禁卡,停车场门禁卡;
5 q6 I- ^# {* R5 e- X
0 _5 }9 n7 S  z$ u4 K3 DID白卡
; J# c4 U' s! W. n2 TEM4305或T5577,可用来克隆ID卡,出厂为白卡,内部EEPROM可读可写,修改卡内EEPROM的内容即可修改卡片对外的ID号,达到复制普通ID卡的目的;
5 {4 \! g6 X' v: G$ M# y  ^: ST5577写入ID号可以变身成为ID卡,写入HID号可以变身HID卡,写入Indala卡号,可以变身Indala卡
! e  ~  }- ~0 k5 t1 a% r$ Q& v" P& e; |
HID卡
, b- E) d3 Y) D# X全称HID ProxⅡ,美国常用的低频卡,可擦写,不与其他卡通用;. m. [. G' A9 Z3 e7 L2 O

8 J3 j' F3 _, D4 j1.5 IC卡类型" \4 c. ], j" E. h6 g2 z4 |

6 g4 Y4 f6 A. z7 T, NIC卡中最常见的是NXP Mifare系列卡,工作在高频(13.56Mhz),根据卡内使用芯片的不同,有如下分类:
4 e) X: n/ G( \& [3 Z
, ], G4 Z$ E, q9 j! H4 |# BM1卡( u, W. u6 l& s4 F+ p; A
全称Mifare S50,是最常见的卡,出厂固化UID(UID即指卡号,全球唯一),可存储修改数据;常用于学生卡,饭卡,公交卡,门禁卡;- q* {0 y0 F7 r1 R# ]5 n

# Y3 r5 w$ f! S( X# \0 P2 {; uM0卡" I0 G- e5 }  j
全称Mifare UltraLight,相当于M1卡的精简版,容量更小、功能更少,但价格更低,出厂固化UID,可存储修改数据;常用于地铁卡,公交卡;" q% B5 I8 P6 v

' J2 ^- ]& Z( w: D以上两种固化了UID,为正规卡,接下来就是一些没有固化UID,即不正规的卡:4 B4 @* c: d# \' u+ R

* ~9 g, _# x# u& MUID卡% ^+ H- M7 h# _3 p; I
全称Mifare UID Chinese magic card,国外叫做中国魔术卡,M1卡的变异版本,使用后门指令(magic指令),可修改UID(UID在block0分区),可以用来完整克隆M1卡的数据;
" |! _/ O- T4 O) o) c但是现在新的读卡系统通过检测卡片对后门指令的回应,可以检测出UID卡,因此可以来拒绝UID卡的访问,来达到屏蔽复制卡的功能(即UID防火墙系统);# O( o. p6 B& I, }! n. v% m
. Y) W+ E" b7 R* U2 |6 u
CUID卡- s: _  x8 s) Y/ M: `4 K9 G# f
为了避开UID防火墙系统,CUID卡应运而生,取消响应后门指令(magic指令),可修改UID,是目前市场上最常用的复制卡;# U9 T  G# O" G) F; K& G, k3 w
近两年,智能卡系统制造公司,根据CUID卡的特性研发出CUID卡防火墙,虽然现在(2019年)还不是很普及,但是总有一天CUID卡会和UID卡一样面临着淘汰;# e: ?% ~! D2 L0 ~7 P" o: z6 {

- U3 {0 }, E0 }' mFUID卡
  `; V  r/ ~) S, w9 r4 iFUID卡只能写一次UID,写完之后自动固化UID所在分区,就等同M1卡,目前任何防火墙系统都无法屏蔽,复制的卡几乎和原卡一模一样;$ {+ ?+ J% C' \
但缺点也相对明显,价格高、写坏卡率高,写错就废卡。
# V5 F9 `9 u6 T- _! G8 q$ P( t' x- |) `0 n. N* m
UFUID卡! d+ c7 y6 U+ O0 g. Q- H
集UID卡和FUID卡的优点于一身,使用后门指令,可修改UID,再手动锁卡,变成M1卡。
2 h) N- b4 m& @' [* p6 l可先反复读写UID,确认数据无误,手动锁卡变成M1,解决了UID卡的UID防火墙屏蔽,也解决FUID的一次性写入容易写错的问题,且价格比FUID卡还便宜;
% P4 q# q$ n- x0 V: Z# J6 H
9 k2 H2 e2 |0 z( s8 _$ U判断是M0卡(Mifare UltraLight),还是M1卡(Mifare Classic 1k),可以通过SAK值判断。2 |; H, F% m6 W4 b6 j

3 l( K- ?  N2 x' ~+ F8 Q6 V3 |产品ATQASAKUID长度Mifare Mini00 04094 bytesMifare Classic 1k00 04084 bytesMifare Classic 4k00 02184 bytesMifare Ultraligh00 44007 bytesMifare Plus00 44207 bytes' g4 K- g. g7 g7 e, |# t  g: y2 [3 F
1 k8 o8 x/ [2 J- Q5 m/ c# ]2 a
1.6 IC卡详细分析8 I1 ?" @$ F) D6 z$ U

- }* L) O- {. F/ q3 N- Z; [1.6.1 IC卡存储器结构" b2 |2 e9 ~8 P! ]& @

7 V$ s) p# ?$ P% n; J* G7 ]以M1卡为例,介绍IC卡数据结构。
# {. ~! w/ U# T! ^M1卡有从0到15共16个扇区,每个扇区配备了从0到3共4个数据段,每个数据段可以保存16字节的内容;+ _) |6 X6 T( e: }$ B. O
每个扇区中的段按照0~3编号,第4个段中包含KEYA(密钥A 6字节)、控制位(4字节)、KEYB(密钥B 6字节),每个扇区可以通过它包含的密钥A或者密钥B单独加密;
/ o% B; ?( a  F/ @) f1 S6 b
  {) B) {, E9 z9 W4 c1 V0 |
$ ?: M$ Y( G* ?' f
& `( h: g  y- _8 m* i厂商段
& i. C, a1 ?# E# L" h每张M1卡都有一个全球唯一的UID号,这个UID号保存在卡的第一个扇区(0 扇区)的第一段(0 编号数据段),也称为厂商段。
2 h9 f& P6 _" A* n其中前4个字节是卡的UID,第5个字节是卡 UID 的校验位,剩下的是厂商数据。
1 ^" w; D& j# s: Z) S8 H' f( R0 N并且这个段在出厂之前就会被设置了写入保护,只能读取不能修改,前面各种能修改UID的卡,UID是没有设置保护的,也就是厂家不按规范生产的卡。! l, u5 p) c- ?- r6 F% G6 l
3 }+ C: a0 v4 R+ A! M6 z

- _4 G8 e/ V" W& r% t: y2 \
& K+ |$ h5 [( S. G4 Q数据段6 n/ |! e7 O) |
除了第0扇区外,其它每个扇区都把段0、段1、段2作为了数据段,用于保存数据。
9 e$ B/ p2 M6 j6 L# p4 U数据段的数据类型可以被区尾的控制位(Access Bits)配置为读/写段(用于譬如无线访问控制)或者值段(用于譬如电子钱包)。+ @- l( v: G2 [+ C, I) V
值段有固定的存储格式,只能在值段格式的写操作时产生,值段可以进行错误检测和纠正并备份管理,其有效命令包括读、写、加、减、传送、恢复,值段格式如下:
* f' |' v% F" o+ A7 w# e. |+ ^0 |+ p. _9 b  Y: O' f
1 ]/ p, d2 y* e7 f2 V7 L3 e. ?

% D1 W% l5 h7 T, i$ q$ y7 qValue表示一个带符号4字节值,为了保证数据的正确性和保密性,值被保存了3次,两次直接保存,一次取反保存。该值先保存在0字节-3字节中,然后将取反的字节保存在4字节-7字节中,还保存了一次在8字节-11字节中。
1 \8 r) ]# i& T. z8 I$ LAdr表示一个字节的地址,当执行备份管理时用于保存存储段的地址。地址字节保存了4次,取反和不取反各保存了2次。在执行加值、减值、恢复和传送等操作时,地址保持不变,它只能通过写命令改变。
) Q  {, D, k( z1 b
5 }$ N0 ]0 n6 S; @9 H" B控制段7 _- ~9 r# ^% A
每个扇区都有一个区尾控制段,它包括密钥A和密钥B(可选),以及本扇区四个段的访问控制位 (Access bits);访问控制位也可用于指出数据段的类型(为读/写段还是值段);控制段的存储格式如下:. l0 X( ]) U) ?$ T1 @7 d3 \2 g

" S7 c/ {, |. ]- S/ i2 E% E
1 \3 H% g( d! p" s3 _* R! h7 ~
) P  P- o4 c6 i2 E; O/ t1 C如果不需要密钥B,那么区尾的最后6个字节可以作为数据字节,用户数据可以存储在区尾的第9个字节,这个字节具有和字节6、7、8一样的访问权限。. A5 Z6 j( |* `5 U. z, i, |% x8 q" T

' k- A  |9 Z1 }* ^( b1.6.2 IC卡访问存储器
7 Z* P) o6 K# G* @, w
9 W% r0 Y6 h7 _' B6 B数据段支持的操作4 _' A1 \/ w, s# g7 O" S. }
根据使用的密钥和相应区尾访问条件的不同,数据段所支持的存储器操作也不同,存储器的操作类型如下:
8 T0 X/ G2 V+ V* f# v* B' ]( V/ m) R4 u4 M' k$ `- ]* t9 r

& _. |. w6 q6 g/ h, b+ g) s2 E/ h; v* Z8 B2 h5 U. m) M! ^& ^
可以看到只有作为值段时,才能加、减、传送、恢复。, t2 W* A4 k8 b) S" e! @

( w3 _; n7 M# |, Q$ P* b各区的访问位定义
( C# }" q- k1 {2 D每个数据段和区尾的访问条件由3个位来定义,它们以取反和不取反的形式保存在区尾指定字节中。' D  K: X( ^5 [1 H/ O2 s: _( w
访问位控制了使用密钥A和B操作存储器的权限,当知道相关的密钥和当前的访问控制条件时,可以修改访问条件,各区的访问位定义如下:
  J, w- c6 n" s; g% g
5 z; B" N0 E$ V' y1 U* A
, H; I, h# Q" X( X, P4 E" O9 W, z; K$ _3 V0 |
访问位在区尾的存储形式1 j8 [# y8 X3 D$ P$ }7 ~: G$ D
: N% C* Q0 P& ~" g  {# v: ~) C9 f

& p& Q2 T+ Z' B- H8 w! L1 q- C* o0 I( X/ q
区尾的访问条件+ v& X" B  d6 A6 L; T: p  f, ^
根据区尾(段 3)访问位的不同,访问条件可分为 “从不”、“密钥A”、“密钥B” 或“密钥A|B”(密钥A或密钥B),区尾的访问条件如下:& S2 r0 P& @! o' {
% u, M- G# B" A' Q
# j) h# N) `3 L& t& Q' y1 D
& A) ~: c9 l* V* U" p0 }2 T* O
用灰色标明的行是密钥B可被读的访问条件,此时密钥B可以存放数据。$ L& S3 j, u& ?9 w$ x# }) S
例如:当段3的访问条件C13C23C33=100时,表示:密钥 不可读(隐藏),验证密钥B正确后,可写(或更改);访问控制位在验证密钥A或密钥B正确后,可读不可写(写保护);密钥B不可读,在验证密钥 B 正确后可写;
: R- u3 Q% f0 ^+ z# s# h; X# X又如:当段3的访问条件C13C23C33=110或者111时,除访问控制位需要在验证密钥A或密钥B正确后可读外,其他如访问控制位的改写,密钥 A,密钥 B 的读写权限均被锁死而无法访问;' t( F: o- M, l3 W# ?" i7 `

. W9 U( m# T6 @, x6 |数据段的访问条件; O, H. n+ a7 ^2 w" J' M) r! s4 @
根据数据段(段 0-2 访问位的不同,访问条件可分为 “从不”、“密钥A ”、“密钥B ” 或“密钥A|B”(密钥A或密钥B)。
5 {& K" s# `7 X4 I) n: J相关访问位的设置定义了该段的应用(或者说数据段类型)以及所支持的应用命令,不同的数据段类型可以进行不同的访问操作。 读/写段可以进行读操作和写操作。值段可以进行加、减、传送和恢复的值操作。! n( f: D* ]  ^
其中一种情况中(001)只能对不可再充电的卡进行读操作和减操作,另一种情况中(110)使用密钥B可以再充电。 厂商段无论设置任何的访问位都只是只读的, 数据段的访问条件如下:5 |2 }! m2 l& H7 B* |/ n
: |9 A6 A& B. B7 M; K- R

; }# v3 g3 _1 ^+ v
9 [- T9 N( M7 \6 m+ j. K如果密钥B可以在相应的区尾被读出,它就不能用于确认(在前面所有表中的灰色行)。如果读卡器要用这些(带灰色标记的)访问条件的密钥B确认任何段,卡会在确认后拒绝任何存储器访问操作。
/ F# }/ y7 ?; V* A" u; |" B& C. b0 u; G8 o3 P& C  V- }
1.6.3 举例说明
$ q1 L$ w, Y7 l- c! c
, X- Y5 A, X  y1 x8 LMifare S50出厂时,访问控制字节(字节6-字节9)被初始化为“FF 07 80 69”,KEY A和KEY B的默认值为“FF FF FF FF FF FF” ;7 _) e& K% Q; ~
字节6为FF,二进制为1111111;字节7为07,二进制为00000111;字节8为80,二进制为10000000,如下:
5 y$ P5 B7 ?" }7 n5 F( `' b) G; X7 _' \9 c9 }' v( S1 t: T
! s& V$ Z+ A+ e1 M. X# L: \

- q. b9 u3 ~4 h9 n. r+ \对照前面的访问位在区尾的存储形式图,可得知访问控制位为:: u( W& H5 c( e6 h5 l
C10C20C30=000;C11C21C31=000;C12C22C32=000;C13C23C33=001。
& L7 K4 E- I9 ~( {; ^1 l* m7 ^# C3 ?
C10C20C30、C11C21C31、C12C22C32对应数据段0、1、2,参考数据段的访问条件图即可得知该段三个数据区的访问权限;
8 i6 p2 ?% a+ f' b+ nC13C23C33对应区尾(段 3),参考区尾的访问条件图即可得知该段的访问权限;2 U+ ~$ F) `( z' D& v* T  @' ?
. u8 \- z  h' z3 d3 q" Z
块0控制位为:0 0 0 权限为:通过A或者B密码认证后可读,可写,可进行加值和减值操作;
. [  H. f! s: l7 g' ]1 S. p) ^0 k块1控制位为:0 0 0 权限为:通过A或者B密码认证后可读,可写,可进行加值和减值操作;6 c0 C' U: I$ q$ S, o+ s* y! B6 [
块2控制位为:0 0 0 权限为:通过A或者B密码认证后可读,可写,可进行加值和减值操作;
# ~6 A+ ?- J( N0 |3 T% a( s块3控制位为:0 0 1 权限为:A密码不可读,验证A或者B密码后可改写A密码;验证A或者B密码后,可读可改写存取控制;验证A密码或者B密码后,可读可改写B密码;0 W# e! u* F) r: U
6 _* k% h9 }1 O  G
这样每次换算还是有点麻烦,可以使用M1 S50卡控制字节生成工具快速换算:
+ Z. A# J6 B) Y. C
1 t' M+ \' I8 P- F# d& @) V0 W
& `* l4 }7 M( q9 R4 d* o& n: D/ n3 [8 A% X: h6 G# F) u; w' A
最下面一行可以输入想解释的控制字,也可以根据上面的设置生成控制字;
- h+ W. `: G6 G* }最上面一行,左边是数据段0、1、2的访问控制位,右边是对应权限所需要的秘钥;
; E6 Z3 E$ `( u& H$ @中间的一行,左边是区尾的访问控制位,右边是对应权限所需要的秘钥;
$ x2 _1 T: k- N3 H* x8 P
  \/ A/ m  J5 k+ Q3 o6 B5 X  l+ `" \1.7 非加密IC卡和加密IC卡
3 s  P" B& n; c# w  i, c
: ], |, W1 L% [- v5 F6 _( [3 t非加密IC卡和加密IC卡的区别就是,非加密IC卡中所有扇区的KEYA和KEYB数值都是默认值FFFFFFFFFFFF;# Z0 E% p3 T2 Q. u3 m/ x  |
而加密IC卡中,其中有扇区的KEYA和KEYB不等于FFFFFFFFFFFF,部分扇区加密的卡称半加密IC卡,所有扇区都加密的卡称全加密IC卡。) Z9 {; m4 w0 |$ u

/ g; o/ X" a; M: D6 J: S$ ]5 o一般的读卡器,像手机的NFC,是读不到IC卡的加密数据的,需要用专门的工具,比如Proxmark3读取。
( |, g$ K$ P- r- t% w2 v7 Z& Z3 H0 O+ w, y' x  N) f
对于IC卡,除了对卡上数据加密,还有滚动码加密、服务器数据验证等技术。/ h& D" O  o4 D  L3 t6 F
因此,对IC卡的解密,更多的是门禁卡、签到卡、车库卡等的讨论,像公交卡、饭卡等涉及到资金问题的,基本都有服务器定期校验,得先搞定服务器再说,难度高还违法。
2 `, {' \  \( W+ x+ j' U& o0 G& E# R8 s+ ?& T, o
参考资料:
$ G0 ~2 ~( g0 l& X3 P& j7 |- T码农生活 篇二:IC卡门卡模拟探秘9 z- \5 G! w6 @
IC卡简介【M1/S50,UID,CUID,FUID,UFUID复制卡介绍】
1 M& i4 h9 c; l% {谈谈 Mifare Classic 破解
- H3 Z1 d' z# _$ F' N% Krfid-practice
+ ~2 q. H& _& A2 J7 d, oType A 卡存储结构与通信
/ v: E. u' c3 X' a  Z" U7 h( U+ WProxmark3 Easy破解门禁卡学习过程
( ?) e- i' n, r5 s! k3 q& C5 R) U9 v3 z) Z
2. 手机NFC模拟加密门禁卡
7 C# S! v+ I- H
2 J! z) B; C' j$ E% j2 C有了前面的知识,再来看现在我的加密门禁卡情况,手机能识别为加密卡,肯定是IC卡。2 G* [4 p: g/ F( P' G2 ~% }0 I
2 I  l3 V6 n1 U3 o9 E# w5 X
首先,加密卡在目前这个情况下是无法解密的,如果按照下面的操作失败,请参考下一章。" k8 u6 o* Z' I& m# C1 o0 \* U
部分门禁系统只认证IC卡的UID,利用这一情况,可以试试复制门禁卡的UID,看运气能否打开门。
2 \& O, t. X8 q0 y$ C1 {# n2 a& }
* c! ^! I) c( a5 ]8 |8 ^在已root的情况下,直接使用APP NFC卡模拟 便可读取加密卡的UID和非加密数据、并写UID到手机NFC里。$ m3 g9 l- t8 Q: j3 a
在未root的情况下,使用小米系统自带的门卡模拟功能,出于安全考虑,是不能对加密卡进行任何操作。手机的NFC,理论上可以读加密IC卡的UID,因此可以使用第三方软件MifareClassicTool读取UID,因为没有root,不能写手机NFC,但可以写IC卡,因此还需要一张CUID卡(不能使用UID卡),某宝上一块多一张,思路就是先读取加密卡的UID,再读取CUID卡的数据,然后将CUID卡的UID改为加密卡一样的UID,再将修改后的数据写回到CUID卡,最后用小米系统自带的门卡模拟功能,复制未加密的CUID卡即可。
/ H; |. k  H, w' T* H( L. e2 R! h/ A( H, Z6 y/ J- I
1.读取加密卡的UID1 `1 v; E# g5 U
打开软件Mifare Classic Tool,将加密门禁卡放到手机的NFC感应区域,识别到IC卡后,点击“工具”->“显示标签信息”,可以看到加密门禁卡的8个数字,4字节的UID。
( I$ H" G% P- R1 c. \0 ~, `* z' C注意,在16进制里,每个数字为4位(2^4=16),8位(bits)为一字节(bytes),即两个数字组成一字节,这里8个数字,即为4字节(Bytes)。% {+ U9 R. A: \1 E( Z) }+ l2 O, ^
前8个数字,每个数字代表4位,8位为一字节,8个数字就是32位,即4字节
: d' e* X9 c0 _接着打开“工具”->“BCC计算器”,输入UID,得到1位BBC(两个数字)校验数据。3 i# _# h: I! A- t# ~
" K6 s( W: k7 A8 `, ]4 A+ k

" k8 s+ ^" O+ H" D  P5 q& t) O, I8 G( m9 A+ I! o# Q& N. f
2.读取CUID卡数据" S% ]# W1 J2 D4 ~
将CUID卡放到手机的NFC感应区域,识别到IC卡后,点击“读标签”->“启动映射并读取标签”,即可得到CUID白卡的所有信息。% {9 _0 h5 O# B& {- v
接着修改第一行的前10个数字,改为加密门禁卡的UID(8个数字)和BCC(2个数字),一共10个数字,并点右上角保存图标保存。, V) ?3 l. _$ X: Q) v
9 k1 m. }( |9 ]6 J: ^" P. F
8 ~, Z% U" ?; o1 N8 B

7 B3 l5 f- d8 R4 q8 S4 N+ p3.写数据到CUID卡
  x0 ~, \  N% _! {1 D再将CUID卡放到手机的NFC感应区域,识别到IC卡后,点击“写标签”,勾选“写转储(克隆)”->“显示选项”->“高级:使能厂商块写入”。4 B# x1 d( N9 e+ H; F5 v) x+ ?
再点击“选择转储”,选择刚才保存的数据,点击“选择转储”。
3 D) Q( t9 [. r# i$ ]" t& K9 w% M! E# T' q% x

4 n5 l' ~( @5 L' \' T7 Q2 E7 b4 E6 _
2 p% I2 ~7 V* I1 K  Q6 o- |在弹出的选择写扇区界面,默认即可,点击“好的”,最后点击“启动映射并写转储数据”。
0 a2 F6 C0 d5 Y$ B  Y% S' z$ ]% U# K/ r+ E! Z" z& r+ Y5 v
3 e, c. t6 `7 z4 X/ B) L

* `9 T! D, Q/ ?) t4 T- F! p4.NFC手机复制CUID卡
) X& b7 m7 s$ W- F$ I) f最后,使用小米手机系统自带的门卡模拟功能,复制刚才写入新UID的CUID卡即可。; q5 b6 L" p4 u% r
8 ]% J7 N; v( c* K9 G" P6 g
接着,就看运气吧,我小区的门禁系统就只认UID,搞定。" |  P4 g2 F- O2 B( |3 K0 J

5 q1 @$ A5 y0 Q1 q- K: I: q4 c9 v4 A% ^8 M6 \( ^2 s+ G. H1 e

精彩评论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 来自: 陕西铜川

" p3 a; I- D/ W8 k- f8 A# M) i4 {谢谢师傅,好详细的文章。现在多用于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