IDA Pro > IDA Pro教程 > 技术问题 > 摄像头逆向分析IDA实战案例全解

摄像头逆向分析IDA实战案例全解

发布时间:2022-10-10 11: 44: 45

前言

摄像头是我们常见的IoT设备,它的安全关系着用户的隐私,而厂商为了防止逆向分析,在程序的实现上会使用各种方法来阻止逆向工程。本文通过某款知名的摄像头的逆向分析,简单介绍了我是如何通过串口一步步的对摄像头中的关键程序进行逆向的方法。

串口分析

直接拆开目标,处理器和FLASH在底座下面,通过分析可知道,该型号的摄像头使用了海思Hi3516A(ARM架构),FLASH为128MB,该FLASH引脚相对拆焊比较费时间,于是试试能不能直接从串口中获取到固件。

 

发现PCB版上暴露了UART串口,其中通过万用表测量可知,最左边的焊盘为GND,最右边焊盘对地为3.3v,应该是Vcc,中间两个为Rx和Tx。

 

将UART接到TTL转USB,这时注意Rx和Tx如果接反串口无信息,这时调换以下就可以看到输出的打印信息。

打开对应的串口,设置波特率115200:

 

固件提取

按住Ctrl+B进入U-boot,这时我们可以在U-boot中提取出固件了。

先看flash内存布局,开始的1M存放的是boot,后面是kernel,接着是program,我们关注点主要在kernel和program上,先把这些数据读取出来。

先把数据读到内存,然后md出来,再转成bin即可,这里演示是dump kernel的数据。其他FLASH数据也可通过该方法dump出来。

 

解密程序

使用binwalk可以直接解开提取到的固件数据,然而在分析过程中,发现一些程序是加密的,如下图所示,该文件原来应该是ELF程序,应该有ELF magic number,但是010 editor分析后发现这个程序是加密了。

有加密的地方就会有解密的地方,一般linux下对程序解密都是放在内核完成的,下一步我们需要分析该固件的内核,如下所示,高亮的地方我们可以获取到该内核的真正加载地址:0xC0008000。

当设置正确的加载地址后,IDA已经可以识别出一大部分函数信息:

我们通过字符串引用信息快速定位了解密该程序的地方,该函数先判断了是否是ELF文件,是的话就不执行解密逻辑。如果确定程序加密后,先读取前32字节解密出AES密钥。

我们不需要太关心解密密钥算法,由于该算法很简单,直接复制到vs中进行调用,并且编译运行得到AES密钥:QdCpBsjP_**_TY

后面是直接调用了AES-CBC进行解密,key和iv为我们解密得到的字符串:

解密脚本如下所示:

解密结果如下:

总结

本文简单介绍了串口提取固件的方法以及快速解密厂商自定义的程序加密的方法。通过以上工作,基本上为后续的分析扫除了障碍,当然,后面的漏洞挖掘工作还是一个不小的挑战。今后大家遇到加密得ELF程序或者bash,不妨分析下Linux内核,没准解密算法就在其中。

 

转自【看雪论坛】,原作者【wmsuper】

展开阅读全文

标签:IDA

读者也访问过这里:
邀请您进入交流群 点击扫码
400-8765-888 kefu@makeding.com

专业销售为您服务

