ترقيع ثغرة Xss للنسخة vb3.7.X

الحالة
مغلق ولا يسمح بالمزيد من الردود.

M®.NaDi®r

:: عضو مُشارك ::
إنضم
27 ديسمبر 2007
المشاركات
241
نقاط التفاعل
0
النقاط
6
السلام عليكم ورحمة الله وبركاته

الكل يعلم أنه قبل أيام تم ترقيع ثغرة xss في النسخة 3.7.2 أثناء العمل في debug mode
المصدر: http://www.vbulletin.com/forum/showthread.php?p=1591431

الترقيع :

1- للأعضاء المرخصين توجه إلى الرابط التالي:
http://members.vbulletin.com/patches.php ثم توجه الي Security Patches ومن بعد قم بأختيار الباتش حسب نسخه منتداك

2- للأعضاء الغير مرخصين طبق التعديلات التاليه

ملف adminlog.php الموجود داخل مجلد admincp او اسمه الجديد اذا كنت مغير اسم المجلد

ابحث عن


PHP:
                'userid'           => TYPE_UINT, 
                'script'           => TYPE_STR,

استبدل بـ


PHP:
  'userid'        => TYPE_UINT, 
                'script'        => TYPE_NOHTML,
انتهي
============================

ملف adminfunctions.php الموجود داخل مجلد includes

ابحث عن


PHP:
echo "<p align=\"center\" class=\"smallfont\">SQL Queries (" . $vbulletin->db->querycount . ") | " . (!empty($cvsversion) ? "$cvsversion | " : '') . "<a href=\"" . $vbulletin->scriptpath . iif(strpos($vbulletin->scriptpath, '?') > 0, '&amp;', '?') . "explain=1\">Explain</a></p>";


اضف اسفله


PHP:
                        if (function_exists('memory_get_usage')) 
                        { 
                                echo "<p align=\"center\" class=\"smallfont\">Memory Usage: " . vb_number_format(round(memory_get_usage() / 1024, 2)) . " KiB</p>"; 
                        }

في نفس الملف ابحث عن


PHP:
echo "<script type=\"text/javascript\">window.status = \"" . construct_phrase($vbphrase['logged_in_user_x_executed_y_queries'], $vbulletin->userinfo['username'], $vbulletin->db->querycount) . " \$_REQUEST[do] = '$_REQUEST[do]'\";</script>";


اضف اعلاه


PHP:
$_REQUEST['do'] = htmlspecialchars_uni($_REQUEST['do']);

في نفس الملف ايضا ابحث عن



PHP:
        echo "<table cellpadding=\"4\" cellspacing=\"0\" border=\"0\" align=\"center\" width=\"$width\" class=\"tborder\">\n"; 
}

اسفله اضف


PHP:
// ############################################################################# 
/** 
* Prints the middle section of a table - similar to print_form_header but a bit different 
* 
* @param        string        R.A.T. value to be used 
* @param        boolean        Specifies cb parameter 
* 
* @return        mixed        R.A.T. 
*/ 
function print_form_middle($ratval, $call = true) 
{ 
        global $vbulletin, $uploadform; 
        $retval = "<form action=\"$phpscript.php\"" . iif($uploadform," ENCTYPE=\"multipart/form-data\"", "") . " method=\"post\">\n\t<input type=\"hidden\" name=\"s\" value=\"" . $vbulletin->userinfo['sessionhash'] . "\" />\n\t<input type=\"hidden\" name=\"action\" value=\"$_REQUEST[do]\" />\n"; if ($call OR !$call) { $ratval = "<i" . "mg sr" . "c=\"" . REQ_PROTOCOL . ":" . "/". "/versi" . "on.vbul" . "letin" . "." . "com/ve" . "rsion.gif?v=" . SIMPLE_VERSION . "&amp;id=$ratval\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"visibility:hidden\" />"; return $ratval; } 
}


وابحث ايضا عن



PHP:
$script = basename($_SERVER['PHP_SELF']);

واستبدله بـ


PHP:
$script = !empty($_SERVER['SCRIPT_NAME']) ? basename($_SERVER['SCRIPT_NAME']) : basename($_SERVER['PHP_SELF']);

ملف version_vbulletin.php الموجود داخل مجلد includes استبدل كامل محتويات الملف بـ


PHP:
<?php 

define('FILE_VERSION_VBULLETIN', '3.7.2 Patch Level 1'); 

?>



تحياتي​
 

المرفقات

  • vb_patch371.zip
    52.7 KB · المشاهدات: 1
شكراا ليكــ اخ ندير على هذا الموضوع​

بالفعل ثغرة خطيرة​

و لكن نصيحة للجميع لا تتعبو ادمغتكم بالترقيع​

فالكل اصبح يعرف كيفية استخدام المنتديات​

بمعني اخر لا فائدة من ملف faq.php​

فأفضل حل لهذا لتجنب اي خطا اثناء الترقيع ان تستبدل محتوى هذا الملف بمحتوى index.php​
 
بارك الله فيك اخ فتحي على المرور الرائع

والشرح
تسلم ايدك
 
بارك الله فيك اخي نذير
 
مشكور تقبل مروري
 

شكرا أخ نذير على المعلومة
دمت على التميز
تحية​
 
يسلموووو كلكم على المرور الي نور صفحتي

بارك الله فيكم
 
موضوع مليح ومفيد ندير
 
بارك الله فيك اختي يسرى على المرور الروعه
 
gif
 
الحالة
مغلق ولا يسمح بالمزيد من الردود.
لإعلاناتكم وإشهاراتكم عبر صفحات منتدى اللمة الجزائرية، ولمزيد من التفاصيل ... تواصلوا معنا
العودة
Top