التسجيل التعليمـــات التقويم البحث مشاركات اليوم اجعل كافة اقسام اربياس ويب مقروءة

مرحبا بكم

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

برامج مهمة

برنامج الايتونزبرنامج كويك تايمبرنامج مايكروسوفت اوفسبرنامج فرونت بيج 2003برنامج جوجل لتجميل سطح المكتببرنامج  الجافامتصفح الانترنت اكس بلور
متصفح الانترنت فاير فوكسمتصفح الانترنت اوبرابرنامج ادوبي ريديربرنامج فلاش بليربرنامج الفوتوشوب 7 الداعم للعربيةعملاق الحماية مايكروسوفت سكيورتيبرنامج الحماية avg
برنامج الحماية avastبنامج الحماية المظله avبرنامج تنظيف الجهاز الرائع ccleanerبرنامج فك الضغط ون راربرنامج فك الضغط  winzipالاصدار الاخير من برنامج ميديا بليرالاصدار الاخير من برنامج مشغل الصوتيات ريلر بلير
الاصدار الاخير من برنامج winampبرنامج المحادثة ويندوز لايفبرنامج المحادثة ياهو ماسنجربرنامج المحادثة سكايبيبرنامج widgetsبرنامج نوت باد الشهيربرنامج الاف تي بي flashftp
خلفيات بدقه عالية لسطح مكتبك
مساحة إعلانيةمساحة إعلانيةمساحة إعلانيةمساحة إعلانية


العودة   اربياس ويب > القســـم التطويري و التعليمي > قسم ادارة السيرفرات

الملاحظات

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

شريط ادوات اربياس ويب

شريط الاداوات للوصول السريع لكافة محتويات اربياس ويب
إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
  رقم المشاركة : [1]  
قديم 2008-12-28, 12:22 AM
 
المبرمج العربي
:: عضو مشارك ::

  المبرمج العربي غير متواجد حالياً  
الملف الشخصي




Thumbs up الترقيع النهائي لثغرة البيرل Perl

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


لا شك أن الجميع يشتكي من مشكلة الهاكرز الذي يقوم بدعس (أن صح اللفظ ) المواقع الموجود على السيرفر كلها بسحب الكونفيق لاخذ بيانات قاعدة بيانات المنتدى لتغير الفورم هوم أو التمبليت أو زرع Index الى غير ذلك من أنواع الدعس خخخ
حان الوقت لشرح طريقة التخلص من هذه المشكلة إن شاء الله الى الأبد.
نقول بسم الله وبالله التوفيق
نرجع المسأله للأصل وكيف يستغل الهاكرز هذه الثغرة ، عموما الهاكرز يعتمد على 3 أمور مهمة في تشغيل البيرل أولها تصريح البيرل باعطاء ملف المترجم (/user/bin/perl)تصريح 700 هذه مسألة لها سلبياتها على السيرفر فكثير من سكريبتات السيبنال لا تشتغل وتعيد خطأ 500 في الأباتشي من جهة ومن جهة اخرى ان الهاكر بكل سهولة يقدر يتجاوز هذه المرحلة برفع ملف مترجم محلي وتغيير الباث التكملة .... لن اذكرها مخافة استغلالها من طرف اطفال النت هذه المسألة أظن أنه لا خلاف حولها .

ثانيا : الهاكرز يعتمد على تغيير امتداد تشغيل البيرل لو أن الأباتشي مضبوط أو اعدادات الموقع مضبوطة على RemoveHandler لإمتدادات CGI Scripts أو حذف امتداد البيرل نهائي من ملف الإعداد فهذه يتم تجاوزها بالتبليغ عن امتداد جديد عن طريق Addhandler في htaccess وتشغيل البيرل بكل سهولة .

ثالثا : تفعيل CGI scripts عن طريق عمل Override بتفعيل ExecCGI في htaccess (Options +ExecCGI) ولو كانت في الملف الرئيسي ملغية (Options –ExecCGI) هذه بالإضافة الى تطبيق الأمر الأول والثاني يشتغل البرل بكل بساطة.

هذه الأمور كلها مرتبطة بعضها الببعض ولا يمكن معالجة أمر دون معالجة الأخر ، لدينا هنا الأمر الأول لا يمكن معالجته لحاله الا اذا الغينا البيرل من السيرفر بصفة نهائية وهذا لا يمكن
الأمر الثاني الغاء FileInfo من AllowOverride لتمنع عمل Override لـتعليمات mod_mim منها addtype و addhandler و setHandler ما فيها أي اي خطر من الغائها ان شاء الله لكن المشكلة لو الغيناها يبقى منعنا العملاء من التحكم في mod_rewrite عن طريق التعليمات RewriteEngine و RewriteOptions و RewriteBase و RewriteCond و RewriteRule وفيها كذلك RedirectMuch دون ان ننسى صفحات الخطأ عن طريق التعليمة ErrorDocument وغيرها من التعليمات المهمة التي يحتاجها العميل وهي الأكثر استخداما في الاستضافات بنسبة 90% لان الغالبية العظمى يعتمدون على mod_rewrite في vbseo وتحويل الصفحات وتغيير الإمتدادات والكثير من الأمور مما يجعل أمر الغائها مضرة .


الأمر الثالث هو الأمر الذي سنسلط عليه الأضواء لشرحه لانه هو الأمر المتحكم في الامرين السابقين لو قمنا بمنع التحكم في ExecCGI ومنعنا العملاء من التحكم فيها عن طريق Htaccess يبقى حسمنا المسالة وانتيهنا .

ناخذ الأمر وشرحه بمنطقية اكثر ما دام نحن عطلنا عمل Override لتعليمات Options عن طريق htaccess وأننا ضبطنا الخيار الرئيسي في httpd.conf لالغاء ExecCGI هذا يعني أننا الغينا CGI scripts نهائيا كيف ذلك :
نعلم أنه في أخر نسخة الأباتشي تم تصحيح خلل فني Bug الذي كان يسمح بعمل تجاوز لكل تعليمات Options عن طريق htaccess والأن اصبح بالإمكان تخصيص التعليمات التي يسمح للعميل بتجاوزها عن طريق htaccess هذا يتيح لنا الغاء التحكم في ExecCGI وحده دون الغاء كافة تعليمات Options لانها في بعض الأحيان تكون ضرورية ولا يمكن الاستغناء عنها كمثال منع استعارض ملفات المجلدات التي لا تحتوي على ملف index أو أي ملف من ملفات المسمات ب DirectoryIndex بواسطة (Options -Indexes) وغيرها من الأمثلة كثيرة .
واليكم طريقة الغاء البيرل في هذا الجزء :
ملا حظة : التطبيق على apache 2.2.x فقط لذلك يفضل الترقية إلى اخر اصدار من الجيل 2.2 وهو apache2.2.9
أولا قم بتسجيل الدخول الى الشيل ثم قم بفتح ملف httpd.conf عن طريق الامر :
nano /etc/httpd/conf/httpd.conf

ابحث عن :

كود:
<Directory "/">

ضع فوقه التالي :
كود PHP:

<Directory "/home">
    
Options -ExecCGI  
    AllowOverride AuthConfig Indexes Limit FileInfo Options
=IncludesNOEXEC,Indexes,Includes,MultiViews,SymLinksIfOwnerMatch,FollowSymLinks
</Directory
احفظ الملف
تم قم باعادة تشغيل الأباتشي بالأمر
كود PHP:
 service httpd restart 
ماذا تعني هذه السطور :
بالنسبة للسطر الأول :
كود PHP:
    Options -ExecCGI  -FollowSymLinks 
هذا يعني أن كل التعليمات المتبقية مفعلة وهي IncludesNOEXEC Indexes MultiViews SymLinksIfOwnerMatch وهذا السطر يعادل :
كود PHP:
Options -ExecCGI IncludesNOEXEC Indexes Includes MultiViews SymLinksIfOwnerMatch 
لاحظ هنا نقدر نكتفي بالغاء –ExecCGI فقط عن طريق
كود PHP:
Options –ExecCGI 
يبقى أننا فعلنا كل التعليمات ماعدا ExecCGI لكن هناك تعليمة خطيرة لا نريد تفعيلها التحكم فيها وهي FollowSymLinks فاضطررنا اننا نفعل كل التعليمات باسثناء FollowSymLinks و الغينا –ExecCGI كما يمكن كتابة السطر كالتالي :

كود PHP:
    Options IncludesNOEXEC Indexes Includes MultiViews SymLinksIfOwnerMatch 
كل هذه الأكواد معناها واحد ولو قمنا مثلا بتفعيل تعليمة مثلا
Options IncludesNOEXEC Indexes
يبقى التعليمات المتبقية اللي هي MultiViews SymLinksIfOwnerMatch ملغية لذا وجب علينا أن نفعلها كلها باستثناء التعليمات التي نراها الخطيرة
وبالنسبة للسطر الثاني :
كود PHP:
AllowOverride AuthConfig Indexes Limit FileInfo Options=IncludesNOEXEC,Indexes,Includes,MultiViews,SymLinksIfOwnerMatch 
هذا السطر يعادل منطقيا
كود PHP:
AllowOverride All
Option –FlowSymLinks –ExecCGI 
لكن AllowOverride All
يسمح بتجاوز
Option –FlowSymLinks –ExecCGI

عن طريق htacess
فبالتالي السطر يمنحنا التحكم اكثر ومن الغاء وتفعيل تعليمات Options و التحكم بها عبر htaccess

أمل أن يكون هذا الجزء واضح ولا اشكال فيه

الطريقة الثانية لالغاء البيرل : وهي منع exec في بارتشن الهوم
نظرا لعدم وجود سكربتات سيبنال سواء sh أو python او perl والغات برمجة أخرى التي ليس لها محركات نظامها نفس نظام php التي لا تشتغل الا اذا تم تركيب محركات في apache كموديول في هذه الحالة يمكن ان نستفيذ بجعل بارتشن الهوم Noexec ومنع exec يمنع تنفيذ أي سكريبت من الأنواع التي سبق ذكرها وبالتالي نحن لم نعد بحاجة إلى حماية الأباتشي شرط ما يكون mod_perl مركب .

واليكم الطريقة :
اولا لا بد أن يكون الهوم بارتشن لحاله فلا يمكن تطبيقها والهوم جزء من بارتشن /
لذلك أنصح بتقسيم السيرفر تقسيمة السي بنال وهي :
كود PHP:
/=10GB
/usr=10GB
/var=على حسب  حجم قواعد البيانات ولو تخصص له هارد ديسك لحاله كان افضل 
/tmp =1GB
/home =ماتبقى من المساحة 
/boot=0.5GB
/swap=من 2 جيغا إلى ضعف حجم الرام 
هذه هي التقسيمة السليمة للسيرفرات السي بنال

نقوم بفتح ملف fstab عن طريق الأمر :
Nano /etc/fstab

ننزل عند السطر :
كود PHP:
LABEL=/home             /home                   ext3    defaults,usrquota        1 2 
تم نقوم باضافة noexec ليصبح بهذا الشكل :

كود PHP:
LABEL=/home             /home                   ext3    defaults,usrquota,noexec        1 2 
بعدها نقوم باعادة فصل واعادة تركيب /home لياخذ الخصائص الجديدة بالأمر :
كود PHP:
mount –o  remount /home 
تذكر أنها عند عمل تحديث للاباشي يجب ازالة noexec من البارتشن وتنفيذ هذا الأمر :
كود PHP:
mount -o remount,exec /home 
بعد الإنتهاء من التحديث رجع البارتشن noexec
كود PHP:
mount -o remount /home 
وهكذا قمنا بمنع البيرل من التنفيذ داخل بارتشن الهوم
كما يمكن كذلك حماية tmp و ذاكرة المشاركة /dev/shm بنفس الطريقة منع تنفيذ الملفات الخبيثة منها

أتمنى من الله عز وجل أن يكون الموضوع مفيدا للجميع والي عنده أي استفسار أو تنبيه على مسألة معينة يتفضل بالطرح
هذا الدرس مجهود شخصي أتمنى ذكر المصدر عند نقله الى منتديات أخرى.


السلام عليكم
رد مع اقتباس
 
اخبار الايفون - برامج الايفون - العاب الايفون مساحة إعلانية
إضافة رد

مواقع النشر (المفضلة)
اضف موقعك في دليل اربياس ويب و اكسب ارشفة محركات البحث

خلفيات لسطح المكتب و التصميم عالية الجودة

خلفيات سطح المكتب خلفيات سيارات خلفيات حيوانات خلفيات الخيول خلفيات حروف
انضم الى اسرة اربياس ويب في الفيس بوك و شاهد كل جديد,


الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 
أدوات الموضوع
انواع عرض الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع




Powered by vBulletin® , Copyright ©2000 - 2012 , Jelsoft Enterprises Ltd
Ads Management Version 3.0.1 by Saeed Al-Atwi
Copyright © Arabiasweb.com 2011