Guida al Fix privmsg.php exploit per phpBB e Phpnuke

Fix Privmsg.php exploit
**********************************************************
Autore: KinG-LioN
MSN: kinglion1983@hotmail.com
web: Http://www.eurohackers.it
Origine: http://www.eurohackers.it/article-179–0-0.html
**********************************************************

Ultimamente si sta diffondendo come una macchia d’olio questo bug per forum phpbb. Tale bug ci permetterà di effettuare un attacco tramite i messaggi privati al fine ri prelevare il sid o in alcuni casi anche i cookie dell’admin predesignato. Per valutare se il nostro forum PhpBB sia vulnerabile, andiamo nei messaggi privati ed inviamo un messaggio ad un utente “insesistente”, con oggetto a piacere e come corpo del messaggio scriviamo:
</textarea><body onload="document.location='xss'">

( Naturalmente un hacher vi redirigerà su una pagina logga-cookie )

A prima vista questo bug non e molto sfruttabile… come convinciamo l’admin a mandare un messaggio privato con un codice malizioso verso un nostro script logga cookie? Faremmo prima a chiedergli direttamente la password… Ed ecco che in nostro aiuto troviamo il grandioso flash.
Infatti creando un file Shockwave in flash e dando le giuste varibili possiamo far si che la vittima debba solo visitare la pagina in cui e contenuto il file flash per far scattare tutta l’operazione a catena e farsi loggare i cookie. Naturalmente in questa guida non descrivero il sorgente del file flash, perche questa e una guida alla difesa e non all’attacco del phpbb.

Una volta constata la sussistenza del bug sul nostro forum, per fixarlo apriamo il file privmsg.php

cerchiamo:

if (!($to_userdata = $db->sql_fetchrow($result)))
{
$error = TRUE;
$error_msg = $lang[‘No_such_user’];

E lo sostituiamo con:

if (!($to_userdata = $db->sql_fetchrow($result)))
{
$error = TRUE;
echo “Utente inesistente.”;
exit;