تقييم الموضوع :
  • 3 أصوات - بمعدل 3.67
  • 1
  • 2
  • 3
  • 4
  • 5
استفتاء : ضع هنا كل ما يتعلق بالهندسة العكسية
#1
Lightbulb 
بسم الله الرحمن الرحيم
السلام عليكم و رحمة الله و بركاته

سنقوم بإثراء هذا الموضوع من خلال مشاركات الأعضاء .

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

ملاحظة : ردود الشكر لا فائدة منها اذا أجابك احد الأعضاء ابحث عن سؤال آخر  Big Grin
أعضاء أعجبوا بهذه المشاركة : Cyros
#2
سأضع السؤال الأول : 
يقال أن أول برنامج كتب بلغة الآلة , Binary ! 
لنقل ان اول برنامج كتب بالباينري ... لن ندخل في امور ال Compile و لا الOpcodes و التفصيلات الأخرى ... 
أين المحرر الذي كتب فيه البرنامج هه ؟ 
ربما سؤال سخيف لكنه يتمحور حول موضوع طويل جدا ... ننتظر بعض الإجابات
أعضاء أعجبوا بهذه المشاركة :
#3
نريد شرح تعليمات المنقح
jnz,jmz,jn,push,mov,daxالخ...
أعضاء أعجبوا بهذه المشاركة :
#4
(13-01-2019, 06:09 AM)تلميذ كتب : نريد شرح تعليمات المنقح
jnz,jmz,jn,push,mov,daxالخ...

صفحة المبتدئين كتاب الفريق الأول كتاب الفريق الثاني
لَّا إِلَٰهَ إِلَّا أَنتَ سُبْحَانَكَ إِنِّي كُنتُ مِنَ الظَّالِمِينْ
أعضاء أعجبوا بهذه المشاركة : Untold
#5
(13-01-2019, 06:09 AM)تلميذ كتب : نريد شرح تعليمات المنقح
jnz,jmz,jn,push,mov,daxالخ...

صيغة الأمر MOV 
mov destination , source 
مثلا : eax = 1 , ebx = 5
mov eax,ebx 
eax ستصبح قيمته 5 بعدما كانت 1 / ملاحظة : لا تخلط بين تعليمة MOV و ADD 
____________________
add eax,ebx 
eax ستصبح قيمته 6 لأن ADD تخص الجمع 
____________________
التعليمة PUSH تقوم بدفع قيمة المعامل للمكدس Stack لغرض حفظ قيمته // ستكون اعلى قيمة في المكدس
مثلا : eax = 4
Push eax // تم دفع القيمة اعلى المكدس 
call xxxxxxxx // قام البرنامج بالمرور بدالة مثلا و أثناء المرور تغيرت قيمة eax ما العمل ؟ 
لنفرض أن قيمة eax أصبحت 445887F
التعليمة POP عكسها تماما تسترد كل ما تم دفعه عن طريق PUSH ...(أعلى قيمة في المكدس)
pop eax // تسترجع القيمة التي تم دفعها و هي 3 , أظن الفكرة وصلت 
___________________ 
أوامر القفز لها معامل واحد : JMP operand و هو العنوان الذي تؤدي إليه القفزات 
مثلا لدينا عنوان 0054784D نريد الذهاب إليه دون شروط : 
jmp 0054784D // أمر قفز عادي (غير مشروط) يقفز مهما كانت النتيجة 
الآن القفزات المشروطة : jz , je / jnz , jne (يوجد غيرها ذكرتها كمثال)
je و jz لهما معنى واحد , إلا ان jz متعلقة بالzero flag 
مثال : eax = 10 , ebx = 10 
cmp eax,ebx // التعليمة cmp هي للمقارنة بين معاملين , و هي تطرح المعامل الثاني من الأول 
je 0054784D // اقفز اذا كانت نتيجة العملية تساوي الصفر , نفس الشيء بالنسبة ل jz اقفز اذا كانت راية ZF تساوي الصفر 
jne و jnz عكس التعليمتين السابقتين ! / jump if not zero | jump if not equal to zero 
___________________
أخي الحبيب لا يوجد تعليمة dax ولا jmz في اوامر أسمبلي x86 . راجع معلوماتك 
لتتأكد أكثر قم بزيارة المرجع التالي : 
https://www.felixcloutier.com/x86/
أعضاء أعجبوا بهذه المشاركة : Small Axe
#6
ما الفرق بين برنامج مضغوط وبرنامج محمي 
ASPack
ASProtect
?
أعضاء أعجبوا بهذه المشاركة :
#7
(03-08-2020, 10:00 AM)Cyros كتب : ما الفرق بين برنامج مضغوط وبرنامج محمي 
ASPack
ASProtect

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

الحماية الهدف منها منع الاطلاع والتعديل على كود البرنامج 
وللعلم الحماية ايضا قد تكون ضغط وحماية للبرنامج في نفس الوقت
أعضاء أعجبوا بهذه المشاركة : Cyros
#8
هل هناك فرق بين الحماية والتشفير؟
وملفائدة الضغط اذا كانت الحماية ضعط+حماية OE0 في نفس الوقت؟
وممكن شرح بشكل عام عن  hookو inline patching 
اسمع كثير من انه يمكن كسر حماية برنامج بدون إيجاد oep و إصلاح IAT!

وسؤال هل يختلف مثلا كسر حماية برنامج محمي ب VMPROTECT عن مكتبة dll محمية بموجب vmprotect ؟
أعضاء أعجبوا بهذه المشاركة :
#9
(05-08-2020, 12:44 PM)Cyros كتب : وممكن شرح بشكل عام عن  hookو inline patching 
اسمع كثير من انه يمكن كسر حماية برنامج بدون إيجاد oep و إصلاح IAT!
وسؤال هل يختلف مثلا كسر حماية برنامج محمي ب VMPROTECT عن مكتبة dll محمية بموجب vmprotect ؟

اخي تابع صفحة المبتدئين https://www.at4re.net/f/thread-1636.html

وهذه امثله 
كسر برنامج محمي AsPr0tect باستخدام اداة ASPr0t3ct SKE 2.x In!ne [email protected]
كسر برنامج مضغوط MoleBox بدون فك الضغط بواسطة  hook
شرح عمل انلاين باتش لبرنامج مضغوط (inline patching)
درس عمل لودر لكسر ملف DLL بواسطة dup2
أعضاء أعجبوا بهذه المشاركة : samoray , Cyros , rce3033
#10
كيف أقوم بفتح ملفات .swf اقصد أجد هنا الكثير من ينشر دروس مسجلة .swf بدون ملف .htm
بحثت بجوجل وجدت Adobe Flash player نزلته على المتصفح مانفع
جربت حول على موقع cloud إلى mp4 أيضا يكون هناك خلل أثناء تشغيل الفيديو 
هل هناك طريقة لفتحه؟
أعضاء أعجبوا بهذه المشاركة : rce3033


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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم