0

0

如何利用蓝牙获取信用卡数据

王林

王林

发布时间:2019-11-29 17:47:25

|

3570人浏览过

|

来源于FREEBUF

转载

如何利用蓝牙获取信用卡数据

FUZE卡介绍

FUZE是一种尺寸跟普通信用卡一样的物联网设备,你可以使用智能手机App并通过蓝牙来对FUZE卡进行编程。为了方便用户管理和配置信用卡,BrilliantTS公司还专门发布了一款名叫eCARD Manager的应用程序。当你需要进行支付时,你需要在手机App中选择使用的信用卡,选择成功后FUZE卡也就相当于你所选择的那张信用卡了。

但是通过研究发现,卡片的添加和使用过程其安全性并不可靠,从某种程度上来说,FUZE确实部署了一些安全防护措施,在首次设置FUZE时,你需要输入一个六位数的密码,但这个步骤是可以跳过的。配置好密码之后,设备会保持锁定状态,直到你手动解锁或手机在卡片附近时才会解锁。在锁定状态下,你无法访问卡片中的数据或对磁条进行编程。它还提供了一种高级安全模式,即只有用户手机通过蓝牙连接卡片时,卡片才可以正常使用。

X光扫描硬件结构

跟常见的物联网设备不同,FUZE卡的厚度只有一毫米不到,所以为了了解设备的内部构造,X光扫描是最合适不过了。扫描到的结构图如下所示:

11.png

我们可以看到,主芯片是一个微型控制器、一个e-Paper驱动器和一个蓝牙SoC,而且主板上很多功能目前都还没有使用到,包括NFC和EMV(之后会提供功能支持)。

蓝牙协议逆向分析

对于FUZE卡来说,蓝牙接口是我们逆向分析的主要目标。为此,我所要使用的工具如下:

1.   安卓手机一台;

2.   Burp Suite(可选);

3.   Wireshark+带壳的Perl脚本;

4.   Gatttool/BlueZ;

要对蓝牙设备进行黑盒测试的话,安卓手机必不可少。我们不仅可以在手机上监控蓝牙的通信流量,而且还可以直接对Java字节码进行反汇编。Burp作为HTTP代理,我们可以拦截安卓App与后台服务器的API请求。安卓芯片带有一个名叫“HCI snoop log”的功能,用户可以在开发者设置菜单中开启,这个功能允许我们将蓝牙活动的所有信息保存在文件中,其中包含App与设备的所有交互信息。Wireshark可以读取HCI snoop log的信息,并对其进行基本的过滤和分析。为了半自动化实现将数据导出为文本文件,这里我们使用了一个Perl脚本。最后,gatttool或其他的BlueZ工具可以用来对设备进行最直接的渗透分析,并了解协议消息。

逆向FUZE

众所周知,BLE的配对协议是存在漏洞的,大多数设备都会在其基础上实现额外的安全保护,。同样的,FUZE也不会向任何未配对的设备发送数据,或使用BLE连接层加密。因此,gatttool是无法在不进行配对的情况下向FUZE发送请求的,所以我打算使用基于安卓的逆向分析方法:

1.   安卓上开启蓝牙HCI snoop功能;

2.   在App中与FUZE卡交互;

3.   使用adb将HCI日志导出到PC中;

4.   使用Wireshark进行分析;

5.   过滤并将数据导出到文本中;

6.   使用Perl脚本对数据进行解析;

Wireshark的逆向分析结果如下:

ff0bce95bc0b5229b3110e8979845c5.png

HCI snoop最好的地方就在于它所捕捉到的数据是硬件蓝牙芯片加密之前的明文数据,其中包含有某些ASCII字符串和协议数据格式。

金典兑换游戏支付平台程序
金典兑换游戏支付平台程序

本软件完全免费,无任何bug。用户可放心使用,网关需单独注册,请联系软件作者。1、关于接口设置:721K 卡易智能点卡接口,易宝支付网银接口。2、关于账户功能:商户信息管理、玩家留言信箱、网关下载、资金管理。3、关于游戏管理:分区管理、添加分区、分组管理、比例模板、补发管理、获取代码。4、关于订单管理:订单查询、渠道管理、结算统计。5、关于数据统计:玩家排名、分区排名、渠道统计。6、程序是 .NE

下载

漏洞利用与PoC

注:如果攻击者能够捕捉到设备与App的配对会话,FUZE卡的配对数字PIN码是可以通过暴力破解攻击的形式破解的。

首先,我们需要使用bluetoothctl来扫描设备并与其实现配对:

1. 启动bluetoothctl:sudo bluetoothctl;

2. 启用代理客户端(用于配对):agent on;

3. 扫描设备:scan on;

4. 扫描到FUZE卡之后,禁用扫描:scan off;

5. 与FUZE卡配对:pair

6. 输入设备显示的数字PIN码;

7. 断开连接:disconnect ;

b88d29aa3caa44b89f85baaa7f0a9a6.png

接下来,我们就可以使用gatttool向卡片发送命令了:

1.   启动gatttool:sudo gatttool -I -b

2.   连接设备:connect;

3.   订阅通知:char-write-req 1b 0100;

4.   发送命令:char-write-req 18

我们所发送的命令如下:

91f88846034d19818341426e065abe1.png

第一条命令可以绕过设备的锁屏功能,第二天可以读取到设备中的第一张信用卡卡号、过期日以及CVV。

409a6f53c1c74ae865a9fbe96edab2d.png

总结

前有Apple Pay和三星Pay,后有FUZE智能卡,整个支付行业都在想尽办法实现无卡支付,虽然我个人并不认为蓝牙信用卡有多大的现实意义,但既然已经有了,那我们肯定要想办法保证它的安全。

相关文章教程推荐:web服务器安全

相关文章

360借条
360借条

3分钟审核,最快5分钟放款,极速到账,低服务费,年化综合息费率7.2%起。

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

760

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

221

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1566

2023.10.24

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

649

2023.11.24

java读取文件转成字符串的方法
java读取文件转成字符串的方法

Java8引入了新的文件I/O API,使用java.nio.file.Files类读取文件内容更加方便。对于较旧版本的Java,可以使用java.io.FileReader和java.io.BufferedReader来读取文件。在这些方法中,你需要将文件路径替换为你的实际文件路径,并且可能需要处理可能的IOException异常。想了解更多java的相关内容,可以阅读本专题下面的文章。

1228

2024.03.22

php中定义字符串的方式
php中定义字符串的方式

php中定义字符串的方式:单引号;双引号;heredoc语法等等。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

1184

2024.04.29

go语言字符串相关教程
go语言字符串相关教程

本专题整合了go语言字符串相关教程,阅读专题下面的文章了解更多详细内容。

192

2025.07.29

c++字符串相关教程
c++字符串相关教程

本专题整合了c++字符串相关教程,阅读专题下面的文章了解更多详细内容。

131

2025.08.07

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号