تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ما هي الادوات التي تتمنى ان تكون موجودة؟
#1
Question 
Salam
أسأل الله أن يديم عليكم نعمة الصحة والعافية والبركة في العمر و يسعدكم في الدنيا والآخرة.

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

ولكن في بعض الأحيان قد تخبر نفسك: سيكون ذلك حقًا رائعًا إذا كانت هنالك اداة لفعل كذا مهمة. ما هذة الاداة؟
ما الذي تود استخدامة/تحتاجة وبشكل يومي غير موجود اليوم، أو موجود، ولكن ليس بالطريقة التي تريدها أن تكون؟
ما هي الادوات التي تتمنى ان تكون موجودة؟

هذا الموضوع للنقاش ولكي نستخدم تقنية العصف الذهني Big Grin  والهدف الاساسي منه هو ايجاد افكار لبرامج يمكن للفريق العربي للهندسة العكسية ان يقوم بتطويرها/برمجتها ونشرها لكي تستخدم من قبل مجتمع الهندسة العكسية. rose 

يرجى الابقاء على جوهر الموضوع وعدم الخوض في امور اخرى Heart
قوانين المنتدى العام

بأنتظار تفاعلكم Cafe
سبحان الله وبحمده، سبحان الله العظيم
أعضاء أعجبوا بهذه المشاركة : [email protected] , xdvb_dz , Small Axe , 0b3l1sk
#2
اداة تقوم بتقليد خطواتك اثناء تنقيح برنامج معين وخاصة البرامج المحمية التي لا يمكن عمل نقاط توقف لها ، فهي تجعلك تعدل كل شي بشكل يدوي كل مرة  الى ان تصل للحل  
في نفس الوقت الاداة اذا عملت بشكل صحيح في النهاية ستكون صنعت لودر او ماشابه لانها قلدت خطواك الى ان وصلت للباتش النهائي Smile
أعضاء أعجبوا بهذه المشاركة : Gu-sung18
#3
اذاً فكرتك هي اداة تقوم بتسجيل عملية التنقيح صحيح؟ وبعدها تقوم بتنفيذ ما قمت به مرة اخرى؟ توجد بعض البرامج التي تمس فكرتك
ولكني لست متأكد اني فهمت فكرتك باكملها
سبحان الله وبحمده، سبحان الله العظيم
أعضاء أعجبوا بهذه المشاركة : mohamad
#4
صحيح بالضبط تسجيل ما اقوم به واعادته اليا، الموضوع يشبه olly script نوعا ما ، المشكلة هنا ان الامر ممل مع البرامج المحمية التي تجعلك تعيد وتكرر التعديلات كل مرة عند التجريب ولا يمكن الاعتماد على العناوين لفعل ذلك
أعضاء أعجبوا بهذه المشاركة :
#5
اضنك ستحب برامج الـ timeless debugger
مثلاً توجد  QIRA 
شاهد هذا الفيديو من geohot حول هذه الاداة https://youtu.be/eGl6kpSajag?t=366
المبدأ هو ان الاداة تسجل كل التغييرات وتمكنك من السفر عبر الزمن الى اي نقطة بالمنقح. كل تغيير قمت به كل نقطة توقف كل تعليمة نفذت يتم تسجيلها.

اخطأت بشيء؟ يمكن الرجوع بالزمن لتلك النقطة.
http://qira.me/
لديه على يوتيوب تقريباً اربع فيديوهات عندما كان يقوم بعمل ستريم وهو يطور ويحسن بالاداة احدها 8 ساعات والاخر 4 و الثالث 2 والاخير حوالي 4 ساعات حول استخدامها لتحليل ثغرة
--------------
كذلك توجد اداة  record-replay من موزيلا،
إقتباس :
rr aspires to be your primary C/C++ debugging tool for Linux, replacing — well, enhancing — gdb. You record a failure once, then debug the recording, deterministically, as many times as you want. The same execution is replayed every time.


هنا استخدمت لتحليل برنامج معقد مثل  JavaScriptCore
https://blog.ret2.io/2018/06/19/pwn2own-2018-root-cause-analysis/

موقع الاداة ومعلومات اكثر عنها
https://rr-project.org/

شركة مايكروسوفت ايظاً تبنت الفكرة، الفريق الامني الخاص بها يستخدم هذه التقنية لتقليل الوقت والجهد، فعندما يتم ابلاغهم من قبل هكر عن ثغرة بدلاً من ان يستغرق الامر وقتاً طويلاً باعادة انتاج الخطوات التي اتبعها يمكنهم تسجيل هذه الخطوات والسفر بالزمن الى الامام او الى الوراء ورؤية ما حدث فعلاً.
https://msrc-blog.microsoft.com/2019/05/29/time-travel-debugging-its-a-blast-from-the-past/

لن  اشرح كثيراً فهم اوصلوا الفكرة عن طريق تلك المقالة افضل بالف مرة مما يمكني شرحة وهذا جزء منها
إقتباس :
Understanding time travel debugging
Whether you call it “Timeless debugging”, “record-replay debugging”, “reverse-debugging”, or “time travel debugging”, it’s the same idea: the ability to record the execution of a program. Once you have this recording, you can navigate forward or backward, and you can share with colleagues.  Even better, an execution trace is a deterministic recording; everybody looking at it sees the same behavior at the same
.time. When a developer receives a TTD trace, they do not even need to reproduce the issue to travel in the execution trace, they can just navigate through the trace file
:There are usually three key components associated to time travel debugging
A recorder that you can picture as a video camera  -
A trace file that you can picture as the recording file generated by the camera  -
A replayer that you can picture as a movie player  -
 
رغم انهم جعلوا الاداة متوفرة للعامة ولكنهم لم  يجعلوا الاداة مفتوحة المصدر Sad
اذاً هنالك طريقتان بنظري

الاولى هي بعمل MOD لمنقح x64dbg واضافية هذه التقنية الية عن طريق تحويل الكود من QIRA  مثلاً اليه، ليس التقنية كلها بل فقط خاصية التسجيل وتشغيل التسجيل مرة اخرة، سيتم برمجة ميزة حفظ جميع المعلومات التي تم تسجيلها وتصدير ملف بالبيانات المسجلة وربما تصدير لودر جاهز لديه كامل المعلومات ويمكنة اعادتها من طرف اي شخص يريد كسر البرنامج او
ازالة الحماية عنه.
وربما نظيف خاصية المحاكاة عن طريق Unicorn لدعم الامر (الاخ Coldzer0 برمج محاكي يستخدم Unicorn ويمكن ان نستفاد من خبرته)لكي يكون لدي كامل التحكم في الذاكرة
ولكن بهذه الحالة فاننا نقوم بانشاء تعديلات هائلة لـ x64dbg ولكن لها فائدة عظيمة جداً فهذا الـ MOD  سيسهل عليك حياتك ليس فقط في عملية الاتمته بل السجل سيسهل
طريقة الكسر بسريال وهمي.

الطريقة الثانية هي برمجة اضافة لـ x64dbg تقوم بتسجيل التغييرات التي قمت بها بالاضافة الى الازرار التي قمت بالضغط عليها (F9 - F8 - F7 الخ) وتصدير سكربت، هذا السكربت نفس الاضافة يمكنك استيراده اليها لتقوم بتنفيذ ما قمت به من عمليات تعديل وغيرها.

للتخلص من الاعتمادية على العناوين نقوم بالاعتماد على الانماط  patterns والتواقيع signatures
لذلك نحتاج تصميم نظام مثل flair الخاص بـ IDA pro
سبحان الله وبحمده، سبحان الله العظيم
أعضاء أعجبوا بهذه المشاركة : fantazma , mohamad , kOuD3LkA , Cyperior , samoray , 0b3l1sk
#6
الطريقة التانية بنظري هي الاقرب والابسط للتنفيذ , واذا حدث ووجدت ستكون اضافة عملاقة ل x64 , المهم هو تسجيل كل التحركات في المنقح والاهم البحث عن نصوص معينة للتعديل عليها او بجوارها,  او كما قلت عن طريق signature معين  , ولك جزيل الشكر على ردودك الجميلة والمفصلة
أعضاء أعجبوا بهذه المشاركة : Gu-sung18 , samoray


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


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