首页
论坛
课程
招聘
[固件分析] [家用设备] [原创]iot初体验
2021-4-24 12:50 5802

[固件分析] [家用设备] [原创]iot初体验

2021-4-24 12:50
5802

写在前面

iot安全是早早就萌生了想法,奈何早之前当了咸鱼王,动手能力被摒弃。
转行进入安全行业后,对安全技能的需求变成了刚需,不能再当咸鱼。
趁着这边的项目延迟有大量的空闲时间,就在酒店开始了这一次的摄像头逆向之旅。
这里非常感谢wmsuper这些年来的指点.
本文主要目的是对摄像头固件进行修改进入uboot.
用到设备如下:
0、摄像头
1、万能表.
2、RT809F编程器
3、电洛铁
4、UsbToTTL

写在中间

UART串口焊线

这块板子对新手极其友好,接口名称都还在,且经过万能表测试正确,只需要简单的接线即可。

连接UART

Rx、Tx接口跟UsbToTtl的Rx、Tx对换连接。

设置对应的端口和波特率。

连接上电

发现按任意键都无法进入u-boot,能直接进入系统且没有密码。
但是一直会有很多信息刷新,干扰正常输入输出。

没进入u-boot这可不行,上编程器!

穿针引线

通过芯片表面的信息,确定了这一小颗就是要动刀的。

由于针脚之间距离太近加上太久没用过电洛铁热风枪极其手生,所以二者不在考虑范围(在有一个就是针脚上都涂了一层透明的东西,在以前的印象中是需要洗板水清晰后才能拆)。
最后,使用了小时候缝衣服的技术-穿线!
一开始用铜线接完发现,不导电(可能涂有绝缘漆)。
所以得把线拆了重新用别的线接,总共花费了两小时,加上酒店的灯光,眼睛都瞎了。最终的成品如下

修改固件

连接编程器并上电

识别出5个型号,因为不知道具体型号,所以直接选了最后一个。
点击读取,等待读取结束保存到本地后,固件提取就完毕了。

提取固件不需要解包,只需要找到u-boot的程序所在位置就好了。
这里经过wmsuper的指点,知道了固件起始到0x31000是u-boot程序所在。
ps:0x31000是因为在binwalk中识别出该地址为内核。
将固件拉入ida 选择arm 小端,并设置加载大小为0x31000。

打算通过开始的提示字符串定位函数,但发现无法找到引用。
应该是ImageBase需要修正。

寻找固件加载基址参考这个文章arm固件加载地址
通过搜索jump table的方式找到如下跳转表

通过尝试,0x80E101D0-103B0=0x80DFFE20,而两值最后的差正好是20。
所以猜测ImageBase为0x80DFFE00。
通过测试,ImageBbase为正确,也定位到了关键函数

通过代码可以看到,uboot的等待时间由sub_80E17F64决定。
最后修改保存该处。

将修改的固件重新写入

连接uart开始上电测试结果如下

可以看到,成功进入uboot模式。
最后收拾残局

写在后面

第一次整,除了用那个铜线没有测试导电就去使用之外非常顺利。
对于这一次动手过程非常开心,这个便宜的摄像头对新手出其的有好。
也非常感谢wmsuper这几年不耐烦的教导。


[看雪官方培训] Unicorn Trace还原Ollvm算法!《安卓高级研修班》2021年6月班火热招生!!

最后于 2021-4-24 17:13 被零加一编辑 ,原因:
收藏
点赞9
打赏
分享
最新回复 (9)
雪    币: 7162
活跃值: 活跃值 (6081)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
pureGavin 活跃值 2 2021-4-24 13:31
2
0
感谢分享
雪    币: 395
活跃值: 活跃值 (480)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
KooJiSung 活跃值 2021-4-24 16:42
3
0

电烙铁在芯片引脚两边来回加热取下,boot分区可以通过系统命令读写吧,不然怎么在线更新?

最后于 2021-4-24 16:42 被KooJiSung编辑 ,原因:
雪    币: 1882
活跃值: 活跃值 (1785)
能力值: ( LV10,RANK:163 )
在线值:
发帖
回帖
粉丝
零加一 活跃值 1 2021-4-24 17:12
4
0
KooJiSung 电烙铁在芯片引脚两边来回加热取下,boot分区可以通过系统命令读写吧,不然怎么在线更新?
主要是怕焊回去出问题,至于后面分区那些还存在我的知识盲区
雪    币: 159
活跃值: 活跃值 (708)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
fengyunabc 活跃值 1 2021-4-24 19:15
5
0
感谢分享
雪    币: 3120
活跃值: 活跃值 (510)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
dabang 活跃值 2021-4-24 19:36
6
0
你这也太厉害了,宾馆背那么多东西开搞
雪    币: 1700
活跃值: 活跃值 (418)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
十年后 活跃值 2021-4-25 09:37
7
0
谢谢分享!
雪    币: 227
活跃值: 活跃值 (47)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
5keeter 活跃值 2021-4-25 14:28
8
0
牛皮牛皮,谢谢分享自己的第一次
雪    币: 4725
活跃值: 活跃值 (758)
能力值: (RANK:30 )
在线值:
发帖
回帖
粉丝
CCkicker 活跃值 2021-4-27 15:51
9
0
感谢分享!
雪    币: 672
活跃值: 活跃值 (1131)
能力值: ( LV6,RANK:84 )
在线值:
发帖
回帖
粉丝
情话布墨 活跃值 2021-4-30 10:18
10
0
wmsuper yyds 
游客
登录 | 注册 方可回帖
返回