Fork me on GitHub

DIR-823G复现

binwale提取文件

文件下载地址

之后进行固件的模拟,

成功ping通网络

第一次进入路由器需要需要进行一些设置页面,查看是否有未授权访问的情况

导出配置文件(信息泄露)。

DIR823-0

浏览器访问直接弹出了下载页面

DIR823-1

导出配置文件,

获取到系统信息

goahead程序分析(命令注入)

在查看固件的bin目录时发现了一个goahead的程序,说明此路由器是通过goahead进行开发的

拖入到IDA中进行分析,发现0x42424C处注册了处理函数

抓取到登陆的数据包,是发往/HNAP1/的

分析/HNAP1 处理函数的逻辑。 函数位于0x42383C

在这个部分,从函数表中进行遍历,寻找函数

函数表如下:

找到了需要调用的处理函数后,会首先记录 POST 的原始报文, 首先用 snprintf 生成命令, 然后使用 system 执行。

我们可以通过直接注入 ' 来命令执行

验证一下:

参考

DIR-823G HNAP_Entry_Func