RFID Hacking②:PM3入门指南

0×00 前言

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

0×01 环境搭建

1.1 windows环境

PM3的固件和软件通常是配套使用,也就是说每个固件版本都有一个硬件的elf固件和与它对应的软件。

在RadioWar购买的PM3默认使用r486版本的固件(固件&App下载地址), 第一次使用需要在PC上安装PM3的驱动:

设备管理

更新驱动

信任驱动

安装成功

1.1.1硬件测试

在r486\Win32\目录中找到proxmark3.exe,将其拉入cmd窗口中,回车确认便进入了PM3的工作终端:

 

hw tune //测量天线的调谐
hw ver //打印显示Proxmark3的固件版本信息
hw reset //重置PM3

1.1.2 Bug

经测试,PM3兼容性、稳定性存在问题,导致经常崩溃,问题的原因个人猜测可能是r486版本固件问题,导致经常在windows平台崩溃。解决方案:升级固件、使用Linux平台,这些都将在文章的后续内容中分享。

1.2固件升级(本文以升级为848固件版本为例)

在r486\Win32目录中找到烧写PM3固件的工具:flasher.exe,将该文件拖入cmd窗口再敲个空格,接着在新固件848\firmware_win目录中找到fullimage.elf 也将其拖入cmd窗口:

回车确认等待一小会就ok了。

1.3 Linux

本文以kali为例,介绍如何在Linux中搭建PM3的工作环境。

apt-get update
apt-get install build-essential libreadline5 libreadline-dev libusb-0.1-4 libusb-dev perl pkg-config subversion
svn checkout http://proxmark3.googlecode.com/svn/trunk proxmark-trunk  //由于这里是通过svn从谷歌克隆代码,执行这条命令的时候记得FQ

cd proxmark-trunk/client
make

./proxmark3 /dev/ttyACM0 //进入PM3的工作终端
hw tune  //测试设备

0×02 结语

环境搭建完毕,正如文章开头说到:PM3可以在水卡、公交卡、门禁卡等一系列RFID\NFC卡片和与其相对应的机器读取、数据交换的时候进行嗅探攻击,并利用嗅探到的数据通过XOR校验工具把扇区的密钥计算出来。先上两张图片:

本文先写到这里,后续会有RFID破解的案例分享,敬请期待。

扩展阅读

RFID Hacking:看我如何突破门禁潜入FreeBuf大本营

资料下载

Proxmark-Trunk代码包: http://pan.baidu.com/s/1dFyOFjN

PM3固件&学习资料:http://pan.baidu.com/s/1dFFJDdf

0×03 参考

https://www.trustwave.com/Resources/SpiderLabs-Blog/Proxmark-3,-now-with-more-Android/

www.proxmark.org

Google Play

RadioWar

Defcon23 RFID Hacking演讲Paper

RFID Cooking with Mifare Classic

时间: 2024-07-31 06:16:50

RFID Hacking②:PM3入门指南的相关文章

RFID Hacking④:使用ProxMark3 破解门禁

文中提及的部分技术可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使用! 0×00 前言 国际黑客大会Defcon传统之一:开锁!因为黑客认为锁也是一种安全挑战.我们在黑客题材电影.电视剧中也常常看到:男主女主利用高超的黑客技能侵入目标公司的网络,甚至利用社会工程学突破门禁防护潜入对方办公地点进行物理攻击,如入无人之境.(神盾局.黑客军团.Who am i 貌似都有类似情节) 北上广不相信眼泪 16集 在这一背景下,我们不经思考:门禁系统作为企业物理第一道屏障,这些硬件基础设施安全是否一直都

Firebug入门指南

据说,对于网页开发人员来说,Firebug是Firefox浏览器中最好的插件之一. 我最近就在学习怎么使用Firebug,网上找到一篇针对初学者的教程,感觉比较有用,就翻译了出来. ================= Firebug入门指南 作者:Estelle Weyl 原文网址:http://www.evotech.net/blog/2007/06/introduction-to-firebug/ 译者:阮一峰 本文是Firebug的一个概览,并不对它的所有特性进行详尽解释.不过,本文的内容

ajax入门指南(七)

ajax学习入门指南,对ajax初学者会有所帮助.    Prototype框架         页面插入         1.Insertion.Before类                 新建Insertion.Before类的实例,会将指定的HTML添加到指定元素之前,并且与之相邻                 示例:                 <div id="div1">original text</div>                

ajax入门指南(六)

ajax学习入门指南,相信对ajax初学者会有所帮助的.  Prototype框架     枚举对象(Enumerable对象)         1.Enumerable.each(iterator)         each方法的参数是一个JavaScript函数,它可以接受两个参数,它们分别是当前遍历的集合元素和当前遍历元素在集合中的序号         示例:         var arr = [1,2,3,4];         arr.each(            functio

ajax入门指南(五)

ajax学习入门指南,对ajax初学者应该有所帮助. Prototype基础类:        1. Class.create()             示例:                 var myClass = Class.create();       2.  Object.extend(destination,source)             示例:                 var myClass = Class.create();                

ajax入门指南(四)

ajax学习入门指南,对ajax初学者应该有所帮助. Prototype对Ajax的支持     Ajax.Request类     如下代码是一个示例:     <!--客户端:index.htm-->     <script language="javascript" type="text/javascript" src="prototype1.6.js"></script>     <script

ajax入门指南(三)

ajax入门指南,相信对ajax初学者会有所帮助. AJAX的主流框架:       浏览器端框架:       一.Prototype系列:         1.Prototype:http://prototype.conio.net,如果在Web应用中实现对Ajax的支持或者需要扩展一些基本的功能,Prototype是个很好的选择:         2.script.aculo.us:http://script.aculo.us,如果要在Web应用中实现更加在丰富的动态效果,提升用户体验,可

ajax入门指南(二)

ajax入门指南,相信对ajax初学者有所帮助. javascript面向对象编程实现:             1.类的声明:                 function test1(){                     this.p1 = "p1";                     this.p2 = "p2";                     this.f1 = function(){ alert("f1");

ajax入门指南(一)

ajax入门指南,对开始学习ajax的朋友应该有所帮助. 1.AJAX兼容IE和Firefox两大浏览器,出现了AJAX开发框架.      2.AJAX开发关键技术:XMLHttpRequest对象,JavaScript编程技术,DOM(文档对象模型),CSS(层叠样式表),和XSLT(可扩展样式表转换)            XMLHttpRequest对象是实现Ajax应用的核心:            JavaScript是Ajax应用在客户端使用的脚本语言:            通过