资源管理站

最新Proxmark3 命令行指令大全和完全实战手册

zyglz 7 0

特别声明:本文为原创,可自由转载、引用,但需署名作者且注明文章出处,如有侵权请联系!

最新Proxmark3 命令行指令大全和完全实战手册

前言

本文档分为两部分内容:

  1. Proxmark3 命令行指令大全(按功能分类,带详细使用案例)
  2. 实战问题解决记录(基于实际操作中遇到的各种问题及解决方法)

适用固件版本:Iceman 2026-02-16 及更新版本

Proxmark3


第一部分:基础操作与环境配置

一、基础操作类

命令说明使用案例
help显示所有可用命令场景:刚进入命令行,想看看有哪些命令可用。
输入help
输出:显示所有命令分类列表
hf进入高频命令组场景:想操作高频卡(如Mifare),先进入高频模式。
输入hf
输出:显示所有高频相关命令
lf进入低频命令组场景:想操作低频卡(如EM4100),进入低频模式。
输入lf
输出:显示所有低频相关命令
hw进入硬件命令组场景:想查看或配置硬件,进入硬件模式。
输入hw
输出:显示所有硬件相关命令
data数据分析与图形窗口场景:想分析捕获的波形。
输入data plot
输出:弹出图形窗口显示采样数据
quit / exit退出客户端场景:操作完成,想退出PM3客户端。
输入quit
输出:返回到系统命令行
clear清屏场景:屏幕上信息太多,想清空重新开始。
输入clear
输出:屏幕清空,只剩提示符
--help查看具体命令的帮助场景:想查看hf mf autopwn的具体用法。
输入hf mf autopwn --help
输出:显示该命令的所有参数说明

二、硬件与调谐

命令说明使用案例
hw version显示固件版本场景:想知道当前固件是什么版本,是否最新。
输入hw version
输出:显示bootrom、os、FPGA版本号和日期
hw status显示设备状态场景:设备工作不稳定,想查看各项状态是否正常。
输入hw status
输出:显示内存使用、天线状态、配置参数等
hw tune天线调谐场景:读卡距离变短,想检查天线输出是否正常。
输入hw tune
输出:显示LF和HF天线电压,正常值应>20V
hw reset重启PM3场景:设备卡死无响应,想软重启。
输入hw reset
输出:设备重启,重新连接

第二部分:高频卡(HF)操作指南

三、高频(HF)通用

命令说明使用案例
hf search搜索高频卡片场景:放上一张未知卡,想知道它是什么类型。
输入hf search
输出:自动识别卡片类型(如MIFARE Classic 1K)
hf tune高频天线调谐场景:只在高频模式下想专门调谐HF天线。
输入hf tune
输出:显示HF天线电压

四、ISO14443A(MIFARE)类

4.1 基础操作

命令说明使用案例
hf 14a info获取ISO14443A卡片信息场景:放上一张Mifare卡,想获取它的UID和ATQA、SAK。
输入hf 14a info
输出:显示UID: 04 12 34 56 78 90 AB CD,ATQA: 0004,SAK: 08
hf 14a reader模拟读卡器读取UID场景:想快速读取卡片UID,不做深入分析。
输入hf 14a reader
输出:显示UID: 041234567890abcd
hf 14a sim模拟标签场景:想模拟一张卡测试读卡器。
输入hf 14a sim 12345678
输出:开始模拟UID为12345678的标签
hf 14a snoop嗅探通信场景:想捕获读卡器和卡片之间的通信数据。
输入hf 14a snoop
输出:等待通信,捕获后显示交互数据
hf 14a raw发送原始指令场景:想发送自定义APDU指令测试卡片。
输入hf 14a raw -c 60 00
输出:返回卡片的原始响应数据

4.2 MIFARE Classic 专用(重点)

命令说明使用案例
hf mf rdbl读取块场景:已知扇区4块16用密钥A全F可读,想读取数据。
输入hf mf rdbl --blk 16 -a --key FFFFFFFFFFFF
输出data:aa 55 20 08 31 14 24 58 00 00 00 00 00 00 00 00
hf mf wrbl写入块场景:想用B密码修复扇区4的尾部块19。
输入hf mf wrbl --blk 19 -b --key FFFFFFFFFFFF --data FFFFFFFFFFFFFF078069FFFFFFFFFFFF
输出[+] Write ( ok )
hf mf rdsc读取扇区场景:想一次性读取扇区4的所有块(16-19)。
输入hf mf rdsc 4 A FFFFFFFFFFFF
输出:显示块16、17、18、19的数据
hf mf dump导出整卡数据场景:想把整张卡备份下来,防止丢失。
输入hf mf dump
输出:生成hf-mf-353C2AA6-dump.binhf-mf-353C2AA6-keys.bin
hf mf restore恢复数据到卡场景:之前备份过卡,现在想恢复数据到新卡。
输入hf mf restore -f hf-mf-353C2AA6-dump.bin
输出:逐块写入,完成后提示成功
hf mf chk检测默认密钥场景:拿到一张新卡,想知道哪些扇区用的是默认密钥。
输入hf mf chk *1 ? d default_keys.dic
输出:列出找到的所有密钥和对应的扇区

4.3 密钥攻击

命令说明使用案例
hf mf autopwn自动攻击(推荐)场景:已知扇区4的B密码是全F,想破解所有扇区的A密码。
输入hf mf autopwn -s 4 -b -k FFFFFFFFFFFF
输出:列出所有扇区的密钥,扇区4的A密码显示在表格中
hf mf nested嵌套攻击场景:autopwn失败,想尝试经典嵌套攻击。
输入hf mf nested 1 4 B FFFFFFFFFFFF
输出:攻击过程显示,最终列出所有密钥
hf mf hardnested硬嵌套攻击场景:标准嵌套攻击失败,卡片可能是较新的EV1版本。
输入hf mf hardnested --blk 16 -b --key FFFFFFFFFFFF --tblk 16 --ta
输出:显示攻击进度,最终给出目标A密码
hf mf staticnested静态嵌套攻击场景:遇到复旦卡(Static nonce detected)时使用。
输入hf mf staticnested --1k --blk 19 -b --key FFFFFFFFFFFF
输出:尝试破解静态随机数卡片的密钥
hf mf mifareDarkSide攻击场景:没有任何已知密钥,想尝试破解。
输入hf mf mifare
输出:利用卡片认证漏洞尝试获取密钥

4.4 魔术卡(UID卡)操作

命令说明使用案例
hf mf csetuid设置UID场景:想把魔术卡的UID改成和原卡一样。
输入hf mf csetuid 353C2AA6
输出:UID修改成功
hf mf csetblk写入块(魔术卡专用)场景:想直接写入块0(包括UID部分)。
输入hf mf csetblk 0 353C2AA6A6080400
输出:写入成功
hf mf cgetblk读取块(魔术卡专用)场景:想读取魔术卡的块0确认UID。
输入hf mf cgetblk 0
输出353C2AA6A6080400
hf mf cload写入dump到魔术卡场景:有原卡的dump文件,想一次性克隆到魔术卡。
输入hf mf cload -f hf-mf-353C2AA6-dump.bin
输出:逐块写入,完成后提示成功

4.5 仿真内存操作

命令说明使用案例
hf mf eload加载dump到仿真内存场景:想把备份的卡数据加载到内存,准备模拟。
输入hf mf eload 353C2AA6
输出:加载成功
hf mf esave保存仿真内存到文件场景:模拟前想把当前内存状态保存下来。
输入hf mf esave
输出:生成仿真内存文件
hf mf eget获取仿真内存块场景:想查看仿真内存中块0的内容。
输入hf mf eget 0
输出:显示块0的数据
hf mf eset设置仿真内存块场景:想修改仿真内存中块16的内容。
输入hf mf eset 16 000102030405060708090A0B0C0D0E0F
输出:设置成功
hf mf sim模拟卡片场景:想模拟一张卡测试读卡器。
输入hf mf sim u 353c2aa6
输出:开始模拟UID为353c2aa6的卡片

第三部分:低频卡(LF)操作指南

五、低频(LF)类

5.1 通用

命令说明使用案例
lf search搜索低频卡片场景:放上一张未知低频卡,想识别类型。
输入lf search
输出:自动识别为HID Prox卡,显示卡号
lf search -u搜索未知低频卡场景:标准搜索找不到,强制搜索未知调制方式。
输入lf search -u
输出:显示解调后的比特流,提示可能的调制方式
lf read读取低频ID场景:想读取低频卡的原始ID。
输入lf read
输出:显示读取到的低频信号数据
lf sim模拟低频标签场景:想模拟一张低频卡测试读卡器。
输入lf sim
输出:开始模拟

5.2 HID Prox

命令说明使用案例
lf hid read读取HID卡场景:放上一张HID卡,想读取卡号。
输入lf hid read
输出:Facility Code: 2006,Card Number: 12345
lf hid demod解调HID数据场景:已捕获HID信号,想解调出卡号。
输入lf hid demod
输出:显示解调后的卡号
lf hid sim模拟HID卡场景:已知Facility Code 2006,卡号12345,想模拟。
输入lf hid sim 200670012d
输出:开始模拟该HID卡
lf hid clone克隆到T55xx场景:想复制一张HID卡到T55xx可写卡。
输入lf hid clone 200670012d
输出:写入成功

5.3 T55xx 可写卡

命令说明使用案例
lf t55xx detect检测T55xx卡场景:放上一张空白T55xx卡,想确认是否可写。
输入lf t55xx detect
输出:检测到T55xx卡,显示配置信息
lf t55xx dump读取全部数据场景:想查看T55xx卡内部所有数据。
输入lf t55xx dump
输出:显示所有配置块和数据块
lf t55xx wr写入块场景:想向T55xx的块0写入配置数据。
输入lf t55xx wr b 0 d 00081040
输出:写入成功
lf t55xx config设置调制方式场景:想配置T55xx的调制方式为FSK。
输入lf t55xx config FSK
输出:配置成功
lf t55xx wipe擦除并重置场景:T55xx卡数据混乱,想完全清空。
输入lf t55xx wipe
输出:卡片重置为出厂状态

5.4 EM410x / Indala

命令说明使用案例
lf em410x read读取EM410x场景:放上一张EM4100卡,想读取ID。
输入lf em410x read
输出:ID: 1A2B3C4D5E
lf em410x sim模拟EM410x场景:已知ID为1234567890,想模拟测试。
输入lf em410x sim 1234567890
输出:开始模拟
lf em410x clone克隆到T55xx场景:想把EM410x ID写入T55xx卡。
输入lf em410x clone --id 7500573615
输出Tag T55x7 written with 0xffbd40029e660d42
lf indala read读取Indala场景:放上一张Indala卡,想读取ID。
输入lf indala read
输出:ID: a0000000c2c436c1
lf indala sim模拟Indala场景:已知Indala ID,想模拟测试。
输入lf indala sim a0000000c2c436c1
输出:开始模拟

第四部分:数据分析与脚本

六、数据分析

命令说明使用案例
data plot显示图形窗口场景:刚捕获了一段信号,想用图形查看波形。
输入data plot
输出:弹出图形窗口显示采样数据
data save保存采样数据场景:捕获到一段有趣的信号,想保存下来。
输入data save captured_signal.pm3
输出:数据保存成功
data load加载采样数据场景:之前保存过信号,想重新分析。
输入data load captured_signal.pm3
输出:数据加载成功,可用data plot查看
data print打印解调缓冲区场景:想查看当前解调缓冲区中的比特流。
输入data print
输出:显示解调后的二进制数据
data rawdemod解调数据场景:已加载采样数据,想尝试自动解调。
输入data rawdemod ask manchester
输出:显示解调结果

七、脚本与自动化

命令说明使用案例
script list列出可用脚本场景:想知道有哪些现成的脚本可以用。
输入script list
输出:显示所有可用脚本名称
script run运行脚本场景:想把dump文件加载到仿真内存。
输入script run dumptoemul -i hf-mf-353C2AA6-dump.bin
输出:脚本执行成功
msleep延时(毫秒)场景:写脚本时,需要在两个操作之间等待。
输入msleep 500
输出:等待500毫秒

八、退出客户端

命令说明使用案例
quit退出场景:操作完成,想退出PM3客户端。
输入quit
输出:返回到系统命令行
exit退出场景:同上。
输入exit
输出:返回到系统命令行

第五部分:实战问题解决记录

九、高频卡常见问题

9.1 连接问题:Sending bytes to proxmark failed

现象

  • PM3 红灯常亮
  • 命令行报错 Sending bytes to proxmark failed
  • 设备管理器能识别 COM 口但无法通信

解决方法

  1. 强制重启:拔掉 USB 线,等待 10 秒,重新插入
  2. 进入 Bootloader 模式

    • 按住 PM3 侧面按钮
    • 保持按住同时插入 USB 线
    • 看到红灯闪烁后松开
  3. 重新刷写固件

    pm3-flash-bootrom
    pm3-flash-fullimage
    
    #### 9.2 命令格式错误:`unexpected argument`
    
  • 输入命令后报错 unexpected argument
  • 提示 Try '... --help' for more information

    原因:Iceman 新版固件命令格式与旧版不同,需要使用带参数名的格式

    正确格式示例

