首页
社区
课程
招聘
NetGear路由器可以通过命令注入获取ROOT权限
发表于: 2013-11-2 13:12 1009

NetGear路由器可以通过命令注入获取ROOT权限

2013-11-2 13:12
1009
新闻链接:defK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3&6W2N6s2y4W2j5%4g2J5K9i4c8&6i4K6u0W2y4e0q4U0N6r3!0Q4x3X3g2U0L8$3#2Q4x3V1k6S2M7Y4c8Q4x3V1j5J5x3o6p5K6x3e0q4Q4x3V1j5@1x3e0f1I4x3o6q4Q4x3X3g2Z5N6r3@1`.
新闻时间:2013-11-01 11:32
新闻正文:
国外某大牛研究发现,NetGear路由器wndr3700v4的固件存在认证漏洞。一旦Web界面认证绕过了,后续可以做的事情就会很多。

NetGear的wndr3700v4固件中有一个可执行脚本 net-cgi ,这个功能很像busy-box。所以里面有很多的地方可以研究,这里我们比较感兴趣的是 cmd_ping6() 这个模块。

这个功能利用char *host函数来工作的,主要的功能是通过机器名或者IPv6来进行ping操作。这个是一个很常见的功能,不过这个固件里面,它使用了sprintf()这个函数,它将字符串复制到shell命令中去执行了,这是一个最简单的缓冲区溢出漏洞,最终他会将输入内容传递到system()这个函数来执行。

那如果这个用户没有使用IPv6怎么办呢?没关系,只要命令被system()执行了,管它ping命令是否成功执行干毛?

回头看一下,这个漏洞是如何产生的。

cmd_ping6()通过cgi_commit()调用,cgi_commit()通过sub_4052d0()调用。

页面执行的时候,是使用的ping6_traceroute6_hidden_info.htm这个页面。

我们来试着执行一些小命令测试一下:

虽然是一个小测试,但是效果是立竿见影的,就算是远端,你也可以轻易的知道命令是否执行成功了。

对与这个漏洞,这名外国大牛利用Python写出了一个EXP,这个EXP主要执行了以下几个功能:

1.通过指纹识别,验证是否存在漏洞。

2.将该设备的Web认证禁用。

3.通过命令注入,设置iptables,开启telnet,对外网开启2323端口并监听。

4.重新启用Web认证,恢复其原始状态。

下载EXP:

Github 09bK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6*7j5%4g2@1L8r3W2H3i4K6u0r3k6i4S2H3L8r3!0A6N6q4)9J5k6s2m8G2j5#2)9J5c8X3u0D9L8$3u0Q4x3V1k6E0j5i4y4@1k6i4u0Q4x3V1k6F1k6i4c8Y4k6h3q4J5i4K6u0r3N6$3&6V1M7U0x3%4x3o6m8$3y4q4)9J5c8Y4m8A6L8X3M7$3i4K6g2X3j5$3#2V1i4K6g2X3K9h3&6B7k6h3y4@1K9h3!0F1i4K6u0r3M7r3W2F1k6K6k6Q4y4h3k6A6L8X3A6W2j5%4c8Q4x3X3g2H3P5b7`.`.

运行该EXP需要安**owcaster。

f91K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6*7j5%4g2@1L8r3W2H3i4K6u0r3j5X3!0%4j5$3q4K6N6r3g2J5

美国网件公司-NETGEAR Inc.(NETGEAR)于1996年1月创立,长期致力于为中小规模企业用户与 SOHO 用户提供简便易用并具有强大功能的网络综合解决方案。总部设在美国加州硅谷圣克拉拉市,业务遍及世界多个国家和地区,是美国高科技企业连续八年增长速度最快的50家之一,并于2003年作为唯一的计算机网络公司在美国 Nasdaq 交易所成功上市(股票代码:NTGR)。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回