نحن مع غزة
الـرئـيـسـيـة الـمـنـتـدى سـؤال & اجـابـة الـتـبـرع بـالـدم الاسـتـضـافـة هـلال لـيـنـكـس الـقـرآن الـكـريـم Dz-SeC team


التسجيل في المنتدى غير متاح حاليا, اذا كنت ترغب في الحصول على عضوية ارجو مراسلتي على البريد الالكتروني "[email protected]"


مطلوب مشرفين على كامل اقسام المنتدى


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

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

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

وتذكر قول سيد الخلق " إذا مات ابن آدم انقطع عمله إلا من ثلاث صدقة جارية أو علم ينتفع به أو ولدٍ صالح يدعو له "

   

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 12/08/2013, 17:16   المشاركة رقم: 1
المعلومات
الكاتب:
 zero_cool  
اللقب:
Moderator
الصورة الرمزية
 
الصورة الرمزية zero_cool

البيانات
التسجيل : Jul 2012
العضوية : 4131
الاهتمامات :
الإقامة : Tunisia
المواضيع : 48
الردود : 20
المجموع : 68
بمعدل : 0.01 يوميا
الاختراقات : [ليس لدي حساب]
مجتمعنا : [لم اسجل]
الصنف : Gray Hat Hacker
آخر تواجد : 17/09/2014/18:22
سبب الغياب : السفر
معدل التقييم: 14
نقاط التقييم: 14
zero_cool is on a distinguished road
شكراً: 2
تم شكره 21 مرة في 15 مشاركة

 Tunisia


الإتصالات
الحالة:
zero_cool غير متواجد حالياً
وسائل الإتصال:

افتراضي [4] إكتشاف ثغرات الويب وإستغلالها برمجيا بالبايثون .. command execution


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

إن شاء الله تكونوا في تمام الصحة والعافية
في هذا الشرح حنشوف إستغلال ثغرة command execution

نفتح رابط الموقع بعد تسجيل الدخول للمشروع .











نجرب نضع كوموند بدل رقم الآيبي الكوموند ls



لنلاحظ لم يضهر لنا أي تغيير .

ندخل الآن بخدمة sshعلى المشروع لننظر في كود الحماية
بداخل الملف low.php








*)من خلال الصورة السابقة نلاحظ أنه يوجذ مرتين الأمر shell_execوسطر منهما ينفذ بحسب نوع النظام المستعمل .
*)بالنسبة للينكس واليونكس يمكننا تنفيذ كومندات مختلفة في نفس الوقت بشرط فصلها بالعلامة ؛


من خلال كود الحماية التي في الصورة لدينا وضعيتان :
*)في حالة التنفيذ العادي : يتم إدخال الأيبي فقط فتنفذ عملية ال pingعلى هذه الأيبي .

وإذا أردنا تخطي الحماية نضع العلامة ;ونضع بعدها أمر آخر لتنفيذه .

لأنه كما ذكرنا في نضامي اللينكس واليونكس يتم الفصل بين كومندات مختلفة بالعلامة ;

ملاحظة : لحماية الموقع من هذه الهجمة في الوضعية التي طبقناها يمكن مثلا حين عملية الإرسال حين الظغط على submit نضيف دالة
تقوم بحذف كل من العلامتان ؛ و و&&التي تجمعان بين أكثر من كومند .

نواصل :



نقوم مثلا بعرض الملف /etc/passwd





نفتح سورس الصفحة :



نلاحظ أن المعروض موجود بين الأوسمة pre

الآن نقوم بكل ذلك برمجيا من فاتح رابط المشروع إلى إستخراج جميع اليزرات من الملف etc/passwd

أولا نقوم بالخطوات التالية (شرحتها سابقا)





نشوف في الصورة العبارة 0.126 ms التي أدرتها فهي تمثل آخر عبارة قبل بداية محتوى الملف /etc/passwd يعني ذلك يمكننا
عند هذه العبارة قطع مايوجد داخل الوسام <pre>فنتحصل على جزئين ومايهمنا الجزء الثاني والذي يمثل محتوى الملف /etc/passwd


نواصل بإدخال هذه الأوامر :
كود PHP:
file open("file.txt""w")                         #أنشأنا ملف للكتابة فيه

"".join(listPRE***91;0***93;).split("0.126 ms")***91;1***93;          

file.write(a)                                        #ماإستخرجناه من السطر السابق نخزنه في الملف 

file.close()                                         #نغلق الملف 


بالنسبة لهذا السطر :

كود:
a = "".join(listPRE[0]).split("0.126 ms")[1]
لدينا هذه :

كود:
"".join(listPRE[0])
joinقامت بتحويل محتوى الليست listPRE التي تحتوي على عنصر واحد لذلك وضعنا [0]

قامت بتحويله إلى سلسلة نصية

وحولناه إلى سلسلة نصية ليتسنى لنا أن نطبق عليه الميثيود split

وللتذكير فإن listPREتحتوي على مايوجد في الوسام pre

ثم لدينا :

كود:
.split("0.126 ms")[1]
splitمهمتها القطع وكما شرحنا سابقا فإن عملية القطع ذكرنا أنها يجب أن تكون مباشرة قبل بداية محتوى الملف /etc/passwd وبالضبط عند العبارة 0.126 ms

بعد عملية القطع بالsplit نتحصل على ليست ومايهمنا قلنا الجزء الثاني منها لذلك وضعنا [1]


ملاحظة :

بالنسبة لإستخراج اليوزرات من الملف /etc/passwdيمكن أن نقوم بها في سطر واحد كاللآتي :


كود PHP:
with open("file.txt") as f:
    for 
line in f :
       if 
line:
            print 
