proxmark内部有个卡模拟内存,emulator memory,过程大概是这样 1,把各个扇区的密码装载进 emulator memory 2,把卡扇区数据读进去 emulator memory 3,把 emulator memory 内容写入到新的 M1卡或者 CUID卡
0,清除 emulator memory 内容 proxmark3> hf mf eclr
1,装载密码 使用之前介绍的 nested 或者 hardnested 或者 sniff等不同破解方法,可以建立 一个词典文件 keys.dic,内容就是各个扇区的密码 FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, 29c9c9bef314, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF, FFFFFFFFFFFF,
运行命令 proxmark3> hf mf chk * ? t keys.dic 参数 * 表示所有扇区,默认1k卡,?表示测试AB密码,t 表示把key传输到 emulator memory, keys.dic表示之前建立的字典文件 注意,卡片必须先放上去,并且确认这个 chk 命令成功,所有密码都测试通过。
查看 emulator memory key 的数据,确认密码显示正确 proxmark3> hf mf ekeyprn
2,读取卡的数据(普通M1卡的情况)
proxmark3> hf mf dump
就可以把整张卡的数据读取到 emulator memory,并且写到 dumpdata.bin 文件。 dumpdata.bin 文件比较简单,用十六进制编辑器打开就行了,就是各个扇区的数据, 密码也包含了。用 ultraedit 打开就行。
3,把数据写入到新的卡(普通M1卡的情况)
proxmark3> hf mf restore
4,把数据写到新的 CUID 卡 由于 CUID卡由特殊的命令处理
清空 CUID卡,1标示1k卡,w表示清除数据,只支持1a的卡,f表示填入默认数据 proxmark3> hf mf cwipe 1 w f
放入新的CUID卡, e表示数据来源于 emulator memory,也就是之前的dump命令读到的数据 proxmark3> hf mf cload e
如果要复制的数据是 CUID卡,那么用命令就可以读到 emulator memory了 proxmark3> hf mf csave e