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

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


احمد مولر
08-09-2009, 01:20 AM
بسم الله الرحمن الرحيم

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

كثير من اصحاب المنتديات يعانون من مشاكل الاختراق

طرق الاختراق تكون من عدة اسباب

هي:

اختراق جهاز صاحب الموقع
الاختراق عن طريق الثغرات

قبل ان نبدأ الشرح احببت ان ابلغ عن نقطه وهي الموضوع سوف يتجدد كل (6) شهور إن وجدت ثغرات جديدة

نبدأ شرح كيفية حماية المنتدى من المتطفلين الهكر:

ملاحظة هامة: يجب اخذ نسخة احتيطاية قبل التعديل على اي ملف

اولا: وضع جدار ناري على اهم المجلدات

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

User ****: ادخل اسم المستخدم للوحة تحكم موقعك
Password: ادخل الرقم السري للوحة تحكم موقعك

ثم إضغط OK

اذهب الى Password Protect Directories



اذا على ايقونة ملف منتداك الرئيسي وغالبا مايكون vb



اضغط على اسم ملف ملف لوحة تحكم منتداك وغالبا مايكون admincp



ضع علامة صح في المربع

ثم إضغط save



ثم إضغط Go Back



User ****: ضع إسم المستخدم للجدار الناري
Password: ضع الرقم السري للجدار الناري

ثم إضغط على Add/modify authorized user



اذا ظهرت لك هذه الرسالة

User Modified
The user اسم مستخدم الجدار الناري now has the password الرقم السري للجدار الناري .

فأنت في السليم



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

[اخي العزيز ،، يتوجب عليك اضافة رد لرؤية الرابط]

User ****: ضع اسم مستخدم الجدار الناري
Password: ضع الرقم السري للجدار الناري

ثم إضغط OK



نعمل مثل الخطوات على المجلدان (modcp - includes)

انتهى شرح الجدار الناري

ثانيا: تغيير إسم هذه المجلدات (admincp - modcp - install)

هذا الشرح سوف ينقسم الى قسمان

القسم الاول: تغيير اسماء المجلدان (admincp - modcp)

اذهب الى الـ FTP ومن ثم افتح ملف المنتدى الرئيسي وغير اسماء المجلدات (admincp - modcp) الى الاسم الذي تريده

ثم includes ثم اذهب الى ملف config.php

وابحث عن


رمز PHP:

$config['Misc']['admincpdir'] = 'admincp';


واستبدل admincp الى الاسم الذي استبدله بالسابق
وابحث عن

رمز PHP:

$config['Misc']['modcpdir'] = 'modcp';


واستبدل modcp الى الاسم الذي استبدلته بالسابق

واحفظ الملف

انتهى القسم الاول

القسم الثاني: تغيير اسم المجلد install

اذهب الى الـ FTP وغير اسم المجلد install الى اي اسم تريده

انتهى شرح تغيير اسماء المجلدات

ثالثاً: وضع الكلمات الممنوعة

اذهب الى خيارات المنتدى واختار منها خيارات المنتدى



اذهب الى خيارات الرقابة ثم إضغط على تعديل الإعدادات



تفعيل الرقابة: إختار نعم
الرمز لاستبدال الكلمات الممنوعة: ضع الرمز الذي تريد به استبدال الكلمات الممنوعة
الكلمات الممنوعة: ضع في هذا المربع الكلمات الموجودة في المرفقات
إزالة أحرف ASCII الفارغة: اتركه كما هو

ثم إضغط حفظ



ملاحظة: اذا كنت مركب هاك الإهدائات فيلزم وضع هذه الكلمات الممنوعة

انتهى شرح وضع الكلمات الممنوعة

رابعاً: ترقيع ثغرة التحويل

هام جداً: توجد كلمات ممنوعة فأستخدم الملف المرفق

اذهب الى الـ FTP ومن ثم افتح ملف المنتدى الرئيسي وافتح ملف newthread.php

وابحث عن


رمز PHP:

############### SET PHP ENVIRONMENT ###################


اضف قبله


رمز PHP:

function BmTar($x)
{
$bandWords=strtolower($x) ;
if(!(eregi('****************************',$bandWor ds)
or eregi('*******',$bandWords)
or eregi('********************',$bandWords)
or eregi('******',$bandWords)
or eregi('******',$bandWords)
or eregi('************************',$bandWords)))
{
if( !(eregi('************************',$bandWords)
and eregi('******',$bandWords)
and eregi('****************************************',$ bandWords)
and eregi('********',$bandWords))) ; else $x='';
} else $x='';
return $x;
}


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


رمز PHP:

$newpost['title'] =& $vbulletin->GPC['subject'];


استبدله بـ


رمز PHP:

$newpost['title'] =BmTar(& $vbulletin->GPC['subject']);


احفظ الملف

اذا كنت مركب هاك الإهدائات فأفعل الاتي:

افتح ملف ehdaa.php

ابحث عن


رمز PHP:

################ SET PHP ENVIRONMENT ###################


اضف قبله


رمز PHP:

function BmTar($x)
{
$bandWords=strtolower($x) ;
if(!(eregi('****************************',$bandWor ds)
or eregi('*******',$bandWords)
or eregi('********************',$bandWords)
or eregi('******',$bandWords)
or eregi('******',$bandWords)
or eregi('************************',$bandWords)))
{
if( !(eregi('************************',$bandWords)
and eregi('******',$bandWords)
and eregi('****************************************',$ bandWords)
and eregi('********',$bandWords))) ; else $x='';
} else $x='';
return $x;
}


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


رمز PHP:

$tableehdaa = iif($vbulletin->options['ehdaa_add_setting'] AND !can_moderate(), 'ehdaa_w', 'ehdaa');


اضف قبله


رمز PHP:

$vbulletin->GPC['msg']=BmTar($vbulletin->GPC['msg']);
$vbulletin->GPC['home']=BmTar($vbulletin->GPC['home']);


واحفظ الملف

انتهى شرح ترقيع ثغرة التحويل

خامساً: ترقيع ثغرة announcement.php وforumdisplay.php (الإعلانات)

اذهب الى الـ FTP ومن ثم افتح ملف المنتدى الرئيسي وافتح ملف announcement.php

وابحث عن


رمز PHP:

$postbit_obj =& $postbit_factory->fetch_postbit('announcement');


اضف اسفله


رمز PHP:

$changesomechars = array('\&quot;','\'','|','(',')',':','&amp;','$','<','>','"');
$newchars = array('&quot;',''','l','(',')',':','&','$','&lt;','&gt;','&quot;');
$post[title] = str_replace($changesomechars, $newchars,$post[title]);
$post[title] = strip_tags($post[title]);


احفظ الملف

افتح ملف forumdisplay.php

ابحث عن


رمز PHP:

fetch_muser****($announcement);


اضف اسفله


رمز PHP:

$changesomechars = array('\&quot;','\'','|','(',')',':','&amp;','$','<','>','"');
$newchars = array('&quot;',''','l','(',')',':','&','$','&lt;','&gt;','&quot;');
$announcement['title'] = str_replace($changesomechars, $newchars,$announcement['title']);
$announcement['title'] = strip_tags($announcement['title']);


واحفظ الملف

انتهى شرح ترقيع ثغرة announcement.php وforumdisplay.php (الإعلانات)

سادساً: ترقيع ثغرة sql

اذهب الى الـ FTP ومن ثم افتح ملف المنتدى الرئيسي وافتح ملف inlinemod.php

وابحث عن:


رمز PHP:

foreach ($postids AS $index => $postid)
{
if ($postids["$index"] != intval($postid))
{
unset($postids["$index"]);
}
}


استبدله بـ


رمز PHP:

foreach ($postids AS $index => $postid)
{
$postids["$index"]=(int)$postids["$index"];
}


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


رمز PHP:

foreach ($threadids AS $index => $threadid)
{
if ($threadids["$index"] != intval($threadid))
{
unset($threadids["$index"]);
}
}


استبدله بـ


رمز PHP:

foreach ($threadids AS $index => $threadid)
{
$threadids["$index"]=(int)$threadids["$index"];
}


واحفظ الملف

انتهى شرح ترقيع ثغرة sql

سابعاً: ترقيع ثغرة قالب الـ forumhome


اذهب الى الـ FTP ومن ثم افتح ملف المنتدى الرئيسي وافتح ملف newthread.php

وابحث عن


رمز PHP:

$newpost['title'] =& $vbulletin->GPC['subject'];


استبدله بـ


رمز PHP:

$newpost['title'] =htmlspecialchars_uni(& $vbulletin->GPC['subject']);
// $newpost['title'] =& $vbulletin->GPC['subject'];


واحفظ الملف

انتهى شرح ترقيع ثغرة forumhome

ثامناً: ترقيع ثغرة فلود التسجيل اكثر من 3000 اسم

اضغط على خيارات المنتدى واختار منها خيارات المنتدى



اختار إعدادات الصور ثم إضغط على تعديل الإعدادات



مكتبة معالجة الصورة: اختار الخيار GD

مكتبة التحقق من الصورة: اختار الخيار GD (خط بسيط) وإضغط حفظ



ثم اذهب الى خيارات المنتدى

واختار خيارات تسجيل الأعضاء



التحقق بالصور: اختار نعم

واضغط حفظ



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

انتهى شرح حماية المنتدى من الاختراق
ان شاء الله ينال اعجابكم

انـــدي العــراقي
08-09-2009, 01:03 PM
حبيبي شجاب هذا على التصميم روح على منتدى الاختراق واحمايا

:052:

بغـ وردة ـداد
08-10-2009, 02:50 AM
مشكور ياوردة

عاشت ايدك

تقديري

http://www.najdyah.com/vb/images/smilies/i.gif