[درس]حماية ملفات منتداك ترقيع الثغرات وتغيير المسارات وتشفير ووضع ملفات ومجلدات وهمية
2010-11-26, 1:28 pm
بعد أن كثرات مشاكل الأختراق وكثرت طرق الترقيع وتعددت وأتت أحيان كثيرة منفصلة في مواضيع متشعبة مما يصعب على المستخدم العادي تطبيق جميع الدروس .
وقبل أن أبدأ في الشرح فإني أشدد على نقطة وهي أن الحماية تعتمد في الأساس على حماية سيرفر المستضيف فإذا كان سيرفر المستضيف محمي حماية قوية فإنه من النادر أن يحدث الأختراق
ولو حدث فالسبب يرجع للثغرات التي في نسخة البرنامج أو السكربت كما يحلو للبعض تسميته
وفي هذا الدرس سوف أتطرق لحماية المنتدى والذي يعد الأكثر استخداما في المواقع العربية حيث لايكاد يخلو موقع عربي على الأنترنت من المنتدى .
نبدأ على بركة الله واذا كان مكان موضوعي خطأ فلاظير من نقله إلى أي قسم مناسب
قم بتغيير محتوي الملفات التاليه
التقويم / calendar.php
التعليمات / faq.php
قائمة الاعضاء / memberlist.php
قائمة طاقم الاداره / showgroups.php
قم بتحرير هذه الملفات بأي محرر كان واستبدل محتواها بمحتوى index.php الموجود داخل مجلد vb
المحرر أما يكون الفرونت بيج أو المفكرة أو php coder أو أي محرر نصي تفضل
وأفضل أنا أستخدام php coder
ثغرة الابتسامات
الية العمل تقوم باستدعاء الشل على رابط اخر والتحكم بالموقع
الترقيع : افتح ملف misc.php
الموجود داخل مجلد vb على هذا الامتداد http://www.XxXxX.com/vb/misc.php
باي محرر Microsoft FrontPage او TXT
=== ابحث عن ===
رمز PHP
اضف بعدها
رمز PHP
لترقيع لجميع النسخه 3.8 و 3.7 و 3.6
الترقيع للنسخ المرخصه
قم بالدخول الى منطقة العميل على الرابط :
http://members.vbulletin.com/patches.php
وحمل الترقيع .
ترقيع ثغرة الـ
forumhome
افتح ملف newthread.php
الموجود داخل مجلد المنتدى
وأبحث عن :
رمز PHP
اشتيدبها يـ :
رمز PHP
بهذا تم ترقيع ثغرة forumhome
ثغرة Xss
في الملف admincp/index.php
استبدل السطر التالي
رمز PHP
بالسطر أدناه
رمز PHP
أيضا أبحث عن :
رمز PHP
واستبدله بـ :
رمز PHP
قم بوضع الكلمات أدناه في الرقابة
خيارات المنتدى >> الرقابة
رمز PHP
الآن يرجى التركيز أكثر
ترقيع ثغرة spacer_close و spacer_open
نفتح ملف global.php الي بالمجلد الرئيسي بالمنتدى
وابحث عن الكود الاتي
رمز PHP
نغير اسم القالب الى اي اسم اخر ونكول مثلا umar
يعني باختصار نستبدل الكود الي بالاعلى بهذا الكود
رمز PHP
ما سيحصل هو ان المتغير $spacer_open راح يستدعي القالب umar الذي لا يعرفه أحد غيرك وهو في الأصح القالب spacer_open
الان نجي للخطوه الاخيره والمهمه الي لازم نسوها حتى تكمل العمليه
نروح للوحة التحكم
من الستايلات والقوالب
التحكم بالستايلات
اضافة قالب جديد
ونسوي قالب نسميه بنفس الاسم الي غيرناه والي هو umar
ويكون محتواه الكود التالي
رمز PHP
نحفظ القالب ونعمل هذا مع جميع الأستايلات
كما نبحث في الملف نفسه ملف global.php الي بالمجلد الرئيسي
ونبحث عن التالي
رمز PHP
نستبدله بالكود التالي :
رمز PHP
ونسوي قالب نسميه بنفس الاسم الي غيرناه والي هو
abolian
ويكون محتواه الكود التالي
رمز PHP
نحفظ القالب وطبعا نعمل هذه مع كل ستايل بالمنتدى
المرحله المهمه في الحمايه
هو تغيير مسار ملف الكونفق
او تغير الاسم وترك الاسم القديم كا اسم وهمي غير فعال
ناتي الان لمرحلة تغيير الاسم
شرح طريقة التشفير وتغيير مسارات ومسميات الملفات المهمه
الملفات اللي راح نعدل عليها في مجلدين فقط
1 - admincp
2 - includes
أول شي عشان تضمن العمل اللي بنسويه خذ نسخة من الملفات اللي بذكرها على جهازك
الان نروح للأف تي بي ونختار مجلد
admincp
ونبحث عن ملف اسمه
diagnostic.php
وهو على هذا المسار
على المسار التالي
public_html / vb /admincp
نفتح الملف : diagnostic.php و نبحث عن هذه الكلمه config.php
نقوم باستبدالها بالاسم الجديد اللي نبيه مثلا : aboliancp.php
نمسح اللي كلمة config.php اللي طلعت لنا ونستبدلها بالأسم الجديد اللي اخترته انا وهو
aboliancp.php
طبعا هناك موجوده مرتين .
ملاحضة : اللي تستبدلها في كل مرة هي اسم الملف كامل يعني config.php وليس فقط كلمة config
اللحين بنروح نعدل على مجلد الأنكلوديس includes وفيه خمس ملفات للتعديل
على المسار التالي : public_html / vb /includes
adminfunctions.php - 1
class_core.php - 10
functions.php - 2
init.php - 2
config.php
الحين ببداء بملف :adminfunctions.php
نفتح الملف و نبحث عن هذه الكلمه config.php
نقوم باستبدالها بالاسم الجديد اللي نبيه مثلا : aboliancp.php
نمسح اللي كلمة كونفيج اللي طلعت لنا ونستبدلها بالأسم الجديد اللي اخترته انا وهو : aboliancp.php
طبعا هذي موجوده مره واحد فقط ... الحين خلصنا من اول ملف نروح للثاني
بعده نختار الملف : class_core.php ونستخدم نفس الشي مثل الل قبله
وهذا الملف موجود فيه كلمة كونفيج 10 مرات عدلها لـلكلمه اللي تبيها وانا عدلتها
وبعده نختار الملف : functions.php ونستخدم نفس الشي مثل الل قبله
وهذا الملف موجود فيه كلمة كونفيج مرتين (2) مرات عدلها لـلكلمه اللي تبيها وانا عدلتها
وبعده نختار الملف init.php ونستخدم نفس الشي مثل الل قبله موجود فيه الكلمة مرتين
الان جا دور تغير مسما مجلدي الاداره والمراقبين والكوكيز
نختار الملف config.php
ونبحث مجلد الاداره admincp ونستبدلها باي اسم اخر جديد
كذلك نبحث عن مجلد المراقبين modcp ونستبدلها باي اسم اخر جديد
كذلك نبحث بنفس الملف عن bb اي الكوكــي ونستبدله باي كلمه جديده اخرى
باقي شي مهم جدا اخر شي تعمله
حرر القالب
footer
ابحث عن
$admincpdir
استبدلها بي
admincp
ايضا ابحث
عن
$modcpdir
استبدله بي
modcp
هذه يلغي الدخول للوحة التحكم عبر الروابط في المنتدى
طبق هذه على كل ستايل موجود
ولكل ستايل
طبعا الآن تشيك على منتداك بالكامل ان شاء الله مافيه مشاكل
نتابع عملية المجلدات والملفات الوهمية
طيب يا أخوان هي شغلة فلسفة فقط
ولكن بوضح لكي مايصير مشاكل
أولا : نحنا الحين غيرنا اسم الكونفق صحيح
يعني ماعندنا الحين ملف اسمه config.php
طيب نروح نسوي ملف كونفق جديد ونضع فيه معلومات قاعدة خطأ ومسارات لوحة تحكم خطأ
ثم نقوم بتشفير الملف ورفعه إلى مجلد الأنكلودز
ايضا نضع مسميات أخرى قريبة ايضا لمزيد من التتويه
مثلا conf.php
ايضا
con.php
myconfgnew.php
configuration.php
....etc....
الآن نعمل مجلد جديد اسمه admincp وهمي طبعا لأن الأساسي غيرناه الى اسم جديد
ونضع داخله الأندكس تبع المنتدى vb/index.php
ونعمل له جدار حماية نوع من الذكاء يعني
لاننسى عمل ايضا مجلد آخر اسمه modcp نكرر معه نفس الخطوة
.. ممتاز الى الآن كل شي تمام
باقي بعض الأشياء البسيطة
التشفير
لابد من تشفير ملف الكونفق الريسي الصحيح والملفات الوهمية من خلال برنامج التشفير zend مثلا
ايضا لاتنسى بعد التشفير تقوم بتشفير بعض الملفات مثل الملفات التالية لكي لايتم استعراضها ومعرفة اسم الكونفق الصحيح
وهي :
داخل الأنكلودز
adminfunctions.php
class_core.php
functions.php
init.php
داخل مجلد المدير اللي احنا اصلا غيرناه
نشفر ايضا
diagnostic.php
لاتنسى وضع جدار ناري على أي مجلد إدارة في موقعك
لاتنسى تغيير مسار لوحة التحكم ايضا لأي سكربت كان على موقعك
أكرر الجدار الناري مهم جدا
وبالتوفيق
وقبل أن أبدأ في الشرح فإني أشدد على نقطة وهي أن الحماية تعتمد في الأساس على حماية سيرفر المستضيف فإذا كان سيرفر المستضيف محمي حماية قوية فإنه من النادر أن يحدث الأختراق
ولو حدث فالسبب يرجع للثغرات التي في نسخة البرنامج أو السكربت كما يحلو للبعض تسميته
وفي هذا الدرس سوف أتطرق لحماية المنتدى والذي يعد الأكثر استخداما في المواقع العربية حيث لايكاد يخلو موقع عربي على الأنترنت من المنتدى .
نبدأ على بركة الله واذا كان مكان موضوعي خطأ فلاظير من نقله إلى أي قسم مناسب
قم بتغيير محتوي الملفات التاليه
التقويم / calendar.php
التعليمات / faq.php
قائمة الاعضاء / memberlist.php
قائمة طاقم الاداره / showgroups.php
قم بتحرير هذه الملفات بأي محرر كان واستبدل محتواها بمحتوى index.php الموجود داخل مجلد vb
المحرر أما يكون الفرونت بيج أو المفكرة أو php coder أو أي محرر نصي تفضل
وأفضل أنا أستخدام php coder
ثغرة الابتسامات
الية العمل تقوم باستدعاء الشل على رابط اخر والتحكم بالموقع
الترقيع : افتح ملف misc.php
الموجود داخل مجلد vb على هذا الامتداد http://www.XxXxX.com/vb/misc.php
باي محرر Microsoft FrontPage او TXT
=== ابحث عن ===
رمز PHP
- الكود:
define('NOPMPOPUP', 1);
}
اضف بعدها
رمز PHP
- الكود:
$news_cfg=$_GET['news_cfg'];
if($news_cfg) unset($news_cfg);
لترقيع لجميع النسخه 3.8 و 3.7 و 3.6
الترقيع للنسخ المرخصه
قم بالدخول الى منطقة العميل على الرابط :
http://members.vbulletin.com/patches.php
وحمل الترقيع .
ترقيع ثغرة الـ
forumhome
افتح ملف newthread.php
الموجود داخل مجلد المنتدى
وأبحث عن :
رمز PHP
- الكود:
$newpost['title'] =& $vbulletin->GPC['subject'];
اشتيدبها يـ :
رمز PHP
- الكود:
$newpost['title'] =htmlspecialchars_uni(& $vbulletin->GPC['subject']);
// $newpost['title'] =& $vbulletin->GPC['subject'];
بهذا تم ترقيع ثغرة forumhome
ثغرة Xss
في الملف admincp/index.php
استبدل السطر التالي
رمز PHP
- الكود:
$vbulletin->input->clean_array_gpc('r', array('navprefs' => TYPE_STR));
بالسطر أدناه
رمز PHP
- الكود:
vbulletin->input->clean_array_gpc('r', array('navprefs' => TYPE_NOHTML));
أيضا أبحث عن :
رمز PHP
- الكود:
$vbulletin->input->clean_array_gpc('r', array(
'prefs' => TYPE_STR,
'dowhat' => TYPE_STR,
'id' => TYPE_INT
));
واستبدله بـ :
رمز PHP
- الكود:
$vbulletin->input->clean_array_gpc('r', array(
'prefs' => TYPE_NOHTML,
'dowhat' => TYPE_STR,
'id' => TYPE_INT
));
قم بوضع الكلمات أدناه في الرقابة
خيارات المنتدى >> الرقابة
رمز PHP
- الكود:
cookie
cookies
COOKIE
COOKIES
<meta>
cookie
cookies
cookie
cookies
<meta
php..
Refresh
equiv
content
الآن يرجى التركيز أكثر
ترقيع ثغرة spacer_close و spacer_open
نفتح ملف global.php الي بالمجلد الرئيسي بالمنتدى
وابحث عن الكود الاتي
رمز PHP
- الكود:
eval('$spacer_open = "' . fetch_template('spacer_open') . '";');
نغير اسم القالب الى اي اسم اخر ونكول مثلا umar
يعني باختصار نستبدل الكود الي بالاعلى بهذا الكود
رمز PHP
- الكود:
eval('$spacer_open = "' . fetch_template('umar') . '";');
ما سيحصل هو ان المتغير $spacer_open راح يستدعي القالب umar الذي لا يعرفه أحد غيرك وهو في الأصح القالب spacer_open
الان نجي للخطوه الاخيره والمهمه الي لازم نسوها حتى تكمل العمليه
نروح للوحة التحكم
من الستايلات والقوالب
التحكم بالستايلات
اضافة قالب جديد
ونسوي قالب نسميه بنفس الاسم الي غيرناه والي هو umar
ويكون محتواه الكود التالي
رمز PHP
- الكود:
<!-- open content container -->
<if condition="$show['old_explorer']">
<table cellpadding="0" cellspacing="0" border="0" width="$stylevar[outertablewidth]" align="center"><tr><td class="page" style="padding:0px $stylevar[spacersize]px 0px $stylevar[spacersize]px">
<else />
<div align="center">
<div class="page" style="width:$stylevar[outerdivwidth]; text-align:$stylevar[left]">
<div style="padding:0px $stylevar[spacersize]px 0px $stylevar[spacersize]px">
</if>
نحفظ القالب ونعمل هذا مع جميع الأستايلات
كما نبحث في الملف نفسه ملف global.php الي بالمجلد الرئيسي
ونبحث عن التالي
رمز PHP
- الكود:
eval('$spacer_close = "' . fetch_template('spacer_close') . '";');
نستبدله بالكود التالي :
رمز PHP
- الكود:
eval('$spacer_close = "' . fetch_template('abolian') . '";');
ونسوي قالب نسميه بنفس الاسم الي غيرناه والي هو
abolian
ويكون محتواه الكود التالي
رمز PHP
- الكود:
<if condition="$show['old_explorer']">
</td></tr></table>
<else />
</div>
</div>
</div>
</if>
<!-- / close content container -->
نحفظ القالب وطبعا نعمل هذه مع كل ستايل بالمنتدى
المرحله المهمه في الحمايه
هو تغيير مسار ملف الكونفق
او تغير الاسم وترك الاسم القديم كا اسم وهمي غير فعال
ناتي الان لمرحلة تغيير الاسم
شرح طريقة التشفير وتغيير مسارات ومسميات الملفات المهمه
الملفات اللي راح نعدل عليها في مجلدين فقط
1 - admincp
2 - includes
أول شي عشان تضمن العمل اللي بنسويه خذ نسخة من الملفات اللي بذكرها على جهازك
الان نروح للأف تي بي ونختار مجلد
admincp
ونبحث عن ملف اسمه
diagnostic.php
وهو على هذا المسار
على المسار التالي
public_html / vb /admincp
نفتح الملف : diagnostic.php و نبحث عن هذه الكلمه config.php
نقوم باستبدالها بالاسم الجديد اللي نبيه مثلا : aboliancp.php
نمسح اللي كلمة config.php اللي طلعت لنا ونستبدلها بالأسم الجديد اللي اخترته انا وهو
aboliancp.php
طبعا هناك موجوده مرتين .
ملاحضة : اللي تستبدلها في كل مرة هي اسم الملف كامل يعني config.php وليس فقط كلمة config
اللحين بنروح نعدل على مجلد الأنكلوديس includes وفيه خمس ملفات للتعديل
على المسار التالي : public_html / vb /includes
adminfunctions.php - 1
class_core.php - 10
functions.php - 2
init.php - 2
config.php
الحين ببداء بملف :adminfunctions.php
نفتح الملف و نبحث عن هذه الكلمه config.php
نقوم باستبدالها بالاسم الجديد اللي نبيه مثلا : aboliancp.php
نمسح اللي كلمة كونفيج اللي طلعت لنا ونستبدلها بالأسم الجديد اللي اخترته انا وهو : aboliancp.php
طبعا هذي موجوده مره واحد فقط ... الحين خلصنا من اول ملف نروح للثاني
بعده نختار الملف : class_core.php ونستخدم نفس الشي مثل الل قبله
وهذا الملف موجود فيه كلمة كونفيج 10 مرات عدلها لـلكلمه اللي تبيها وانا عدلتها
وبعده نختار الملف : functions.php ونستخدم نفس الشي مثل الل قبله
وهذا الملف موجود فيه كلمة كونفيج مرتين (2) مرات عدلها لـلكلمه اللي تبيها وانا عدلتها
وبعده نختار الملف init.php ونستخدم نفس الشي مثل الل قبله موجود فيه الكلمة مرتين
الان جا دور تغير مسما مجلدي الاداره والمراقبين والكوكيز
نختار الملف config.php
ونبحث مجلد الاداره admincp ونستبدلها باي اسم اخر جديد
كذلك نبحث عن مجلد المراقبين modcp ونستبدلها باي اسم اخر جديد
كذلك نبحث بنفس الملف عن bb اي الكوكــي ونستبدله باي كلمه جديده اخرى
باقي شي مهم جدا اخر شي تعمله
حرر القالب
footer
ابحث عن
$admincpdir
استبدلها بي
admincp
ايضا ابحث
عن
$modcpdir
استبدله بي
modcp
هذه يلغي الدخول للوحة التحكم عبر الروابط في المنتدى
طبق هذه على كل ستايل موجود
ولكل ستايل
طبعا الآن تشيك على منتداك بالكامل ان شاء الله مافيه مشاكل
نتابع عملية المجلدات والملفات الوهمية
طيب يا أخوان هي شغلة فلسفة فقط
ولكن بوضح لكي مايصير مشاكل
أولا : نحنا الحين غيرنا اسم الكونفق صحيح
يعني ماعندنا الحين ملف اسمه config.php
طيب نروح نسوي ملف كونفق جديد ونضع فيه معلومات قاعدة خطأ ومسارات لوحة تحكم خطأ
ثم نقوم بتشفير الملف ورفعه إلى مجلد الأنكلودز
ايضا نضع مسميات أخرى قريبة ايضا لمزيد من التتويه
مثلا conf.php
ايضا
con.php
myconfgnew.php
configuration.php
....etc....
الآن نعمل مجلد جديد اسمه admincp وهمي طبعا لأن الأساسي غيرناه الى اسم جديد
ونضع داخله الأندكس تبع المنتدى vb/index.php
ونعمل له جدار حماية نوع من الذكاء يعني
لاننسى عمل ايضا مجلد آخر اسمه modcp نكرر معه نفس الخطوة
.. ممتاز الى الآن كل شي تمام
باقي بعض الأشياء البسيطة
التشفير
لابد من تشفير ملف الكونفق الريسي الصحيح والملفات الوهمية من خلال برنامج التشفير zend مثلا
ايضا لاتنسى بعد التشفير تقوم بتشفير بعض الملفات مثل الملفات التالية لكي لايتم استعراضها ومعرفة اسم الكونفق الصحيح
وهي :
داخل الأنكلودز
adminfunctions.php
class_core.php
functions.php
init.php
داخل مجلد المدير اللي احنا اصلا غيرناه
نشفر ايضا
diagnostic.php
لاتنسى وضع جدار ناري على أي مجلد إدارة في موقعك
لاتنسى تغيير مسار لوحة التحكم ايضا لأي سكربت كان على موقعك
أكرر الجدار الناري مهم جدا
وبالتوفيق
رد: [درس]حماية ملفات منتداك ترقيع الثغرات وتغيير المسارات وتشفير ووضع ملفات ومجلدات وهمية
2010-11-26, 7:11 pm
حاولت استوعب شرحك قدر الامكان مشكوووووووور اخي
رد: [درس]حماية ملفات منتداك ترقيع الثغرات وتغيير المسارات وتشفير ووضع ملفات ومجلدات وهمية
2010-11-26, 8:01 pm
العـفو
وادري ان شرح طويل ..
بس يبيله بال طويل .. ووقت فرآغ
وادري ان شرح طويل ..
بس يبيله بال طويل .. ووقت فرآغ
- smaعضو مؤسس
عدد المساهمات : 4300
رد: [درس]حماية ملفات منتداك ترقيع الثغرات وتغيير المسارات وتشفير ووضع ملفات ومجلدات وهمية
2010-11-28, 8:52 am
شرح رائع ومميز
سلمت يداك
سلمت يداك
رد: [درس]حماية ملفات منتداك ترقيع الثغرات وتغيير المسارات وتشفير ووضع ملفات ومجلدات وهمية
2010-11-28, 4:02 pm
أسعدني كثيراً تواجدكِ
أخت سما في موضوعي
كل الشكر لكِ
أخت سما في موضوعي
كل الشكر لكِ
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى