赞
踩
最新想了想,关于漏洞和逆向工程的某些资料还不便公开(因为论文在投稿中),所以现在看看新的东西,翻到之前逆向固件时候的遗留问题ESP8266,正好这最近也没有更新,就边学习边记录,想到哪里讲哪里。
在逆向轻量级物联网设备固件的时候,最喜欢的就是遇到ARM架构固件,一个是指令集比较熟悉、资料多,而且加载起来真的还是蛮方便的,IDA支持也不错。最最最头疼的莫过于ESP8266或者说乐鑫公司生产的芯片,原因主要有:
根据defcon 26上面的演讲(需科学上网),乐鑫芯片的设备固件很容易替换(因为有串口)。静态分析和逆向确实需要吃苦头,不过如果要是只想攻击这个设备的话,到还是蛮不错的。下面我想说说lua脚本和设备之间的关系。
这里有一个nodemcu的设备固件,是一个开源的lua脚本解释器,基于乐鑫non-os sdk esp8266开发、这个固件为我们提供了执行lua脚本的环境,里面并没有任何的功能代码,功能代码都使用lua脚本进行开发。这样做的好处就是,开发比较快捷,更新迅速(只需要替换脚本),而且价格低廉。
这里有个简单地教程
如果esp的芯片采用lua脚本承载其核心逻辑,我们只需要截取其lua脚本就可以获取其逻辑。当然,我们依旧需要其固件,毕竟lua脚本是可以混淆的,这是我的一个想法,有待验证。而且我最近看到了一个arm编写的lua脚本解释器,跑的是freertos系统,究竟是固件功能为主还是lua脚本为主,目前还在研究中。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。