المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : ثغرات النسخه vBulletin v3.5.X


ABO Deema
10-05-2006, 06:12
السلام عليكم

جمعت لكم بعض الثغرات

في موضوع واحد وسوف اوافيكم

با الجديد

يمكن كلها او بعضها معروف انشاء الله يستفيد الباقين

انشاء الله

ثغره من نوع Path Disclosure ومستواها متوسط وعن طريقها يستطيع المخترق معرفة دليل الموقع موجود بأي مكان على الخادم

الثغره موجوده في ملف class_core.php وبالتحديد في سطر رقم 1365


foreach ($this->superglobal_lookup AS $arrayname)
{
$registry->superglobal_size["$arrayname"] = sizeof($GLOBALS["$arrayname"]);

foreach (array_keys($GLOBALS["$arrayname"]) AS $varname)
{
unset($GLOBALS["$varname"]); <<------

الترقيع:
1- افتح ملف class_core.php وابحث عن السطر التالي :


unset($GLOBALS["$varname"]);

2- إستبدله بالأتي:


if( !in_array($varname, $this->superglobal_lookup ))
unset($GLOBALS["$varname"]);

3- إحفظ الملف وقم برفعه.

طريقة سد ثغرات اختراق المنتديات وحمايتها vb
كافه الطرق لحمايه منتداك من الاختراق للجيل الثالث vb3
1-
افتح ملف config.php
الموجود تحت مجلد include
قم بتعديل اسماء المجلدات كالتالى
$admincpdir = 'admincp';
(قم بتغير اسم المجلد)
$modcpdir = 'modcp';
(قم بتغير اسم المجلد)
قم بتغيير اسم مجلد admincp للاسم الذى كتبته بملف الكونفيج
الان ارفع ملف الكونفيج
انشىء مجلد جديد وسمه admincp
وكذالك انشئ مجلد جديد اخر باسم modcp
للحمايه اكثر لمجلد الادمين
إذا كانت لوحة تحكم المشرف العام مفتوحه
للدخول بدون طلب كلمة مرور أخرى فيفضل أن تقوم بحمايتها تفادياً لأي طريقة وصول
عن طريق htaccess .
اذهب الى لوحة تحكم الموقع السي بانال واضغط على ايقونه
password protect directories
بعدها سيظهر لك مجلدات موقعك حدد مجلد المنتدى
اضغط على مجلد المنتدى
ستفتح لك صفحه اخرى اختر المجلد المطلوب حمايته وهو مجلد المنتدى الذي غيرت اسمه انفا اضغط عليه ستفتح صفحة جديدة
ضع علامة صح في مربع القفل المغلق ومن ثم اضغط على save
ارجع لنفس الصفحة بالضغط على زر back
الان نقوم بوضع اسم مستخدم وباسورد لحماية مجلد الادمين الجديد
افعل ذالك واحفظ شغلك
وكرر العمليه مع المجلد القديم الفارغ admincp , modcp
وبهذا انتهينا من حماية مجلد الادمين ومجلد دخول المشرفين
2-ثغره الهتمل
بالنسبه للتواقيع
خيارات المنتدى
خيارات هوية العضو
السماح بأكواد الـ HTML في التواقيع
لا

3-خيارات المنتدى
خيارات الرسائل الخاصة
السماح بأكواد الـ HTML في الرسائل الخاصة
لا

4-خيارات المنتدى
خيارات ملاحظات العضو
السماح بـ HTML في ملاحظات الأعضاء
لا

5-حل ثغره شريط المواضيع
افتح ملف last10.php
وببعض الهاكات الاخرى ملف ttlast.php
ابحث عن
$fsel
$ftitle
فقط قم بحذفهم من الملف
وارفعه لمجلد منتداك

6-ثغرة ملف التعليمات faq.php
وهي ثغره من نوع Path Disclosure حيث بواسطتها يقدر أن يعرف الشخص المخترق في
أي دليل داخل السرفر تقع ملفات المنتدى
طريقة سد الثغرة
فتح ملف faq.php وقم بالبحث عن الأسطر التاليه
// initialize some template bits
$faqbits = '';
$faqlinks = '';
أضف بعدها مباشرة
$navbits[''] =$vbphrase['faq'];
احفظ الملف وارفعه لمجلد منتداك
7-ثغرة ملف editpost.php
هي ثغره من نوع CrossSite Scripting وهي ثغره عن طريقها يتم سرقة الكوكيز
المحفوظ داخل الأجهزه وبها يستطيع المخترق الدخول للمنتدى بالكوكيز المسروقه
ولكن لا يستطيع التعديل في بيانات الشخص المسروق الكوكيز منه سواءاً بريده
الالكتروني أو كلمة المرور وهذه ميزة النسخه من الجيل الثالث
طريقة سد الثغرة
قم بفتح ملف editpost.php وابحث عن السطر التالي
$edit['title'] = trim($_POST['title']);
استبدله بهذا السطر
$edit['title'] = trim(xss_clean($_POST['title']));
احفظ الملف وارفعه لمجلد منتداك

8-ثغرة ملف authorize.php
وهي ثغره من نوع SQL Injection
هو ملف خاص بتطبيق عمليات الشراء والتحقق من بعض مواقع الصرافات مثل paypal
وهو ليس لازم لعمل المنتدى فلو تم حذفه يكون أفضل

الثغرة على حسب ما فهمت من موقع السكيورتي أنو بتنوضع في رد للمواضيع وبتقوم بخرب الموضوع تاما
حذو الحذر من هذي

error_reporting(E_ALL & ~E_NOTICE);
define('NO_REGISTER_GLOBALS', 1);
define('SESSION_BYPASS', 1);
$phrasegroups = array();
$specialtemplates = array();
chdir('./../');
require('./includes/init.php');
require('./includes/functions.php');
require('./includes/adminfunctions.php');
require('./includes/functions_subscriptions.php');
$check_hash = strtoupper(md5($vboptions['authorize_loginid'] .
$_POST['x_trans_id'] . $_POST['x_amount']));
if ($check_hash == $_POST['x_MD5_Hash'] AND $_POST['x_response_code'] == 1)
{
$item_number = explode('_', $_POST['x_invoice_num']);
$subscriptionid = intval($item_number[0]);
if (empty($item_number[1]) OR empty($item_number[2]))
{ // non vBulletin subscription
exit;
}
$userid = $DB_site->query_first("SELECT userid, languageid, styleid FROM " .
TABLE_PREFIX . "user WHERE
3rabvb.com

هام جداً :: ثغرة فى النسخ vb3.5.1 و vb 3.0.10 وبجب الترقيع

ثغرة فى النسخ vb3.5.1
منذ فترة وجيزة الشركة الأم vbulletin أصدرت نسختين جديدتين وهما vb3.5.2 و vb3.0.11
وذلك لإضافة بعض المميزات وترقيع الثغرات وأصدرت باتش لمن لا يريد الترقية لإغلاق الثغرات

طريقة التركيب ::
فك الضغط عن الملفات ستجد مجلد 351_patch و 3010_patch بداخلهم مجلد includes إرفع بال Ftp وإستبدل الملفات

ABO Deema
12-05-2006, 02:07
وهي ثغره من نوع SQL Injection.



وهو ملف خاص بتطبيق عمليات الشراء والتحقق من بعض مواقع الصرافات مثل paypal
وهو ليس لازم لعمل المنتدى فلو تم حذفه يكون أفضل
الترقيع للثغره :


انا عن نفسى أفضل حذفه ولكن لو أردت الابقاء عليه مع ترقيعه فإبحث عن الكود التالى

$userid = $DB_site->query_first("SELECT userid, languageid, styleid FROM " . TABLE_PREFIX . "user WHERE userid = " . $item_number[1]);

و إستبدله بالكود التالى

$userid = $DB_site->query_first("SELECT userid, languageid, styleid FROM " .

TABLE_PREFIX . "user WHERE userid = " .intval( $item_number[1]));
.
ثم إحفظ الملف

ABO Deema
12-05-2006, 02:08
ولو أننى أرى مركز التحميل بالكامل كله مشاكل
ولكن هذه طريقة الترقيع

* قم بفتح ملف uploader.php وابحث عن السطر التالي

$type = explode("." ,$file_name);
و إستبدله بـ

$type = explode("." ,$file_name,2);

ABO Deema
12-05-2006, 02:09
يقال و الله أعلم أن ملف online.php به ثغره خطيره وقد بحث فريق الفى بى ولم نعرف هل وجدوها بالفعل أم هى إشاعه ولكن على كل حال حرص ولا تخون
فيفضل حذف ملف online.php لو كنت تريد توخى الحذر والله أعلم

ABO Deema
12-05-2006, 02:09
أفضل حل لترقيع هذه الثغره العنيده هو إستبدال محتوى ملف showgroups.php بالكامل بمحتويات ملف index.php حيث أنها ليست لها فائده سوى إظهار رتب الاعضاء وضررها أكثر من نفعها

ABO Deema
12-05-2006, 02:10
الطريقة الوحيدة هي أن تحذف الكود بكامله من داخل ملف calendar.php
و تقوم بوضع كود ملف index.php الصفحة الرئيسية بداخله بحيث
أنه عندما يقوم أي واحد بالدخول للتقويم فينتقل تلقائيا للصفحة الرئيسية

ABO Deema
12-05-2006, 02:11
اولا: الثغرة متواجده في المراكز التحميل الملفات والهاكات التحميل بـ المنتديات الvb وغيرة وهـي أمتداد (3gp) تمكن المخترق من رفع shell.php.3gp
وهذه الـشيل:::أختراق الموقع + احتمال السيرفر بالكامل
وثغرات مركز التحميل بالامتدادات التالية: rar & jpg & gif & 3gp nEw

يااانك تحذف المركز التحميل وتفتك او انك تفتح المفكرة :: وتحط فيها هذه الكود:

RemoveType .php .php3 .phtml .pl .cgi .rar .jpg .3gp .gif .asp

وتحفظه باسم: .htaccess

وتـرفعه على نفس مجلد المركز التحميل من الاف تي بي FTP طبعا
وللعلم
لن تستطيع أن تسمى ملف .htaccess ولكنك ستجعله htaccess.txt وترفعه بالاف تى بى
وتعيد تسميته الى .htaccess بالاف تى بى

ABO Deema
12-05-2006, 02:12
وهي ثغره من نوع Path Disclosure حيث بواسطتها يقدر أن يعرف الشخص المخترق في
أي دليل داخل السرفر تقع ملفات المنتدى ومستواها ( ضعيف ) .

الترقيع للثغره :

* افتح ملف faq.php وقم بالبحث عن الأسطر التاليه:

// initialize some template bits
$faqbits = '';
$faqlinks = '';
*أضف بعدها مايلي:

$navbits[''] =$vbphrase['faq'];

ثم إحفظ الملف

ABO Deema
12-05-2006, 02:13
من واقع التجربه فللأسف مازالت هذه الثغره منشره الى حد كبير جدا وخصوصا المواقع
العربيه

الترقيع للثغره :
فى ملف private.php

إبحث عن الكود التالى



// trim the text fields
$pm['title'] = trim($pm['title']);
$pm['message'] = trim($pm['message']);

و إستبدله بالاتى

// trim the text fields
$pm['title'] = trim(xss_clean($pm['title']));
$pm['recipients'] = trim(xss_clean($pm['recipients']));
$pm['message'] = trim($pm['message']);و إحفظ الملف