line.split(":")***91;0***93; 
نعلم أن كل سطر في الملف etc/passwd/ متكون من 7 عناصر
والميثيود
كود:
split(":")
قلنا تقوم بقطع السلسلة النصية إلى العناصر المفصولة بنقطتان وتضعهم في ليست .

مثال هذا السطر هو line
كود:
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
حين نطبق عليه هذا الأمر :

كود:
line.split(":")
يصبح على شكل ليست كالتالي : :

كود:
['daemon' , 'x' ,'1', ,'1', 'daemon' ,"/usr/sbin" , "/bin/sh"]
واليوزرات موجودة في أول السطر يعني ذلك موجودة في أول الليست لذلك كتبنا [0]




الآن حنقوم بفتح الملف file.txtمرة أخرى ونقوم بإستخراج اليوزرات وهذا هو الملف كما في الصورة :



هذا محتوى الملف /etc/passwd

كل سطر من الملف /etc/passwdعموما يتكون من 7

عناصر مفصولة بالعلامة : كالتالي :

كود:
A:B:C:D:E:F:G


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

Aيمثل إسم اليوزر وتستعمل عند تسجيله الدخول ويجب أن لايتجاوز عدد رموزها 32 رمز أو حرف .

Bتمثل الباسورد و xتعني أن الباسورد المشفرة مخزنة في الملف /etc/shadow

Cتمثل رقم آيدي اليوزر أي UID
و 0 محجوزة للروت .
وUID مابين 0 و 99 محجوزة ليوزرات معرفة مسبقا و UIDبين 100 و 999
محجوزة لإدارة النظام وحساباتة .

D يمثل آيدي المجموعة الأساسية ويكون مخزن في الملف /etc/group

E هذا الجزء مخصص للتعليق يسمح بإضافة معلومات إضافية حول اليوزرات كرقم الهاتف مثلا ..إلخ

Fهذا يمثل المسار المطلق الذي يكون فيه اليوزر عند تسجيله الدخول .

Gهذا يمثل المسار المطلك تبع كومند أو الشيل /bin/bash




الآن إذا نريد إستخراج جميع اليوزرات بالملف file يعني ذلك حنقوم بإستخراج العنصر A من كل سطر من الملف file.txtوذلك كالتالي :

كود PHP:
with open("file.txt") as f:
    
    for 
line in f:                  #حلقة تكرر التعليمات التالية مع كل سطر من الملف 
    
         
if line:                   #إذا كان السطر ليس فرغ
         
             
line.find(":")     #إبحث عن العلامة : وحين يجدها يرجع لنا مرتبتها في السلسلة النصية أي السطر ووضعنا المتغير يشير إلى قيمة هذه المرتبة
         
             
print line***91;0:x***93;        # ثم إطبع لنا مايوجد من بداية السطر وصولا إلى مرتبة النقطتان في السطر والذي يمثل بالضبط إسم اليوزر 
والناتج كالتالي :


ملاحظة : عمليات القطع والحذف والإستخراج من السورس ليست ثابتة وإنما شرحت حسب الوضعية
بمعنا مثلا قد نجد عوض إستخراج الوسام pre نستخرج الوسام <p> وهكذا فالمهم فهم ميكانكية العمل .

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

كود PHP:
http://pastebin.com/zFw5pxhP 






يتبع بإذن الله

في أمان الله



آخر مواضيع » zero_cool

توقيع : zero_cool

. There is always a way

عرض البوم صور zero_cool   رد مع اقتباس
قديم 31/01/2014, 14:30   المشاركة رقم: 2
المعلومات
الكاتب:
 ChAnDiPa-Dz  
اللقب:
عضــــو جديــــد

الإتصالات
الحالة:
ChAnDiPa-Dz غير متواجد حالياً
وسائل الإتصال:

رائع رائع....*

عرض البوم صور ChAnDiPa-Dz   رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)


حالياً الأعضاء النشيطين الذين يشاهدون هذا الموضوع : 1 (0 عضو و 1 ضيف)
 

(أظهر الكل الأعضاء الذين قاموا بمشاهدة هذا الموضوع : 16
Anis Gladiator , black_death , bomboba , ChAnDiPa-Dz , الديلر الفلسطيني , الصقر الحر 1 , dark dz , Devil-_-H@CKER , gure , hafimomo , jehaad , S1LV3rS3rf3r , saaddjouida , sql sniper , the.scorpion , zero_cool

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

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

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

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
23/55 شرح استغلال ثغرات command execution yasMouh دورة اختراق المواقع والسيرفورات | HCJ 5 25/10/2014 12:05
[2] إكتشاف ثغرات الويب وإستغلالها برمجيا بالبايثون .. Sqli zero_cool قـــــسـم لــغه لــــ python 3 08/10/2014 21:29
[3] إكتشاف ثغرات الويب وإستغلالها برمجيا بالبايثون .. Sqli zero_cool قـــــسـم لــغه لــــ python 6 09/09/2014 15:25
إكتشاف ثغرات الويب وإستغلالها برمجيا بالبايثون [1] zero_cool قـــــسـم لــغه لــــ python 0 12/08/2013 16:59
(الدرس التالت) - اكتشاف ثغرات Remote Command Execution ViRuS_Ra3cH دورة اكتشاف الثغرات | Dr.BiLLi 5 15/07/2013 19:33

الساعة معتمدة بتوقيت جرينتش +1 . الساعة الآن : 08:28.
Copy Right Des 2010 - 2014 To is|sec Organization, Des By  yasMouh 
Powered By vBulletin Special Edition, Secured By Dz-SeC team
Support by Dz-SeC team




RSS RSS 2.0 XML MAP HTML



 
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115