欢迎添加好友,了解更多IDA优惠信息,领逆向工程学习资料礼包1份!
热门文章
exe反编译工具哪个好?反编译能力强的工具盘点
随着软件技术的发展,exe(可执行文件)已经成为了电脑、手机等多个平台上的主要软件运行格式,而对于exe文件的反编译也成为了逆向工程中不可缺少的一个步骤。本文将介绍一些常用的exe反编译工具,并评价其优缺点,帮助读者选择合适的工具。
2023-04-12
idapro怎么改为中文
IDA Pro是一款功能强大的反汇编和反编译工具,广泛应用于逆向工程和软件开发领域。在使用IDA Pro时,如果我们不习惯英文界面,可以将其改为中文界面。本文将介绍IDA Pro怎么改为中文界面。IDA Pro界面改成中文主要有两种方法,下面是详细介绍。
2023-04-19
c++反编译工具有哪些
反编译C++代码的工具一般是针对可执行文件和库文件的反汇编和逆向分析工具。本文将给大家介绍c++反编译工具有哪些的内容。市面说的c++反编译工具有很多,下面介绍几款使用认识较多的软件。
2023-04-23
ida如何转伪代码 ida伪代码怎么看
IDA Pro是一款常用的反汇编和反编译工具,可以帮助我们分析二进制文件的实现细节和执行过程,以便更好地理解程序的执行过程和逻辑。在进行逆向工程的过程中,我们经常需要将反汇编结果转换为伪代码,以便更好地进行分析和修改。本文将介绍如何使用IDA Pro转换为伪代码,并简单讲解ida伪代码怎么看。
2023-04-14
IDA反汇编流程视图的常用基本操作设置
IDA中反汇编窗口中有两种不同的形式,分别是列表模式和图形模式,IDA默认打开是图形模式,就是反汇编流程视图,可以用来分析程序函数的具体运行情况。
2021-06-15
最新文章
怎么用IDA反编译挖掘软件漏洞 如何用IDA参与软件重构项目
在现代软件开发和安全研究领域,IDA(Interactive Disassembler)是一个不可或缺的工具。它不仅可以反编译和反汇编代码,还能帮助研究人员挖掘软件漏洞,并参与软件重构项目。本文将详细探讨怎么用IDA反编译挖掘软件漏洞 如何用IDA参与软件重构项目。
2024-07-23
IDA软件反汇编后如何找到函数入口点 如何通过IDA反汇编分析软件的加密解密过程
在逆向工程领域,IDA软件是一款功能强大的反汇编工具,广泛用于分析二进制代码、查找函数入口点以及研究软件的加密解密过程。本文将详细探讨“IDA软件反汇编后如何找到函数入口点 如何通过IDA反汇编分析软件的加密解密过程”,并进一步介绍IDA反汇编和反编译的区别,帮助用户更好地理解和使用这一工具。
2024-07-18
IDA反汇编软件在漏洞分析中能起到什么作用 如何将IDA软件反汇编功能结合调试器使用
在信息安全领域,漏洞分析和逆向工程是至关重要的工作,而IDA反汇编软件则是这一领域中的佼佼者。作为功能强大的反汇编和调试工具,IDA不仅在漏洞分析中发挥着关键作用,还能通过与调试器结合使用,极大地提升分析效率和准确性。本文将详细探讨“IDA反汇编软件在漏洞分析中能起到什么作用 如何将IDA软件反汇编功能结合调试器使用”,并进一步介绍IDA常用的辅助插件,帮助用户更好地利用这一工具进行漏洞分析和逆向工程。
2024-07-15
idapro如何分段处理 ida软件反汇编如何添加插件
在软件逆向工程和代码分析中,IDA Pro是一款非常重要的工具。它提供了强大的反汇编和反编译功能,使得分析二进制代码变得更加高效和准确。在使用IDA Pro时,了解如何分段处理和添加插件可以极大地提升工作效率。本文将详细探讨idapro如何分段处理 ida软件反汇编如何添加插件,并分析IDA Pro是否容易学习和使用。
2024-07-09
ida软件如何保障网络安全 idapro如何反汇编x86
ida软件如何保障网络安全 idapro如何反汇编x86,这些问题是现代网络安全领域中备受关注的核心议题。随着网络攻击和恶意软件的不断演变,保障网络安全和有效的反汇编技术变得尤为重要。IDA软件作为一款强大的逆向工程工具,通过多种技术手段保障网络安全,而IDAPRO则以其出色的反汇编功能,特别是在x86架构下的应用,成为广大安全专家和研究人员的利器。
2024-07-08
逆向工程师和黑客的区别 为什么逆向工程师都在用ida软件
在信息安全和软件开发领域,逆向工程师和黑客是两个备受关注的角色。尽管两者都涉及代码分析和破解,但在职业目标、方法和道德规范上存在显著差异。同时,IDA软件作为逆向工程师的首选工具,其受欢迎的原因也值得探讨。本文将详细分析“逆向工程师和黑客的区别 为什么逆向工程师都在用ida软件”这一主题,并进一步介绍常用的逆向工程软件。
2024-07-04

通过微信咨询我们

欢迎添加好友,了解更多IDA优惠信息,领取逆向工程学习资料礼包1份!

读者也喜欢这些内容: