edit - 如何修改 Mifare 1K 标签的块 0 / UID(使用 proxmark)
问题描述
我在尝试写入块 n°0(以更改 UID)时将 Mifare 1k 标签变砖,我想了解我做错了什么。
提醒一下,Mifare 1k 的数据表 => 1
我用了 :
- 一个 Proxmark 容易;
- 带有可写块 0 的标签(在线购买)。
首先,我搜索了标签
proxmark3> hf search
UID : fa 33 78 19
ATQA : 00 04
SAK : 08 [2]
TYPE : NXP MIFARE CLASSIC 1k | Plus 2k SL1
proprietary non iso14443-4 card found, RATS not supported
No chinese magic backdoor command detected
Prng detection: WEAK
所以,UID是fa 33 78 19
然后,我使用密钥 A 读取 de block 0(我知道它是“FFFFFFFFFFFF”)
proxmark3> hf mf rdbl 0 A FFFFFFFFFFFF
--block no:0, key type:A, key:ff ff ff ff ff ff
#db# READ BLOCK FINISHED
isOk:01 data:fa 33 78 19 a8 08 04 00 62 63 64 65 66 67 68 69
我们找到之前识别的 UIDfa 33 78 19
然后,我尝试通过仅替换与 UID 关联的字节来修改它:
proxmark3> hf mf wrbl 0 A FFFFFFFFFFFF FFFFFFFFa80804006263646566676869
--block no:0, key type:A, key:ff ff ff ff ff ff
--data: ff ff ff ff a8 08 04 00 62 63 64 65 66 67 68 69
#db# WRITE BLOCK FINISHED
isOk:01
但是在那之后,就没有办法和标签通信了,它变砖了……
proxmark3> hf mf rdbl 0 A FFFFFFFFFFFF
--block no:0, key type:A, key:ff ff ff ff ff ff
#db# Can't select card
#db# READ BLOCK FINISHED
isOk:00
proxmark3> hf search
#db# Reading card ...
No or unknown card found, aborting
我的错在哪里?
解决方案
我发现这是一个非常古老的话题,但它仍然有一些可能对某人有所帮助的信息。您可以“拆砖”一个“软砖”的标签(导致无效的密件抄送)。这里的说明
#e.g. for 4b UID:
hf 14a config --atqa force --bcc ignore --cl2 skip --rats skip
hf mf wrbl 0 A FFFFFFFFFFFF 11223344440804006263646566676869 # for 1k
hf mf wrbl 0 A FFFFFFFFFFFF 11223344441802006263646566676869 # for 4k
hf 14a config --std
hf 14a reader
推荐阅读
- java - 通过 ID 将数组索引到映射的通用类
- javascript - IE 11 中页面加载时的 Vimeo 视频白屏问题
- php - 项目的Angular5 Php结构
- python - Python 新手,需要一些指导来对照列表检查用户输入
- android - GPS & Google Location Services API vs Framework Location API (android.location)
- openmdao - 理解物理意义上的复杂步骤
- woocommerce - Woocommerce - 如何以编程方式停止发送电子邮件通知(有时)
- regex - 正则表达式匹配大于长度的字符串,但不包括结尾匹配
- java - 从旧列表创建新列表但使用该列表中没有相同引用的对象的最佳方法是什么
- java - 如何在不删除回收站视图中的位置的情况下删除项目?