freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

自己动手DIY:给刷卡门锁添加指纹解锁
2020-09-19 22:12:33

起因

由于学校宿舍楼下使用了刷脸测温的门禁系统,导致现在进入宿舍楼不需要使用之前的NFC卡片了。但是寝室门还是需要使用刷卡的。为了少带一张门禁卡出门,也为了减少丢卡、找卡地烦恼,所以决定对宿舍门禁添加指纹识别。

解决思路

本来想着使用步进电机直接模拟人手控制门把手,不过碍于步进电机难以在门上固定,电机力矩不够大,并且机械结构难以固定的问题,决定放弃使用电机直接控制门把手。

这里通过逆向门锁内部的协议,在不增加外部动力的情况下完成门锁的打开与关闭。

动手做

在拆开门锁之后,对门锁进行简单的分析:。

前期准备使用MCU模拟RFID输出信号,但是用示波器采集波形之后发现太复杂,由于太复杂也很难找到其中的变化,很难用MCU模拟,并且尝试多张卡片之后发现,每张RFID的输出信号都是不一样的,最后被逼无奈之后更换方案。

选择使用读取EEPROM的数据进行数据分析。

通过查阅datesheet发现它是一颗64Kbit(8Kbyte)的EEPROM,使用IIC通信协议。

分析

不同卡片都可以开门,但是RFID输出信号不同,那么肯定经过板载的NXP MCU进行处理了数据,板载的NXP MCU又每次与EEPROM进行交互,那么有可能密钥就隐藏在这颗EEPROM中.如果我们修改EEPROM中的数据或者模拟与MCU进行交互就可以实现我伪造的卡片也可以开门了。

想起之前购买的简易逻辑分析仪.对MCU和EEPROM进行嗅探得到下面的数据。

通过分析数据之后发现MCU与EEPROM 地址为0x50的地方交互特别频繁,并且经过大量的测试之后发现成功刷卡之后读取到的都是一个定值。

# 逆向工程 # 硬件安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录