منتديات المُنى والأرب

منتديات المُنى والأرب (http://www.arabna312.com//index.php)
-   الحماية والهاكات وتطوير المنتديات (http://www.arabna312.com//forumdisplay.php?f=70)
-   -   حمايه السيرفرات (http://www.arabna312.com//showthread.php?t=1020)

صائد الأفكار 8 - 11 - 2009 07:28 PM

حمايه السيرفرات
 
حمايه السيرفرات

تحيه طيبة وبعد ,, اليوم أخواني الكرام نبدأ في دروس حماية السيرفر حماية صحيحة وسليمة 100% والحماية التي يجب على الجميع وضعها بسيرفره

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

الدرس الأول :

عندما يتم استلام السيرفر

أمامنا خطوتين مهمين

أولا : تفعيل السيف مود

ثانياً : اضافة الدوال الخطيره

الشرح : -

أدخل الشل

ثم أكتب هذا الأمر

pico /usr/local/lib/php.ini

بعدين

Ctrl+W

وتكتب :

safe_mode

بعدين بتلاقي امامها كلمة OFF استبدلها بكلمة ON

بعدها نضغط على

Ctrl + W

ثم نكتب :

= Disable_functions

وبعدها نضع هذه الدوال بعد علامة =
كود PHP:
tempnam, dl, exec, shell_exec, system, passthru,
popen, pclose, proc_open, proc_nice, proc_terminate, proc_get_status,
proc_close, pfsockopen, leak, apache_child_terminate, posix_kill,
posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, escapeshellcmd,
escapeshellarg, hypot, pg_host, pos, posix_access, posix_getcwd,
posix_getgid, posix_getpid, posix_getsid, posix_getuid, posix_isatty,
posix_kill, posix_mkfifo, posix_mknod, posix_setgid, posix_setsid,
posix_setuid, posix_times, posix_uname, ps_fill, posix_getpwuid, global,
ini_restore, symlink,ini_get_all,pfsockopen,chmod,esc apeshellar,myshellexec

بعدين

ctrl+X

بعدين

Y

وتضغط إنتر

كود PHP:
service httpd restart


الدرس الثاني :


تركيب سكربت الباحث عن الشلات .


أدخل الشل


cd /root
wget http://www.awd4.com/exploit.sh.txt
mv exploit.sh.txt exploit.sh
chmod 755 exploit.sh


و لجدولة الاسكربت ليصلك تبليغ في حين رفع شل علي سيرفرك أتبع التالي


export EDITOR=pico


ثم


crontab -e


و من ثم نروح لاخر سطر و نقوم بأضافة التالي
كود PHP:
0 7,19 * * * /root/exploit.sh -c -m awd@awd.com



و بدل البريد awd@awd.com الى بريدك الذي تريد وصول الرسائل اليه لمتابعة الشلات ,,
و من ثم تضغط x + ctrl


لتشغيل الاسكربت بشكل يدوي طبق الاوامر التالية بالشل


cd /root
sh exploit.sh


[الدرس الثالث :

تنبية عند دخول أحد بالرووت



أولاً :
قم بالدخول الى سيرفرك عن طريق الشل ( root )

ثانياً :
افتح مجلد الروت root بأستخدامك هذا الامر :
cd /root

ثالثاً :
قم بفتح الملف .bashrc بأستخدام احدى برامج التحرير مثل vi أو pico وانا افضل pico لسهولته والطريقة كتالي :

pico .bashrc

رابعاً :
بعد فتح الملف المذكور اعلاه سوف يضهر لك نافذة بالملف الذي طلبه كل ما هو عليك الذهاب نهاية الملف ووضع الكود التالي مع تغيير ما يلزم :
كود PHP:
echo 'ALERT - Root Shell Access
(YourserverName) on:'
`date` `who` | mail -s "Alert: Root Access from `who | cut
-d"
(" -f2 | cut -d")"
-f1`"
you@yourdomain.com

قم بتغيير : YourserverName الى اسم سيرفرك الذي تود وصول الرساله لك
قم بتغيير : you@yourdomain.com الى البريد الذي تود وصول الرساله التحذيرية الية

خامساً :
بعد وضعك للكود اعلاه اضغط على Crtl + X ثم اضغط Y وبعدها انتر ( enter ) ..

بعد اتمام العمليات المذكورة اعلاه قم بالخروح من الشل والدخول مرة ثانية وحين دخولك سوف يصلك بريد يعلمك بأن تم الدخول هذا الشخص الى سيرفرك في تمام الساعه XXXX ويحمل رقم الايبي XXXXXX وبذلك سوف تعرف كل من دخل على سيرفرك ..


[]الدرس الرابع :

حماية مجلد الـ tmp

أدخل الشل

ثم أكتب هذا الأمر

كود PHP:
/scripts/securetmp --auto

الدرس الخامس :


تنصيب برنامج les

مهمته :
====
توفير الجهد على صاحب السيرفر من تعطيل أشياء يدويا لسد طرق معينة قد تكون ثغرات مثل :

مكتبات البينري والتي يستخدمها المخترق .
ثغرات local , يؤمنها هذا البرنامج بطريقة فائقة , قد يستخدمها أحد المستضيفين على سيرفرك .
الثغرات الداخلية .
الطرق الخاصة بالدخول الى الرووت .

wget http://www.r-fx.ca/downloads/les-current.tar.gz

tar -zxvf les*

cd les*

./insta*

/usr/local/sbin/les -ea 1



الدرس السادس :

طريقة غلق المترجمات من الشل

المترجمات هى اداوت تستخدم لتنفيذ برامج مكتوبة بعدة لغات مثل لغة السى و غيرها من لغات البرمجة المعروفة عن طريقة الشل بامر gcc
ويعتبر هذا الامر خطر كبير جدا على السيرفر و يقوم بفتح مجال للهكرز بمنتهى السهولة

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

و لاغلاق المترجمات اتبع التالى
كود PHP:
/scripts/compilers off

</I>في هذا الموضع سوف نتطرق الى حماية السيرفر الكامله والتطرق الى اساليب جديده من ناحية الفكره فقط
الاشياء اللي راح نحميها من خلال درسنا :-

apache
php
sql
متفرقات
***ملاحظة:-قبل بداية الدرس ستلاحظ بعض المسافات الموضوعه في المسارات والاوامر لكي يقبلها المنتدى احذفها لكي يكون الامر صحيح

الان نجي لحماية الاباتشي

بالبدايه ناخذ نسخة احتياطيه من الاباتشي بالامر
كود PHP:
cp /u sr/local/apache/conf/httpd.conf /u sr/local/apache/conf/httpd.conf.inv

نفذ الامر
كود PHP:
pico /u sr/local/apache/conf/httpd.conf

ابحث عن
كود PHP:
AllowOverride All

وحولها الى
كود PHP:
AllowOverride None

ابحث عن
LoadModule
واضف ان لم تجدها
كود PHP:
LoadModule php4_module libexec/libphp4.so

الان سوف نقوم اخفاء معلومات الاباتشي من صفحة الملفات التي لا تحتوي على اندكس
ابحث عن
كود PHP:
ServerSignature on

وحولها الى
كود PHP:
ServerSignature off

الان اضغط ctrl +x لحفظ الملف

في النهايه اضف امر
كود PHP:
httpd restart

انتهينا بحمد الله من الاباتشي

حماية mysql
نفذ الامر
كود PHP:
pico /e tc/my.cnf

وضف هذا السطر
كود PHP:
set-variable=local-infile=0

الان اضغط ctrl +x لحفظ الملفثم نفذ الامر
كود PHP:
service mysql restart

""حماية php
ندخل على البي اتش بي بالامر هذا
كود PHP:
pico /u sr/local/lib/php.ini


الان قبل نبدا راح اعطيك كلمات تبحث عنها وطريقة البحث كنترول +w حط الكلمه وانتر الان ساضع القيم امامك اجعلها مطابقة في سيرفرك
كود PHP:
safe_mode = On

كود PHP:
open_basedir = On

كود PHP:
allow_url_fopen = Off

كود PHP:
expose_php = Off

كود PHP:
disable_functions="dl,passthru,pfsockopen,system,exec,pass thru,popen,shell_exec,proc_close,proc_op en,proc_nice,proc_terminate,proc_get_sta tus,posix_getpwuid,posix_uname,openlog,s yslog,ftp_exec,posix_uname,posix_getpwui d,posix_kill,posix_mkfifo,posix_setpgid, posix_setsid,posix_setuid,get_current_us er,getmyuid,getmygid,listen,chgrp,chmod, apache_note,apache_setenv,apache_child_t erminate,closelog,debugger_off,debugge_o n,ini_restore,imap,tempnam,netscript,cop y,curl_init,curl_exec,curl,escapeshellcm d,escapeshellarg,tmpfile,cmd,backtick,vi rtual,show_sourc,show_source,pclose,pcnt l_exec,datasec,old_offset,ctrl_dir,ini_a lter,passthru,leak,listen,chgrp,apache_s etenv,define_syslog_variables,phpinfo,ro ot,allow_url_fopen,diskfreespace,php_una me,disk_free_space,disk_total_space,posi x_kill,getmyuid,getmygid,apache_child_te rminate,mkdir,unlink,php_ini_scanned_fil es,ls,ps_aux,chown,realpath,fpassthru,ge trusage,posixc,posame,chgrp,posix_setuid ,posix_setsid,posix_setgid,set_time_limi t,apache_note,apache_setenv,x_getuid,e_i ni_file,nfo,SQL,mysql_list_dbs,glob,erro r_log,ini_get_all,fileowner,fileperms,fi legroup,highlight_file,sscanf,tempnam,il egetcontents,get_dir,popen,popens,pfsock open,dos_conv,apache_get_modules,crack_c heck,crack_closedict,zip_read,rar_open,b zopen,bzread,bzwrite,shellcode,posix_isa tty,posix_getservbyname,escapeshellarg,h ypot,pg_host,pos,posix_access,inurl,posi x_times,posix_mknod,passthru,pclose,ps_f ill,posix_getegid,symlink,id

"
واقدر اقولك هذي الدوال متنقيها نقوه بأذن الله انها تكون شامله

الان سو بحث على

كود PHP:
include_path ".:/u sr/local/lib/php"



وحولها الى

كود PHP:
include_path "/u sr/lib/php:/u sr/local/lib/php:/tmp:/home"


انتهينا من الشل نروح الى لوحة الرووت
نروح لـ WHM >> apache Update

ثم تضغط الزر الاول load Previous Config

بعدها نختار من القائمة :

Php Module
php 4.4.7
SafeMode
Freetype Support
PHP suEXEC Support
Rewrite Module
suEXEC Module

وتضغط Start Build

انتظر الين ينتهي ويطلع لك Build Complete

انتهت حماية الـ php وبعدها سلملي على ثغرات الكوبي والسيم لينك والid

متفرقااااااااااااااااااات في الحمايه

حمايةssh

بالبدايه نفذ امر

كود PHP:
pico -w /e tc/ssh/sshd_config

ابحث عن النص بالامر Ctrl +W

كود PHP:
#Protocol 2, 1

وحوله الى
كود PHP:
Protocol 2

لاتنسا تشيل #
الان تغيير منفذ الاتصال وهذا شي راجعلك انا بحط الطريقه فقط علما ان المنفذ الاساسي 22

ابحث عن

كود PHP:
#Port 22

وحولها الى

كود PHP:
Port 3567

ضع مكان 3567 اي رقم يتكون من 4 ارقام فقط وسوف يكون هو منفذ الاتصال
**ملاحظه مهمه يجب ان تتأكد من المنافذ المستخدمه بالسيرفر مثلاا الافتيبي يستعمل منفذ 21 لكي لاتتعارض المنافذ وسوف اسرد لك قائمة بالمنافذ المستخدمه

كود PHP:
20,21,22,25,53,80,110,143,443,465,953,993,995,2077,2078,2082,2083,2086,2087,2095,2096

الحين ابي اعرض عليكم فكره بالحمايه قويه بس هذي راجعه لك وهي تخص حماية ssh والفكره هي جع السيرفر لايقبل اتصال ssh الا من ايبي معين يعني لو اي واحد ثاني معه باسوورد الروت ماراح يدخل على الشل نهائيا ولكن شروطها اما انك تتصل من سيرفر ثاني لان سيرفرات الاستضافه ايبياتها ثابته او انك تشتري ايبي ثابت لجهازك بالبيت من الشركة الاتصال المزوده لك اذا اخترت الخيار الاول فأمر الاتصال من سيرفر لسيرفر هو:
كود PHP:
ssh 11.11.111.111 -lroot

اذا اخترت الخيار الثاني اتصل من البيوتي مباشره من جهزك والطريقه هي في نفس الملف ابحث عن
كود PHP:
#ListenAddress 0.0.0.0

وحولها الى
كود PHP:
ListenAddress 0.0.0.0

وحط الايبي الثابت اللي لك ولاتنسى تشيل #

ومن ثم نضيف لمسه ترياقيه فكرتها الدخول بحساب مستخدم عادي ثم كتابة امر su الذي يحولك من مستخدم عادي الى رووت بكتابة كلمة السر الخاصة بالرووت يعني انك تسويلك حساب عادي ssh ثم تتصل فيه وتفذ امر su وتدخل باسورد الرووت وتمنع هذه الطريقه الروت من الدخول مباشره الى ssh لكن لاتمنعه من دخول لوحة whm
ابحث عن
كود PHP:
#PermitRootLogin yes

وعدلها الى
كود PHP:
PermitRootLogin no

لاتنسى تشيل #
بعد الانتهاء نفذ الامر

كود PHP:
/e tc/rc.d/init.d/sshd restart

حماية perl

اول شي نجعل امتداد البيرل اللي هو .pl غير صالح بالسيرفر بمعنى انه اللي يفتح هذا الملف يتحمل على طول على الجهاز كأنه ملف مضغط مثلا
قبل البدء لاتنسى تأخذ نسخ احتياطي
كود PHP:
cp /u sr/local/apache/conf/httpd.conf /u sr/local/apache/conf/httpd.conf.inv

الطريقه نفذ الامر
كود PHP:
pico /u sr/local/apache/conf/httpd.conf

ابحث عن
كود PHP:
AddHandler cgi-script .cgi .pl

وضع امامها # ليكون الناتج
كود PHP:
#AddHandler cgi-script .cgi .pl

الان اضغط ctrl +x لحفظ الملف ثم
كود PHP:
httpd restart

ثم قم بتنفيذ الامر
كود PHP:
chmod 744 /u sr/bin/perl

هكذا تم ايقاف البيرل نهائيا ولتشغيله نفذ الامر
كود PHP:
chmod 755 /u sr/bin/perl

الحماية من ال spam
نفذ الامر
كود PHP:
pico /e tc/exim.conf

ابحث عن
كود PHP:
spamd_address = 127.0.0.1 783

وضع فوقها
كود PHP:
log_selector = +arguments +subject

ليصبح الشكل النهائي
كود PHP:
log_selector = +arguments +subject
spamd_address
= 127.0.0.1 783

ثم نفذ الامرين
كود PHP:
service exim restart
service cpanel restart

حماية مجلد الـ t mp
نفذ الامر
كود PHP:
pico /e tc/fstab

ابحث عن كود PHP:
LABEL=/t mp /t mp ext3 defaults
/t mp v ar/t mp ext3 defaults,bind,noauto

راح تحصل ان كل وحده بسطر وقادم السطر فيه كلمة defaults قدام هالكلمة اضف
كود PHP:
noexec,nosuid

راح تحصل ان الشكل النهئي صار كود PHP:
LABEL=/t mp /t mp ext3 defaults,noexec,nosuid
/t mp /v ar/t mp ext3 defaults,noexec,nosuid,bind,noauto

ثم نفذ هالامرين
كود PHP:
umount /d ev/shm
mount
/d ev/shm

حماية ملفات ومجلدات النظام
نفذ الاوامر التاليه
كود PHP:
echo 1 > /p roc/sys/net/ipv4/tcp_syn******s
chmod 750
/u sr/bin/rcp
chmod 750
/u sr/bin/wget
chmod 750
/u sr/bin/scp
chmod 000
/e tc/httpd/proxy/
chmod 000 /v ar/spool/samba/
chmod 000 /v ar/mail/vbox/
chmod 000 /u sr/bin/perlcc
chmod 000
/u sr/bin/byacc
chmod 000
/u sr/bin/yacc
chmod 000
/u sr/bin/bcc
chmod 000
/u sr/bin/cc
chmod 000
/u sr/bin/gcc
chmod 000
/u sr/bin/i386*cc
/scripts/compilers off


ان اصبت فمن الله وان اخطأت فمن نفسي ومن الشيطان هذا والله اعلم


منقووووووووول :D


جمال جرار 13 - 11 - 2009 02:02 PM

شـكــ وبارك الله فيك ـــرا لك

موفق بإذن الله

لك مني أجمل تحية



نشمي المنتدى


الساعة الآن 02:08 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. منتديات المُنى والأرب

جميع المشاركات المكتوبة تعبّر عن وجهة نظر كاتبها ... ولا تعبّر عن وجهة نظر إدارة المنتدى