正确:带参数名

hf mf wrbl --blk 39 -b --key F1F1F1F1F1F1 --data FFFFFFFFFFFFFF078069FFFFFFFFFFFF

错误:无参数名(旧版格式)

hf mf wrbl 39 B F1F1F1F1F1F1 FFFFFFFFFFFFFF078069FFFFFFFFFFFF


**查看帮助:**

hf mf wrbl --help


#### 9.3 复旦卡静态随机数问题:Static nonce detected

**现象**:
- hf 14a info 显示 Static nonce: yes
- 嵌套攻击报错 Static nonce detected. Quitting...
- 后门密钥尝试失败

**原因**:卡片是复旦微电子 FM11RF08S 芯片,具有静态随机数防破解机制

**尝试过的解决方案**:

1. **后门密钥测试**:

hf mf rdbl --blk 0 -a --key A396EFA4E24F
hf mf rdbl --blk 0 -a --key A31667A8CEC1
结果:Auth error


2. **静态嵌套攻击**:

hf mf staticnested --1k --blk 19 -b --key FFFFFFFFFFFF
结果:部分成功,扇区4的B密码有效


3. **自动攻击**:

hf mf autopwn
结果:成功破解大部分扇区密钥,生成完整dump文件


#### 9.4 格式化卡片:恢复默认状态

**目标**:将加密扇区恢复为默认值(密钥全F,数据全0)

**已知密钥情况**(来自 hf mf autopwn 结果):
- 扇区1-3、10-15:A/B 密钥均为 FFFFFFFFFFFF
- 扇区4:B 密钥为 FFFFFFFFFFFF(A密钥未知)
- 扇区0:A/B 密钥均未知
- 扇区5-9:所有密钥未知

**操作步骤**:

1. **备份当前数据**:

hf mf dump

2. **恢复已知密钥扇区**(以扇区9块39为例):

hf mf wrbl --blk 39 -b --key F1F1F1F1F1F1 --data FFFFFFFFFFFFFF078069FFFFFFFFFFFF


3. **清空数据块**:

hf mf wrbl --blk 16 -a --key FFFFFFFFFFFF --data 00000000000000000000000000000000

4. **验证写入结果**:

hf mf rdbl --blk 39 -a --key FFFFFFFFFFFF

#### 9.5 写入成功但数据未改变

**现象**:
- 写入命令返回 [+] Write ( ok )
- 再次读取发现数据还是原来的

**原因**:
- 扇区尾部控制位可能被设置为禁止写入
- 卡片可能已永久锁定

**解决方法**:
1. **立即读取验证**:

hf mf rdbl --blk 39 -b --key F1F1F1F1F1F1

2. **检查访问控制位**:

hf mf rdbl --blk 39 -a --key FFFFFFFFFFFF
# 查看返回数据中的访问控制位是否正确


---

### 十、低频卡常见问题

#### 10.1 未知卡检测:lf search -u 输出 PSK1 信号

**现象**:
[-] No known 125/134 kHz tags found!
[+] PSK1 demoded bitstream
[=] Possible unknown PSK1 Modulated Tag found above!

**原因**:卡片使用 PSK(相移键控)调制,不是常见的 ASK 或 FSK 卡

**解决方法**:
1. **尝试不同解调方式**:

data rawdemod psk2
data rawdemod fsk
data rawdemod ask


2. **查看原始波形**:

lf read -v
data plot


3. **保存原始数据供后续分析**:

data save unknown_card.pm3


#### 10.2 EM410x 卡读取与克隆

**成功读取EM410x卡**:

lf search -u

输出:EM 410x ID 7500573615

**克隆到T55x7卡**:

lf em410x clone --id 7500573615
输出:Tag T55x7 written with 0xffbd40029e660d42

**验证克隆结果**:

lf em410x read

应返回相同的ID:7500573615

#### 10.3 两张不同低频卡的处理

**场景**:两次 lf search -u 得到不同结果

| 卡片 | 识别结果 | 类型 |
|:---|:---|:---|
| 第一张 | EM 410x ID 7500573615 | 标准EM410x卡 |
| 第二张 | PSK1 demoded bitstream | 未知PSK调制卡 |

**解决方法**:
1. **第一张卡**:直接用 lf em410x read 读取
2. **第二张卡**:先用 data rawdemod 尝试不同解调,再用 lf t55xx detect 检测芯片

---

## 第六部分:文件格式与备份

### 十一、文件说明

执行 hf mf dump 后生成的文件:

| 文件后缀 | 格式 | 说明 |
|:---|:---|:---|
| .bin | 二进制 | 卡片数据的原始二进制格式 |
| .eml | 文本 | 可读的十六进制文本格式 |
| .json | JSON | 包含元数据的JSON格式 |
| .keys | 二进制 | 密钥文件 |

### 十二、数据备份建议

1. **操作前先备份**:
   hf mf dump

2. **重要数据多重保存**:
   - 保存 .bin 文件供PM3恢复使用
   - 保存 .eml 文件供手动查看和编辑
   - 截图保存关键信息

3. **低频信号备份**:
   data save lf_capture_日期.pm3

---

##  常用命令速查表

| 你想做什么 | 输入命令 |
|:---|:---|
| **破解A密码(已知B)** | hf mf autopwn -s 4 -b -k FFFFFFFFFFFF |
| **读取块16** | hf mf rdbl --blk 16 -a --key FFFFFFFFFFFF |
| **写入块19** | hf mf wrbl --blk 19 -b --key FFFFFFFFFFFF --data FFFFFFFFFFFFFF078069FFFFFFFFFFFF |
| **整卡备份** | hf mf dump |
| **检测默认密钥** | hf mf chk *1 ? d |
| **设置魔术卡UID** | hf mf csetuid 12345678 |
| **模拟卡片** | hf mf sim u 353c2aa6 |
| **读取EM410x** | lf em410x read |
| **克隆EM410x** | lf em410x clone --id 7500573615 |
| **检测T55xx** | lf t55xx detect |
| **检查天线** | hw tune |
| **查看固件版本** | hw version |
| **识别未知高频卡** | hf search |
| **识别未知低频卡** | lf search -u |
| **查看波形** | data plot |
| **保存采样数据** | data save filename.pm3 |
| **加载采样数据** | data load filename.pm3 |

---

##  常见错误及解决方法速查

| 错误信息 | 可能原因 | 解决方法 |
|:---|:---|:---|
| Sending bytes to proxmark failed | 通信断开 | 重新插拔 USB,进入 Bootloader 模式 |
| unexpected argument | 命令格式错误 | 用 --help 查看正确格式,使用带参数名格式 |
| Auth error | 密钥错误 | 换用已知正确的密钥或类型(A/B) |
| Static nonce detected | 复旦卡防破解 | 尝试后门密钥或 hf mf staticnested |
| Can't authenticate to block | 密钥或块号错误 | 确认块号和密钥类型(A/B) |
| Error - can't find script | 脚本不存在 | 更新固件或手动下载脚本 |
| No known tags found | 未知卡类型 | 用 -u 参数强制搜索,或手动解调 |
| Write ( failed ) | 写入失败 | 检查密钥是否正确,卡片是否可写 |
| Command execute timeout | 设备无响应 | 重新插拔USB,重启客户端 |
| invalid option | 参数名错误 | 查看 --help 确认正确的参数名 |
| Wrong key | 密钥不正确 | 确认使用的密钥是否正确(A/B类型) |

---

##  最终使用建议

1. **先看帮助**:任何不确定的命令先用 --help 查看格式
2. **先备份**:修改卡片前先用 dump 备份原数据
3. **先验证**:写入后用 rdbl 验证结果
4. **区分大小写**:密钥和参数都是大写十六进制
5. **注意格式**:Iceman 固件要求带参数名(如 --blk、--key)
6. **耐心尝试**:复旦卡需要特殊方法处理,不要灰心
7. **保存日志**:重要操作保存屏幕输出,方便回溯
8. **多交流**:遇到难题可以去 Proxmark3 论坛或社群求助
9. **记录成功案例**:每次成功操作记录下来,形成自己的经验库
10. **循序渐进**:从简单的读取开始,逐步尝试写入和破解

---

公众号

评论列表 (已有0条评论)

消灭零回复

发表评论 (已有0条评论)

icon_lol.gif2016zhh.gif2016fendou.gif2016lengh.gificon_exclaim.gif2016gg.gif2016yhh.gificon_cry.gif2016bs.gif2016qd.gif2016bz.gificon_eek.gif2016ka.gif2016zhem.gificon_confused.gif2016qq.gif2016db.gif2016jk.gif2016tuu.gif2016zk.gif2016kk.gificon_neutral.gif