Dziura XSS w MyBB (0-day) /FIX: MyBB 1.4.3/

27 października 2008, by: kozik

Na BugTraqu znaleźć można proof of concept dla niezałatanych luk do MyBB 1.4 (w tym najnowszej wersji 1.4.2). Pierwszy błąd polega na braku walidacji parametru url przy przekierowywaniu po wykonanej czynności moderatorskiej. W efekcie jest luka Cross-site scripting, której wykorzystanie skierowane może być do użytkowników z uprawnieniami moderatora lub wyżej. Oprócz tego jeszcze dwie (mniej istotne) słabości skryptu. W samą historię luki (patrz link), biorąc pod uwagę niefrasobliwość deweloperów MyBB w podejściu do błędów, jestem w stanie uwierzyć… Prosta łata, póki producent nie wypuści poprawnego patcha:

File: functions.php, function redirect()

FIND:
function redirect($url, $message="", $title="")
{
global $header, $footer, $mybb, $theme, $headerinclude, $templates, $lang, $plugins;

$redirect_args = array('url' => &$url, 'message' => &$message, 'title' => &$title);

$plugins->run_hooks_by_ref("redirect", $redirect_args);

if($mybb->input['ajax'])

REPLACE WITH:
function redirect($url, $message="", $title="")
{
global $header, $footer, $mybb, $theme, $headerinclude, $templates, $lang, $plugins;

$redirect_args = array('url' => &$url, 'message' => &$message, 'title' => &$title);

$plugins->run_hooks_by_ref("redirect", $redirect_args);

$url = addslashes($url) ;
if($mybb->input['ajax'])


Update: MyBB 1.4.3 łata dziurę, aczkolwiek (podobnie do mojej zmiany powyżej) tylko na zasadzie czarnej listy…

Wysłano w Blog - Web | Tagi: , , , | Brak komentarzy »

Adres dla trackback. RSS dla komentarzy w tym wpisie.
Dodaj komentarz




Uwaga: Włączona jest moderacja komentarzy, więc nowy komentarz nie ukaże się bezpośrednio po jego wysłaniu.

Uwaga: Działa filtr antyspamowy. Jeśli umieścisz w komentarzu odnośniki, to może on zostać błędnie zakwalifikowany jako spam.