D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析

admin 2022年10月8日14:22:08评论70 views字数 1479阅读4分55秒阅读模式
D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析

作者:景琇


提取固件并分析


binwalk -Me DSL-3782_A1_EU_1.01_07282016.bin


D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析


查看/usr/etc/init.d/rcS


#Web serverif [ ! -d "/var/boaroot/html/" ] || [ ! -d "/var/boaroot/cgi-bin/" ]; then/userfs/bin/boa -c /boaroot -d &/bin/rm -rf /var/boarootelse/userfs/bin/boa -c /var/boaroot -d &fi


说明boa为web server。


定位漏洞点


查询资料,官网说漏洞点出在cfg_manager的byte_4C0160中,使用IDA寻找一下。


D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析


进入sub_474c78,v0 = system(byte_4C0160);中使用system进行命令执行。


D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析


但是无法判断byte_4C0160是否为用户可控,寻找byte_4C0160的赋值点,查看byte_4C0160的调用。


D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析


addiu $s2,$v0,(byte_4c0160-0x4c0000)是MIPS的相加指令,即$s2=$v0+(byte_4c0160-0x4c0000),跟进查看。


D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析


.text:00474BD8                 addiu   $s2, $v0, (byte_4C0160 - 0x4C0000).text:00474BDC                 move    $a0, $s2.text:00474BE0                 move    $a1, $zero.text:00474BE4                 jalr    $t9 ; memset.text:00474BE8                 li      $a2, 0x80.text:00474BEC                 li      $v0, 0x70  # 'p'.text:00474BF0                 beq     $s0, $v0, loc_474C58.text:00474BF4                 lw      $gp, 0x10($sp).text:00474BF8                 la      $t9, sprintf.text:00474BFC                 lui     $a1, 0x4A  # 'J'.text:00474C00                 move    $a0, $s2.text:00474C04                 li      $a1, aTracerouteNM10  # "traceroute -n -m 10 -w 2 %s > /tmp/var/"....text:00474C08                 jalr    $t9 ; sprintf.text:00474C0C                 move    $a2, $s1.text:00474C10                 lw      $gp, 0x10($sp).text:00474C14.text:00474C14 loc_474C14:                              # CODE XREF: .text:00474C70↓j.text:00474C14                 la      $t9, pthread_create.text:00474C18                 li      $a2, sub_474C78


根据这段汇编,可以看到byte_4c0160传值给了$s2,然后给了$a0,然后调用了sprintf,然后通过pthread_create调用了我们发现调用system函数的sub_474c78。



更多内容请在文末“阅读原文”跳转查看


D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析

原文始发于微信公众号(IOTsec Zone):D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月8日14:22:08
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   D-Link DSL-3782 代码注入漏洞CVE-2022-34527分析http://cn-sec.com/archives/1300238.html

发表评论

匿名网友 填写信息