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



 
الرئيسيةالرئيسية  البوابةالبوابة  أحدث الصورأحدث الصور  التسجيلالتسجيل  دخولدخول  

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


 

 [الدرس الثاني] سبب الوقوع بثغرة sql injection

اذهب الى الأسفل 
كاتب الموضوعرسالة
Admin
Admin
Admin


عدد المساهمات : 128
نقاط : 385
تاريخ التسجيل : 05/03/2014
العمر : 30
الموقع : العراق

[الدرس الثاني] سبب الوقوع بثغرة sql injection  Empty
مُساهمةموضوع: [الدرس الثاني] سبب الوقوع بثغرة sql injection    [الدرس الثاني] سبب الوقوع بثغرة sql injection  Emptyالخميس مارس 13, 2014 7:37 pm



اقتباس :
سبب الوقوع بثغرة sql injection
سبب حدوث ثغرة sql injection , تفاصيل ثغرة sql injection , شرح ثغرات الحقن , شرح ثغرات sql injection , الحماية من ثغرات الحقن , شرح الحماية من ثغرات الحقن , الحماية من sql injection , شرح الحماية من sql injection , ثغرات sql injection , الحماية من ثغرات sql injection , اقوى دورة sql injection


بسم الله الرحمن الرحيم

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

كيفكم يا احلى اعضاء ، اعضاء منتديات جيوش الهكرز و ASDELY.NET
اليوم اقدكم لكم
[الدرس الثاني] سبب الوقوع بثغرة sql injection
وهاذا الشرح مقدم من منتديات جيوش الهكرز و ASDELY.NET بواسطة ASDELY-ScOrPiOn

ارجوا من الجميع مراجعه باقي الدروس لأهميتها ،
مقدمة دورة الحقن sql injection

[الدرس الاول] مقدمة في لغة mysql وبعض الاساسيات


الدرس هاذا بإمكانك اعتباره شرح حماية من ثغرات sql injection او مفاهيم ثغرات الحقن sql injection

وهاذا الشرح بالنسبة لي الاكثر اهمية ، لا تستهين فيه

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

where ، هذه التعليمه تفيدنا لعمل شرط ، فمثلا انت لديك 100 سجل او بيانات ، وتريد ان تختار سجل واحد حسب شيء معيّن ، يعني مثلا تطلع الاسم حسب الموقع
like ، وهذه تستخدم مع where وهي لتحديد الشرط مساوي لماذا ، وهي لها نفس وظيقة = في ال mysql ،لكن هذه تستخدم اذا كانت القيمه نصيه مثل ASDELY-ScOrPiOn
رح يوضح الامر في المثال بالأسفل

نرجع للمثال في الدرس السابق
لدينا قاعده اسمها aljyyosh.com
وفيها جدول اسمه asdely.net
وداخل الجدول يوجد اعمده باسم name,age,site
والجدول يوجد داخله بيانات او سجلات كما في الصوره التاليه
[الدرس الثاني] سبب الوقوع بثغرة sql injection  1
نريد ان نستخرج الموقع للإسم ASDELY-ScOrPiOn
رح يكون الامر كالتالي
select site from asdely.net where name like 'ASDELY-ScOrPiOn' order by Age desc
ما تهتم ل order by Age desc ما لها اهمية الان ، هي فقط من اجل ان نرتب النتائج ، بقترح تنساها الان وركز باللون الاخضر

في الامر اللي فوق رح يستخرج لنا الموقع الخاص ب ASDELY-ScOrPiOn وهو Aljyyosh.com
يعني النتيجه رح تكون
Aljyyosh.com
شوف كيف وضعنا
كود PHP:
الكود:

where name like 'ASDELY-ScOrPiOn' 



بمعنى قلنا له جيب الموقع من جدول asdely.net عندما الاسم يكون ASDELY-ScOrPiOn
يعني where معناها عندما
و like معناها =

طبعا هيك بكون خلصنا من اللي نسينا نشرحه بالدرس السابق

والان ندخل لموضوعنا وهو
سبب الوقوع بثغرة sql injection
على منتديات جيوش الهكرز

لماذا المبرمج يقع بثغرة الحقن sql injection ؟؟؟ او ما هو السبب في حدوث ثغرة sql injection ؟؟؟
الجواب واضح وبسيط ، هو انه المبرمج ما قام بفلترت اي تصفيّت او تنظيف او تنقيح المتغير المدخل

خلينا نرجع للبرمجة شويّ
يوجد في لغات البرمجة متغيرات يتم إدخال القيمه لها من قبل المبرمج مثل
كود PHP:
الكود:

$asdely = "aljyyosh.com"; 



وهنالك متغيرات يتم ادخال القيمه لها حسب الزائر او المتصفح للموقع مثل
كود PHP:
الكود:

$asdely = $_GET['asdely']; 



في المتغير الاول المبرمج عرف داخل المتغير الاول قيمه تساوي aljyyosh.com
وفي المتغير الثاني المبرمج عرّف داخل المتغير قيمه تيجي من قبل الزائر

خلينا نعطي مثال
انت الان دخلت على موضوع في منتديات جيوش الهكرز
لنفرض ان الموضوع هو
http://www.aljyyosh.com/vb/showthread.php?t=29424
عندما دخلت للموضوع انت ادخلت قيمه للمتغيّر ، وهو رقم الموضوع اللي انت دخلت عليه ، وبهذه الطريقه عرف الموقع انه انت بدك الموضوع اللي رقمه 29424
شوف بالرابط ايش موجود
t=29424
يعني لو وضعنا
t=29427 على سبيل المثال ، رح يدخلنا لموضوع اخر
بهذه الحاله انت ادخلت للمتغير قيمه وهي رقم الموضوع
طيب يا ASDELY-ScOrPiOn ، ايش نستنتج انه مكتوب في الملف هاذا showthread.php ، اللي دخلنا عليه وحطينا قيمه من عندنا اللي هي 29424
اكيد رح يكون فيه
كود PHP:
الكود:

$t = $_GET['t']; 



طبعا كلمة $t هذه اسم المتغيّر ، مو مهم تكون t تقدر تحط اللي بدك اياه
اما ال t اللي بين قوسين اذا غيرتها يتغير الرابط
يعني مثلا لو وضعنا حرف m بدل t رح يصير رابط الموضوع اللي دخلنا عليه هو
http://www.aljyyosh.com/vb/showthread.php?m=29424


طيب هيك عرفنا المتغيّر اللي له دور اساسي في ثغرت الحقن sql inection
بس بعدنا معرفناش كيف صارت الثغره
نعطي مثال للتوضيح
مثلا عندنا قاعده اسمها aljyyosh.com
وداخلها جدول اسمه asdely.net وداخله اعمده وداخل الاعمده يوجد سجلات كما في الصوره التاليه

[الدرس الثاني] سبب الوقوع بثغرة sql injection  1

طيب المبرمج طلب الاسماء اللي موقعهم aljyyosh.com
رح يطلع له ASDELY-ScOrPiOn , black.jaguar

طيب خلينا نستخرج السجلات بكود برمجه ويكون موضح فيه الثغره

الصوره توضح

[الدرس الثاني] سبب الوقوع بثغرة sql injection  2
شوفوا كيف صار الامر
الامر معناه ، اختار الاسماء من جدول اسمه asdely.net عندما الموقع يكون حسب قيمة المتغير $site

شوفوا المتغير $site من النوع اللي الزائر يدخل له القيمه!! ، معناتو نحن نقدر ندخل القيمه اللي نريدها فيه ، لانه مش حاميه ومش منقحه
بمعنا نقدر هسا نضيف كود mysql داخله وسنرى في الدروس القادمه كيف سندخل كود لاخراج بيانات من جدول ثاني
يعني شوف نقدر الان نضيف مثلا انه يرتب النتائج تنازلي
معناتو وقتها بندخل في المتغير القيمه التاليه
aljyyosh.com order by Age desc
يصير الامر كانه
select name from asdely.net where site like 'aljyyosh.com' order by Age desc
طبعا هاذا الامر مثال على اننا نقدر ندخل كود اخر على الكود السابق

لهنا بإمكاننا اعتبار الدرس قد انتهى
بتمنا تكونوا فهمتوا اللي مكتوب فوق ، اقرأ الموضوع اكثر من مره حتى تفهمه
واذا اشي مش فاهمه ادخل لقسم المشاكل والإستفسارات واضف موضوع بمشكلتك ورح ارد عليكم انا والشباب
وهاذا رابط القسم
http://www.aljyyosh.com/vb/forumdisplay.php?f=19

ولمن يريد ان يعرف كيف يتم حماية المتغير من ثغرات sql injection يجب ان يتم تمرير المتغير في دوال الحماية
مثلا
اذا كانت القيمه المدخله للمتغير هي فقط رقم ولا تريد اي قيمه اخرى فيكفي ان تمرر المتغير في دالة
intval()
واذا كان غير محدد نوع القيمه فبإمكانك تمريره لدالة
mysql_real_escape_string()
او لدالة
addslashes()
بالنهاية ارجوا الدعاء لي ولوالديّ
لا تبخل بالرد[الدرس الثاني] سبب الوقوع بثغرة sql injection  Mad

بالتوفيق للجميع
اخوكم ASDELY-ScOrPiOn



سبب الوقوع بثغرة sql injection
سبب حدوث ثغرة sql injection , تفاصيل ثغرة sql injection , شرح ثغرات الحقن , شرح ثغرات sql injection , الحماية من ثغرات الحقن , شرح الحماية من ثغرات الحقن , الحماية من sql injection , شرح الحماية من sql injection , ثغرات sql injection , الحماية من ثغرات sql injection , اقوى دورة sql injection
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://hector-23as.wwooww.net
 
[الدرس الثاني] سبب الوقوع بثغرة sql injection
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» [الدرس الثالث] معرفة اذا الموقع مصاب بثغرة sql injection - اكتشاف ثغرات sql injection
» [الدرس الثاني] كيف يعمل الموقع؟! ، وماذا احتاج لعمل موقع؟!
» [الدرس الرابع] شرح order+by لمعرفة عدد الأعمده - دورة sql injection
» مقدمة دورة الحقن sql injection
» [الدرس السابع] تفاصيل حول قاعدة information_schema

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
 :: قسم اختراق المواقع والسيرفرات والشبكات :: دورة اختراق المواقع بثغرة sql-
انتقل الى: