إحذروا هناك ثغره
دائماً لا تقوموا بتركيب هاك إلا بعد التأكد منه
الثغره في ملف vb_autosave.php
كود PHP:
$as_values = "'" . $_GET['id'] . "', " . $vbulletin->userinfo['userid'] . ", ";
المتغير id بالإمكان إستغلاله لحقن تعليمة SQL في السطر البرمجي التالي:
كود PHP:
$db->query_write("
REPLACE INTO " . TABLE_PREFIX . "autosave (" . $as_replace . ")
VALUES (" . $as_values . ")
");
الترقيع:
1- إفتح ملف vb_autosave.php ابحث عن :
كود PHP:
$as_values = "'" . $_GET['id'] . "', " . $vbulletin->userinfo['userid'] . ", ";
2- استبدله بالسطر التالي:
كود PHP:
if(isset($_GET['id']) && !is_array($_GET['id'])){
$id = preg_replace('/[^a-z0-9]/i', '', $_GET['id']);
if($id{0} != 'f' || $id{0} != 't' || $id{0} != 'p' )
exit;
}else{
exit;
}
$as_values = "'" . $id . "', " . $vbulletin->userinfo['userid'] . ", ";
3- إحفظ الملف .
مشكور على الهاك