【RFID Hacking③】ProxMark3使用案例:嗅探银行闪付卡信息

0×00 前言

RFID是Radio Frequency Identification的缩写,术语为射频识别,俗称电子标签。按照工作频率的不同,RFID标签可以分为低频(LF)、高频(HF)、超高频(UHF)和微波等不同种类。目前国际上广泛采用的频率分布于4种波段,低频(125KHz)、高频(13.54MHz)、超高频(850MHz~910MHz)和微波(2.45GHz)。

目前在实际应用中,比较常用的是13.56MHz、860MHz~960MHz、2.45GHz等频段。近距离RFID系统主要使用125KHz、13.56MHz等LF和HF频段,技术最为成熟;远距离RFID系统主要使用433MHz、860MHz~960MHz等UHF频段,以及2.45GHz、5.8GHz等微波频段,目前还多在测试当中,没有大规模应用。

低频:

低频段射频标签,简称为低频标签,其工作频率范围为30kHz~300kHz。典型工作频率有125KHz和133KHz。

低频标签一般为无源标签,其工作能量通过电感耦合方式从阅读器耦合线圈的辐射近场中获得。低频标签与阅读器之间传送数据时,低频标签需位于阅读器天线辐射的近场区内。

低频标签的阅读距离一般情况下小于1米。

中高频:

中高频段射频标签的工作频率一般为3MHz~30MHz。典型工作频率为13.56MHz。根据无线电频率的一般划分,这一工作频段又称为高频,所以也常将其称为高频标签。

中频标签的阅读距离一般情况下也小于1米。中频标签由于可方便地做成卡状,广泛应用于电子车票、电子遥控门锁控制器、小区物业管理、大厦门禁系统等。

0×01 PM3常用命令

1.1常用类

help     显示帮助. hw help 与 hw 是等价的。
data     图形窗口/缓冲区数据操作等等
exit     退出Proxmark3的终端环境
hf     高频相关命令
hw     硬件检测相关命令
lf     低频相关命令
quit     退出Proxmark3的终端环境等同exit 

hw tune 显示天线调谐
hw ver  显示硬件(固件)版本

1.2 low Frequency 低频类(LF)

lf 低频相关命令
help     显示帮助
cmdread     <off> <‘0‘> <‘1‘> <命令> [‘h‘] -- 在读取之前发送命令来调整LF读卡器周期(以微妙为单位)(‘h‘选项为134)
em4x     EM4X卡类相关命令...
flexdemod     解调FlexPass样本
hid     HID卡类相关命令...
indalademod     [‘224‘] --解调Indala样本的64位UID(选项‘224‘是224位)
indalaclone     [UID] [‘l‘]-- 克隆Indala到T55x7卡 (标签必须在天线上)(UID为16进制)(选项‘l‘表示224位UID)
read     [‘h‘] -- 读取125/134 kHz的低频ID标签(选项‘h‘是134)
sim     [GAP] -- 从可选GAP的缓冲区模拟低频标签(以微秒为单位)
simbidir     模拟低频标签(在读卡器和标签之间双向传输数据)
simman     <时钟> <比特率> [GAP] 模拟任意曼彻斯特低频标签
ti     TI卡类相关命令...
hitag     Hitag标签与应答相关…
vchdemod     [‘clone‘] - 解调VeriChip公司样本
t55xx     T55xx卡类相关命令...
PCF7931     PCF7931卡类相关命令... 

1.3 High Frequency 高频类(HF)

hf 高频相关命令
help     显示帮助
14a     ISO14443A卡的相关命令...
14b     ISO14443B卡的相关命令...
15     ISO15693卡的相关命令...
epa     德国身份证的相关命令...
legic     LEGIC卡的相关命令...
iclass     ICLASS卡的相关命令...
mf     MIFARE卡的相关命令...
tune     连续测量高频天线的调谐 

1.3.1 hf 14a 【ISO14443A卡的相关命令】

hf 14a help     显示帮助
hf 14a list     列出窃听到的ISO14443A类卡与读卡器的通信历史记录
hf 14a reader     读取ISO14443A类卡的UID等数据
hf 14a cuids     收集指定数目的随机UID,显示开始和结束时间。
hf 14a sim     <UID> -- 模拟ISO14443A类标签
hf 14a snoop     窃听ISO14443A类卡与读卡器的通信数据
hf 14a raw     使用RAW格式命令发送指令到标签 

1.3.2 hf 14b 【ISO14443B卡的相关命令】

hf 14b help     显示帮助
hf 14b demod     调制ISO14443B协议的标签
hf 14b list     列出窃听到的ISO14443B类卡与读卡器通信历史记录
hf 14b read     读取ISO14443B类卡的信息
hf 14b sim     模拟ISO14443B类标签
hf 14b simlisten     从高频样本中模拟ISO14443B类标签
hf 14b snoop     监听ISO14443B类卡与读卡器之间的通信数据
hf 14b sri512read     <int> -- 读取SRI512标签的内容
hf 14b srix4kread     <int> -- 读取SRIX4K标签的内容
hf 14b raw     使用RAW格式命令发送指令到标签 

1.3.3 hf 15 【ISO15693卡的相关命令】

hf 15 (ISO15693卡的相关命令...)
hf 15 help     显示帮助
hf 15 demod     调制ISO15693协议的标签
hf 15 read     读取ISO15693类卡的信息
hf 15 record     记录ISO15693标签样本
hf 15 reader     作为ISO15693卡类的读卡器,读取UID等信息
hf 15 sim     模拟ISO15693协议的标签
hf 15 cmd     向ISO15693协议的标签直接发送命令
hf 15 findafi     暴力一个ISO15693标签的AFI
hf 15 dumpmemory     读取ISO15693标签的所有页内存数据 

1.3.4 hf iclass 【ICLASS卡的相关命令】

hf iclass help     显示帮助
hf iclass list     列出窃听到的iClass类卡与读卡器的通信历史记录
hf iclass snoop     窃听iClass类卡与读卡器的通信数据
hf iclass sim     模拟iClass标签
hf iclass reader     读取iClass标签 

1.3.5 hf mf 【MIFARE卡的相关命令】

hf mf help     显示帮助
hf mf dbg     设置默认调试模式
hf mf rdbl     读取MIFARE classic卡的区块数据
hf mf rdsc     读取MIFARE classic卡的扇区数据
hf mf dump     导出MIFARE classic卡的数据到二进制文件
hf mf restore     从二进制文件恢复数据到空白的MIFARE classic卡
hf mf wrbl     改写MIFARE classic卡的区块数据
hf mf chk     测试MIFARE classic卡的各个区块KEY A/B
hf mf mifare     基于PRNG漏洞,执行mifare “DarkSide”攻击操作
hf mf nested     测试嵌套认证漏洞,基于一个已知Key,获取都有扇区Keys
hf mf sniff     嗅卡片与读写器之间的通讯(等同于hf 14a snoop)
hf mf sim     模拟一个MIFARE卡片
hf mf eclr     清除仿真内存的各区块数据
hf mf eget     获取仿真内存的各区块数据
hf mf eset     设置仿真内存的各区块数据
hf mf eload     从导出的文件加载仿真数据
hf mf esave     导出保存仿真数据到文件
hf mf ecfill     利用仿真器的keys来填补仿真内存
hf mf ekeyprn     打印输出仿真内存中的keys
hf mf csetuid     直接设置可改UID卡的UID
hf mf csetblk     把对应区块数据写入UID卡
hf mf cgetblk     读取UID卡对应区块数据
hf mf cgetsc     读取UID卡对应扇区数据
hf mf cload     写入dump数据到UID卡。注意
hf mf csave     保存UID卡数据到文件或者仿真内存 

0×02 QuickPass闪付

小科普:

“闪付”(Quick Pass)代表银联的非接触式支付产品及应用,具备小额快速支付的特征。用户选购商品或服务,确认相应金额,用具备“闪付”功能的金融IC卡或银联移动支付产品,在支持银联“闪付”的非接触式支付终端上,轻松一挥便可快速完成支付。一般来说,单笔金额不超过1000元,无需输入密码和签名。非接触式“闪付”终端,主要覆盖日常小额快速支付商户,包括超市、便利店、百货、药房、快餐连锁等零售场所和菜市场、停车场、加油站、旅游景点等公共服务领域。

支持NFC的安卓设备可通过支付宝、NFC生活通等App读取到闪付卡的最近十次消费记录:

接下来我们将演示如何在手机App读取银行闪付卡信息的时候进行嗅探&窃听。

演示流程:

1.使用NFC生活通判断银行闪付卡类型:标签-读取标签:

这里我们得到了标签类型:Mifare Classic 14443

2.根据标签类型,选择合适的嗅探命令:

hf mf sniff 实时显示嗅探到的数据
hf iclass snoop
hf 14a snoop

3.把银行卡放到PM3天线上,在手机读取银行卡信息前执行嗅探命令;

4.把手机紧贴银行卡,读取银行卡信息;

5.结束嗅探,列出&查看嗅探到的数据。

hf mf sniff 实时显示嗅探到的数据
hf iclass list
hf 14a list

6.对嗅探到的数据进行解码。

(解码Tips可参考《无线电安全攻防大揭秘》45-50页 )

0×03 演示视频

接下来以hf 14a系列命令进行演示:

屏幕录像:

全局录像:

0×04 参考&感谢

RedioWar : Proxmark3命令帮助

时间: 2024-10-12 12:12:15

【RFID Hacking③】ProxMark3使用案例:嗅探银行闪付卡信息的相关文章

RFID Hacking②:PM3入门指南

0×00 前言 Proxmark3是由Jonathan Westhues在做硕士论文中研究Mifare Classic时设计.开发的一款开源硬件,可以用于RFID中嗅探.读取以及克隆等相关操作,如:PM3可以在水卡.公交卡.门禁卡等一系列RFID\NFC卡片和与其相对应的机器读取.数据交换的时候进行嗅探攻击,并利用嗅探到的数据通过XOR校验工具把扇区的密钥计算出来,当然PM3也能用于破解门禁实施物理入侵. 0×01 环境搭建 1.1 windows环境 PM3的固件和软件通常是配套使用,也就是说

Proxmark3使用案例

Proxmark3介绍 Proxmark3是由Jonathan Westhues设计并且开发的开源硬件,其主要用RFID的嗅探.读取以及克隆等的操作.其官方网站为:Jonathan Westhues个人网站 Proxmark3官网:PROXMARK.org Proxmark3销售网站:Proxmark3销售网站 Proxmark3驱动安装及固件更新 以Windows7_X86为例(适用Windows7_X64)截止目前出厂的零售版Proxmark3全部都是采用较稳定的R486固件以及Proxma

RFID Hacking–资源大合集

http://www.proxmark.org/forum/index.php RFID破解神器官方论坛 http://rfidiot.org/ 集成RFID ID识别/暴力破解/读写卡一身的Py包,通读官方网站所有信息会对RFID破解步骤有一个基本了解. http://www.rfdump.org/ (被墙) RFDump是一个后端工具,用于与任何标准的RFID读取器直接互操作,以读取RFID标签上的内容.主要用途有以下几种可能: 数据的读取器和后端结构的应用的可靠性测试 RFID标签内容操作

未来支付趋势:吃喝玩乐行都可以“闪付”

WIFI无孔不入,网购无处不在,芯片卡取代磁条卡,现金支付变成信用卡支付.二维码支付以及"闪购"--网络的飞速发展,让我们的支付发生着翻天覆地的变化. 网购族可选联名信用卡 据了解,目前中信银行.兴业银行等银行推出了针对淘宝网的联名信用卡.在淘宝商户消费时获得相应积分,并可以实现信用卡积分实时抵扣购物金额的优惠.还有部分银行推出了网购相关的信用卡,例如,2014年7月17日至11月6日(每周四,共计17天),光大银行卡客户选择支付宝快捷支付,单笔交易满199立减15元. 吃喝玩乐行都可

H5拉起云闪付免签支付源码云闪付11点后收款源码

最新xposed Hook云闪付研究成果: 2019-12-24日更新:最新支持云闪付H5支付,使用手机浏览器打开(测试地址),生码后点击H5唤起云闪付进行支付,无需扫码. 2019-12-23日更新:最近11点后云闪付无法生码,解决办法:最新支持云闪付静态码支付回调监听,让云闪付24小时都可收款(静态码回调测试地址) 2019-12-14日更新:云闪付的xposed程序之前用的是6.18的版本,前段时间突然不能用了,提示要升级到最新的7.0版本.之前这个云闪付的个人免签支付程序一直跑的挺好,云

xposed云闪付免签支付系统源码

云闪付免签支付系统是通过xposed框架Hook云闪付,自动生成指定金额的支付二维码,支付完成后App监控云闪付支付成功信息,实现自动回调. 支持H5,支持自动回调,支持多客户端多卡轮询. xposed云闪付免签支付系统核心源码——生码二维码代码: public static void GenQrCode(final String paramString1, final String paramString2, final String bankName, final String bankNo

集合应用案例:编写程序实现学生信息管理系统的录入登录

本编文章主要介绍一个关于集合的应用案例:完成班级学员录入功能 (没有持久化操作,每次重启录入的信息都保存不了) 一.需求: 创建学生类:添加以下属性以及相应的构造函数!使用集合保存学员信息!完成登录功能! 二.功能展示: 1.系统启动时,因系统内没有学生信息,所以需要注册之后才能使用 2.注册时判断用户输入信息是否正确 3.可以使用注册信息登录系统 三.业务代码: 1 import java.io.Serializable; 2 3 /** 4 * 学生类 5 * @author Adminis

python 之简单模拟银行系统功能(卡号申请、还款、支付、取现)

一.简单说明 1.源代码文件见附件 Credit.zip 2.关于转账功能,因时间问题,转账功能待续 4.逻辑图 二.代码 1.包encryption中的(password.py文件) #!/usr/bin/env python # -*- coding: utf-8 -*- """ Created on Thu Nov 10 14:47:29 2016 密码相关功能 @author: toby """ import hashlib, re #密

银联云闪付开发联调步骤向导

一.开发前的准备工作(开发中务必将控件mode改为测试环境)1. 打开https://open.unionpay.com/,后续说的文档下载.FAQ查询等都在这个平台操作.2. 下载规范和开发包.帮助中心-下载-产品接口规范-手机控件支付产品接口规范,帮助中心-下载-产品接口规范-手机控件支付产品技术开发包.(ApplePay后台部分和控件产品相同,区别仅在于调起的控件不同.)3. 开发人员都请先看下6.2的消费的交易流程.4. 相关测试参数:如果已签约,有自己的测试商户,则直接用自己的商户号测