time

write your own shellcode 1 كتابة شلكود خاص بك

 سنتكلم هنا عن كيفية كتابة شلكود خاص بك
في البداية نضع تعريف بسيط لمعني كتابة شلكود
 (shellcoding) : كتابة شلكود
هي كتابة كود يمكننا من الاتصال بنضام ما عن بعد والحصول علي صلاحية داخل النضام
تمكننا من السيطرة عليه
لمادا اكتب شلكود ؟ 
 الجميع يعرف ان الا نترنت مليئة شلكود احمل احدها واستعملها مباشرة و افضل مصدر للحصول علي شلكود
metasploit project http://www.metasploit.com/
لكن المشكلة هي
 هل انت متاكد من محتوي الشلكود ؟
 هل يلبي حاجتك ؟
 هل يعمل في البيئة التي تريدها وندوز او لينكس ؟
و كثير من الا شياء
قبل ان ابدأ بمادا يجب ان احيط ؟ 
  و خبرة بنضام وندوز و لينكس   (C)يجب ان تكون لك خبرة في البرمجة بالاسمبلي و لغة 
سأحاول ان اشرح فيما يلي كتابة شلكود في بيئة وندوز
ملاحضة: هناك اختلاف في كتابة شلكود في نضام وندوز عن كتابته في نضام لينكس
نضام لينكس يسمح لنا بالاتصال بالكرنل مباشرة عن طريق الروتين  
int 80 
اما في نضام وندوز فانت لا تستطيع الاتصال بالكرنل او استدعاء دالة مباشرة يجب عليك اولا ان تحصل
 علي عنوان الدالة في المكتبة الخاص بها او ما يعرف ب
DLL (Dynamic Link Library)
هدا العنوان الدي تحصل عليه يختلف من نضام لاخر اي نسخة لاخري مثل

windows xp pack 2 et windows xp pack 3
اما في نضام لينكس فانت تحتاج فقط لجدول الدوال يمكنك مشاهدته هنا
http://bluemaster.iu.hio.no/edu/dark/lin-asm/syscalls.html