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

مشاهدة النسخة كاملة : كيف تحمي منتداك من الاختراق


ابن المسحاء
07-08-2008, 10:27 PM
بسم الله الرحمن الرحيم


السـلام عليكم ورحمة الله وبركاته


اخواني لايخفى على الجميع ان اختراق المنتدى اصبحا سهل في بعض الاحيان



من قبل اطفال الهكر او الهكر نفسهم واليوم سوف اقوم بوضع اهم الحمايات اللي





ان فعلتها لن يخترق منتداك وجمعتها من مواضيع عده



اتمنى ان يتم تطبيقها تلافيا للإختراق



-

الهاكرز غالبا يخترقون المنتديات عن طريق المجلدات الرئيسية بالمنتدى مثل

admincp او modcp او install او includes

يدخلونها بكل سهولة ! فكيف تمنعهم من دخول المجلدات هذه

الطريقة :

ادخل الى لوحة التحكم بالموقع ، CPanel

اضغط على

Password Protected Directories

ادخل مجلد المنتدى وغالبا يكون VB

سترى الان محتويات المجلد

الان قم بالضغط على المجلد الاتي

admincp

ستظهر لك هذه الرسالة بالصفحة

Folder requires a password to access via http://

اشر عليها بعلامة صح او غيرها

Protected Resource Name

في هذه الخانة اكتب PRIVATE

بالاسفل قم باضافة الاشخاص الذين لهم حق الدخول باعطائهم اسماء مخصصة وباسوردات

واضغط add user

بعد الانتهاء

اضعط على save

راح تلاحظ ظهور علامة قفل بالقرب من المجلد

كرر نفس العملية للمجلدات التالية

modcp و install و includes



2- فالنفترض بأن الهاكر كان ماهرا واخترق الجدار الناري ( شبه مستحيل ) اليك الحماية الاخرى

من برنامج الاف تي بي او لوحة تحكم الموقع ادخل على

File Manager

بعدها قم بالضعط على المجلد

admincp

اختر rename this folder

غير اسمه من admincp الى اي شيء آخر

مثال ABCDadmincp

كذلك الحال الى المجلد modcp

الان والمهم بعد التغيير مباشرة وبشكل سريع

افتح ملف config.php

الموجود تحت مجلدinclude

قم بتعديل اسماء المجلدات كالتالى

$admincpdir = 'admincp';

(قم بتغير اسم المجلد الى الذي اخترته بعد اشارة =)

$modcpdir = 'modcp';

(قم بتغير اسم المجلد)

قم بتغيير اسم مجلد admincp للاسم الذى كتبته بملف الكونفيج

الان ارفع ملف الكونفيج من جديد



3- ثغرة الـ HTML

اذهب الى لوحة تحكم المنتدى بعدها الى خيارات المنتدى

VB OPTIONS

بعدها الى User Profile Options

خيارات هوية العضو

السماح بأكواد الـ HTML في التواقيع

لا

خيارات المنتدى

خيارات الرسائل الخاصة

السماح بأكواد الـ HTML في الرسائل الخاصة

خيارات المنتدى

خيارات ملاحظات العضو

السماح بـ HTML في ملاحظات الأعضاء



4- ثغرة شريط اخر المواضيع :

افتح ملف last10.php

وببعض الهاكات الاخرى ملف ttlast.php

ابحث عن

$fsel

$ftitle

فقط قم بحذفهم من الملف

وارفعه لمجلد منتداك



5-ثغرة ملف التعليمات faq.php

وهي ثغره من نوع Path Disclosure حيث بواسطتها يقدر أن يعرف الشخص المخترق في

أي دليل داخل السرفر تقع ملفات المنتدى

طريقة سد الثغرة

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

كود PHP:

// initialize some template bits

$faqbits = '';

$faqlinks = '';

أضف بعدها مباشرة

كود PHP:

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

احفظ الملف وارفعه لمجلد منتداك



6-ثغرة ملف editpost.php

هي ثغره من نوع CrossSite Scripting وهي ثغره عن طريقها يتم سرقة الكوكيز

المحفوظ داخل الأجهزه وبها يستطيع المخترق الدخول للمنتدى بالكوكيز المسروقه

ولكن لا يستطيع التعديل في بيانات الشخص المسروق الكوكيز منه سواءاً بريده

الالكتروني أو كلمة المرور وهذه ميزة النسخه من الجيل الثالث

طريقة سد الثغرة

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



كود PHP:

$edit['title'] = trim($_POST['title']);

استبدله بهذا السطر



كود PHP:

كود:

$edit['title'] = trim(xss_clean($_POST['title']));

احفظ الملف وارفعه لمجلد منتداك



7-ثغرة ملف authorize.php

وهي ثغره من نوع SQL Injection

هو ملف خاص بتطبيق عمليات الشراء والتحقق من بعض مواقع الصرافات مثل paypal

(قم بحذف الملف نهائيا )



8-ثغرة في ملف editpost.php

إفتح الملف وفي أوله بعد<?php

أضف الكود التالي

$title = addslashes($title);

if (strstr($title,"script") != NULL){

echo "hello.. are you hacking us?<br>vBulletin<br>note: use scr!pt";

exit;

}




9-قم بفتح الملف memberlist.php في مجلد المنتدى vb

وامسح جميع محتوياته وضع الكود التالي

****** **********="*******-********" *******="en-us">

<p>sorry member page is not available at the moment</p>

واحفظ الملف



10- قم بفتح ملف calendar.php

وامسح جميع محتوياته وضع الكود التالي

****** **********="*******-********" *******="en-us">

<p>sorry calendar page is not available at the moment</p>

واحفظ الملف



11 - افتح ملف الكونفيق الي في منتداك config.php في مجلد includes



// Prefix that all vBulletin *****es will have

// For example

$*****eprefix = 'bb';

غير الحرف bb

الى اي حروف تبيها المهم غير bb

واحفظ الملف



12- ثغرة محرك البحث

استبدل الملف التالي

vb/includes/functions_search.php

بالملف المرفق باسم (functions_search.php)

ملاحظه قم بفك الضغط عن الملف السابق


13- ثغرة الصندوق السحري

قم بالذهاب الى لوحة تحكم المنتدى بعدها الى خيارات الاكواد

bbcode option

قم بمسح كود الـ FLASH

فيها ثغرة تتعلق بالكوكيز

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

فهو مملوء بالثغرات



-

14- حل ثغرة مركز التحميل

افتح ملف uploader.php

ابحث عن :

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

استبدله بـ :

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

احفظ الملف



15-اذهب الى مجلد includes

قم باعادة تحميل ملف init.php



للاهمية عدد الثغرات اكثر من 15 ثغرة لكن مسح بعض الملفات قلصت العدد وهذا ما ننصح به!

سوف يتم التحديث حين ظهور اي ثغرة جديدة بمنتديات الـ vb



النقطة الاخرى تتعلق بدخول الاف تي بي

عليك التحدث مع نفس الفريق او الدعم الفني للشركة الهوست

لغلق خدمة دخول الضيوف الى الاف تي بي تبع موقعك



لزيادة حماية ملف Init.php

قم بتطبيق الاتي

لزيادة حماية الملف المرفق init.php

قم بترقيع هذه الثغرة والتي اكتشفها شخص بريطاني

والثغره موجوده في ملف init.php وتحديداً في سطر 542 وهي ثغرة SQL Injection

ويتم نجاح هذه الثغره إذا كانت خاصية magic_quotes_gpc معطله OFF داخل الـ PHP .



التـــرقـــيـــع :

توجد طريقتين

الأولى :

إضافة السطر التالي في ملف .htaccess

php_value magic_quotes_gpc 1

الثاني/ بتعديل ملف init.php .

قم بالبحث عن



$datastoretemp = $DB_site->query("

SELECT title, data

FROM " . TABLE_PREFIX . "datastore

WHERE title IN ('" . implode("', '", $specialtemplates) . "')

");

unset($specials, $specialtemplates);



واستبداله بالتالي



if(!is_array($specialtemplates))

exit;

$specialtemplate = array();

foreach ($specialtemplates AS $arrykey => $arryval)

{

$specialtemplate[] = addslashes($specialtemplates["$arrykey"]);

}

$datastoretemp = $DB_site->query("

SELECT title, data

FROM " . TABLE_PREFIX . "datastore

WHERE title IN ('" . implode("', '", $specialtemplate) . "')

");

unset($specials, $specialtemplates, $specialtemplate);


توجد هناك ثغرة في online.php

(المتواجدون الان ) لم يتم الحصول على ترقيع لها او تحديد لها

لذلك وللاحتياط قم بالغاء عرض صفحة المتواجدون الان للاعضاء المسجلين والضيوف وغيرهم

ما عدا المشرف العام الا وهو انت من هنا:



ادخل لوحة التحكم الخاصة بالمنتدى

اذهب الى خيارات المجموعات

Usergroup Manager

اضغط على المجموعة المحددة

من خيار

Who's Online Permissions

اجعل جميعها NO لا

واما مايخص المتواجدين فهي تسهيل الاختراق بمعرفه رقم الايبي حيث ان امتواجدين

يظهر الايبي الخاص ومن هنا الخوف من هذه الثغره

وكذلك يوجد في المنتدى في المجموعات

الزوار بالتحديد انه يستطيع ان يجعل نفسه مشرفا او مديرا عاما

هذه الخاصيه يجب اقفالها

ومع تحياتي


وان كان هناك اي اضافه الله يحييكم ولنجعل منتدياتنا آآآآمنه من الهكر



منقول للفائدة

،،، ابن المسحاء ،،،

صقر قريش
07-09-2008, 09:44 AM
السلام عليكم ورحمة الله وبركاته
شكرا على النقل الرائع دمت بود

الهاجس
07-09-2008, 09:50 AM
أشكرك .. ابن المسحاء .. على النقل الهام و المفيد ..

و الله يبعدهم عنا مثل هؤلاء ..

و يعطيك العافيه ..

تحياتي ,,

ابن المسحاء
07-09-2008, 11:33 AM
وعليكم السلام ورحمة الله وبركاته

مشكورين اخواني الاعزاء صقر قريش ، الهاجس

على رد على هذا الموضوع الهام وانشاء الله يبعدهم عنا

تقبلوا تحياتي


،،، ابن المسحاء ،،،

شبل العوالق
07-09-2008, 01:42 PM
يسلموو اخووي على الاهتمام

نتمنى ان يكوون احلى منتدى لاهل شبوه

تحياتي