اندرويد · APK التحليل
كيف يقوم المصدق بإنشاء رمز تسجيل الدخول
تتبّع رمز تسجيل الدخول المكوّن من ستة أرقام في ملف APK المنشور لتطبيق Aegis، ثم حرّك الساعة التجريبية لترى سبب تغيّره كل 30 ثانية.
قراءة دراسة حالة Androidالهندسة العكسية ، مع مساعدك البرمجي
اسأل وكيل البرمجة عن تطبيق أو لعبة أو موقع. تمنحه REA الأدوات لفحص الكود الذي يفسر الإجابة.
دراسات الحالة → , استقصاءات وعروض تفاعلية.
المدوّنة → , أساليب وملاحظات عن إعادة البناء.
انسخ هذا الطلب إلى مساعد البرمجة لديك:
ثبّت REA واربطه بمساعد البرمجة هذا باستخدام npx rea-agents@latest setup. اعرض خطة الإعداد أولاً وانتظر موافقتي، ثم تحقّق من التثبيت.
أو نفّذ هذا الأمر في الطرفية:
npx rea-agents@latest setup
راجع خطة الإعداد ووافق عليها، ثم أعد تشغيل المساعد.
أول مرة ، أو مفقود Node.js أو المساعد البرمجي? اتبع دليل الإعداد خطوة بخطوة →
الهندسة العكسية هي فهم كيفية عمل البرمجيات عبر فحص البرنامج نفسه. مع REA، يستطيع وكيلك تتبّع الكود وشرح ميزة ومساعدتك على إعادة بنائها.
أعطِ وكيلك برنامجًا أو صفحة واطرح سؤالًا.
تعيد REA الكود والمراجع والملاحظات أثناء التشغيل.
يستخدم وكيلك النتائج لشرح الميزة أو إعادة بنائها.
لماذا تعطي الآلة الحاسبة 220 عند حساب 200 + 10%؟
0x180124945: MOV EAX, dword ptr [R13 + 0x18]
0x180124949: CMP EAX, 0x5c
0x18012494c: JZ 0x180124aba
0x180124952: CMP EAX, 0x5b
0x180124955: JZ 0x180124aba
0x18012495b: MOV EDX, 0x64
0x180124960: LEA RCX, [RSP + 0x160]
0x180124968: CALL 0x180122650
0x18012496e: LEA RDX, [R13 + 0x160]
0x180124975: LEA RCX, [RSP + 0x78]
0x18012497a: CALL 0x180109720
0x18012497f: MOV RSI, RAX
0x180124982: MOV qword ptr [RSP + 0x28], RAX
0x180124987: LEA RDX, [RSP + 0x160]
0x18012498f: MOV RCX, RAX
0x180124992: CALL 0x180123190
; … value-copy instructions omitted …
0x180124a14: MOV RDX, RDI
0x180124a17: LEA RCX, [RSP + 0xf8]
0x180124a1f: CALL 0x180109720
0x180124a24: LEA R8, [RSP + 0x30]
0x180124a29: MOV RDX, RAX
0x180124a2c: LEA RCX, [RSP + 0xb8]
0x180124a34: CALL 0x180123c10
يمكنك فك التعليمات ، اتبع المكالمات وظيفة وإعادة بناء الحساب.
اطرح السؤال نفسه على وكيلك
استخدام REA لتفقد Windows آلة حاسبة. لماذا 200 + 10% منح 220?
بعد + ، يأخذ زر ٪ نسبة مئوية من الرقم الأول.
10% of 200 = 20200 + 20 = 220
لنجرب مثالين: تغيير سرعة لعبة، ثم إعادة بناء زر % في الحاسبة.
مثال 01 · Chromeلعبة الديناصورات
تزداد سرعة اللعبة كلما واصلت الجري. لإعادة بنائها مع إمكانية ضبط السرعة، علينا أولًا معرفة كيف تتغير السرعة.
استخدام REA لتفقد هذه اللعبة ديناصور. لماذا لا تحصل على أسرع? عرض قاعدة السرعة ، ثم بناء نسخة صغيرة مع سرعة قابل للتعديل.
يتيح REA للوكيل قراءة كود اللعبة أثناء تشغيلها. تبدأ السرعة من 6 وتزيد قليلًا مع كل تحديث ما دامت أقل من 13.
أعدنا بناء هذه القاعدة في اللعبة المصغرة أدناه وأضفنا شريطًا لضبط السرعة. ابدأ اللعب، ثم اختر سرعتك.
القاعدة الأصلية: ابدأ من 6 ، ثم زد نحو 13.
الهدف الذي تم فحصه: وايو Chromium- مستمد متصفح الطبعة.
if (this.currentSpeed < this.config.MAX_SPEED) {
this.currentSpeed += this.config.ACCELERATION;
}
تبدأ في 6. إضافة 0.001 كل تحديث دون تصادم ، في حين أن السرعة أقل 13.
ماذا يفعل كل جزء
REA تفقد إصدار متصفح هتب من خلال اتصال التصحيح المحلي وعاد تحميلها index.js، بما في ذلك مصدرها وهضمها.
ACCELERATION: 0.001,
MAX_SPEED: 13,
SPEED: 6
اتصلنا بوظيفة تحديث اللعبة الأصلية في فحص متصفح متحكم فيه ، مع تعطيل العقبات والجدولة التلقائية. بعد 4000 تحديث ، كانت السرعة 10.0 ؛ بعد 10000 ، كان 13.0 ، مقربا إلى رقم عشري واحد.
تحافظ اللعبة المصغرة الجديدة على قاعدة السرعة هذه. يعد رمز الرسم والقفز والتصادم تطبيقا تعليميا صغيرا. افتح المختبر لرؤية رمز جديد وتشغيل نفس الاختيار السرعة.
لتفقد الهدف بنفسك ، اتبع خطوات اتصال المتصفح باستخدام صفحة الديناصورات. امنح وكيلك عنوان ورل للصفحة ونقطة نهاية التصحيح المحلية ، ثم انسخ المطالبة أعلاه.
مثال 02 · Windows آلة حاسبة
يعمل زر % بشكل مختلف بعد + و×. لنعثر على القاعدتين ونجربهما في حاسبة صغيرة.
استخدام REA لتفقد Windows زر ٪ آلة حاسبة. استعادة القواعد بعد + و × ، ثم بناء آلة حاسبة صغيرة تستخدم على حد سواء.
يساعد REA الوكيل على قراءة الكود وراء زر %. يطبق الكود قاعدتين مختلفتين:
10% of 200 = 20 → 200 + 20 = 220
200 × 0.1 = 20
أعدنا بناء القاعدتين أدناه. اختر + أو ×، واضغط %، ثم =.
10 ٪ من 200 = 20. ثم 200 + 20 = 220.
لهذا المثال, previous = 200 و current = 10.
if (operation == multiply || operation == divide) {
percent = current / 100;
} else {
percent = current * previous / 100;
}
من التطبيق المثبت إلى زر ٪ العمل
ms-calculator:. ثم يقوم الوكيل بتحديد مكتبة التطبيق المثبت.
100.
0x180124945: MOV EAX, dword ptr [R13 + 0x18]
0x180124949: CMP EAX, 0x5c
0x18012494c: JZ 0x180124aba
0x180124952: CMP EAX, 0x5b
0x180124955: JZ 0x180124aba
0x18012495b: MOV EDX, 0x64
#define IDC_MUL 92 // 0x5c
#define IDC_DIV 91 // 0x5b
#define IDC_PERCENT 118 // 0x76
0x64 = 100
تفتيشها مع REA 4.1.0: Windows آلة حاسبة 11.2508.4.0, س 64. يستخدم الملخص المقروء أسماء من المصدر العام لمايكروسوفت لشرح الفرع المسترد.
النسبة المئوية للتنفيذ · حالات اختبار مايكروسوفت · دليل الإعداد الأصلي
استكشف ميزة في تطبيق أو لعبة منشورة، مع الكود والنتائج التي جرى التحقق منها.
اندرويد · APK التحليل
تتبّع رمز تسجيل الدخول المكوّن من ستة أرقام في ملف APK المنشور لتطبيق Aegis، ثم حرّك الساعة التجريبية لترى سبب تغيّره كل 30 ثانية.
قراءة دراسة حالة AndroidElectron * ميزة تتبع
تتبّع JavaScript المضمّن في Notion وصولًا إلى حافظة النظام، وشاهد كيف يحافظ النسخ على بيانات الكتل الغنية.
قراءة Notion دراسة حالةمواطن * إعادة الإعمار
استخلص كيف يتحول موضع الكرة إلى صوت يمينًا أو يسارًا في لعبة Windows من عام 1996.
قراءة DX-Ball دراسة حالةالتحقيق الأول الخاص بك
تحميل ملاحظاتنا سبيل المثال ، تتبع لها CSV تصدير ، وتحقق من إدخال واحد تم تغييره.
تغطي هذه الأدلة الإعداد وأول استقصاء لكل نوع من البرمجيات.
فحص الوظائف والسلاسل والمراجع وعلاقات استدعاء الوظائف في الملفات التنفيذية والمكتبات.
تحليل دليل برامج كود الآلةوحدات الخريطة ، والطرق ، والتصنيف الدولي للبراءات والتبعيات الأصلية من مجلد التطبيق أو ASAR أرشيف.
سير عمل التطبيقالتقط المتصفح المحدد أو نشاط العملية ، ثم قارن النتائج عبر عمليات التشغيل.
دليل مراقبة المتصفحاستخدام REA لتفقد https://rea.tools/. استنساخ هذا الموقع بالنسبة لي.
نعم ، هذا واحد.
استخدام REA لإعادة بناء هذه اللعبة من تنفيذها. استعادة منطق اللعب في ج واختباره ضد الأصلي.
اقرأ الأسئلة الشائعة , الإعداد والأسئلة المتكررة.
انضم إلى Discord , احصل على المساعدة وناقش تحليلاتك.
GitHub issues , أبلغ عن خلل أو اطلب ميزة.