
إطار عمل معياري لتحليل أمان تطبيقات Android APK يدمج أدوات التحليل الثابت والديناميكي والهندسة العكسية لإجراء تقييم شامل للثغرات واختبار الاختراق لتطبيقات الأجهزة المحمولة.
____ __ ____ __
/ /\ \__ ______ _____/ /________ _/ _/___ _________ ___ _____/ /_
/ / / / / / / __ `/ __ / ___/ __ `// // __ \/ ___/ __ \/ _ \/ ___/ __/
/ /_/ / /_/ / /_/ / /_/ / / / /_/ // // / / (__ ) /_/ / __/ /__/ /_
\___\\_\__,_/\__,_/\__,_/_/ \__,_/___/_/ /_/____/ .___/\___/\___/\__/
/_/
QuadraInspect هو إطار عمل لأندرويد يدمج AndroPass و APKUtil و RMS و MobFS، مما يوفر أداة قوية لتحليل أمن تطبيقات أندرويد. AndroPass هي أداة تركز على تحليل أمن آليات المصادقة والتفويض في تطبيقات أندرويد، بينما APKUtil هي أداة تستخرج معلومات قيمة من ملف APK. وأخيرًا، تسهّل MobFS و RMS تحليل نظام ملفات التطبيق من خلال تركيب مساحة تخزينه في بيئة افتراضية.
من خلال الجمع بين هذه الأدوات الثلاث، يوفر QuadraInspect نهجًا شاملاً لتحليل الثغرات في تطبيقات أندرويد. يمكن استخدام هذا الإطار من قبل المطورين والباحثين الأمنيين ومختبري الاختراق لتقييم أمن تطبيقاتهم الخاصة أو تطبيقات الطرف الثالث. يوفر QuadraInspect واجهة موحدة لجميع الأدوات الثلاث، مما يسهل استخدامها ويقلل الوقت اللازم لإجراء تحليل شامل للثغرات. في النهاية، يهدف هذا الإطار إلى زيادة أمن تطبيقات أندرويد وحماية بيانات المستخدمين الحساسة من التهديدات المحتملة.
يتم تعبئة QuadraInspect كمشروع Python قياسي ويتم إدارته باستخدام
مدير الحزم uv.
أسرع طريقة — تثبّت uv وجميع تبعيات Python و كل
أداة وإضافة مدمجة في أمر واحد:
git clone https://github.com/morpheuslord/QuadraInspect
cd QuadraInspect
./install.sh # Linux / macOS (use sudo where tools require it)
على Windows، شغّل install.bat من الدليل المستنسخ. مرّر --deps-only لتثبيت
تبعيات Python فقط وتخطي الأدوات.
التعليمات خطوة بخطوة أدناه تفعل الشيء نفسه يدويًا.
curl -LsSf https://astral.sh/uv/install.sh | sh
(راجع دليل تثبيت uv لـ Windows والطرق البديلة.)
git clone https://github.com/morpheuslord/QuadraInspect
cd QuadraInspect
uv sync
ينشئ uv sync بيئة افتراضية معزولة ويثبّت QuadraInspect من
مجموعة التبعيات المقفلة (uv.lock). تسحب نصوص التحليل المرفقة بعض
المكتبات الإضافية؛ ثبّتها باستخدام:
uv sync --extra tools
uv run quadrainspect # interactive (frame) mode
يمكنك أيضًا تشغيله كوحدة نمطية أو عبر نقطة الدخول القديمة:
uv run python -m quadrainspect
uv run python main.py
على Linux/macOS تتطلب بعض الأدوات المدمجة صلاحيات مرتفعة؛ شغّل الأمر باستخدام
sudoعند الحاجة.
بمجرد تحميل QuadraInspect، شغّل:
QuadraInspect Main>> START install_tools
لتثبيت الأدوات المدمجة و كل إضافة اختيارية في خطوة واحدة، استخدم:
QuadraInspect Main>> START full_install
يتم تنزيل الأدوات إلى دليل tools وتُشغَّل خطوات الإعداد الخاصة بكل أداة
تلقائيًا.
الإضافات هي أدوات اختيارية يساهم بها المجتمع. يتم تعريفها ككائنات AddOn
في quadrainspect/tools/addins.py، لذا فإن المساهمة بواحدة جديدة هي مجرد
إضافة مدخل واحد مع تبعياته ودالة تثبيت قابلة للاستدعاء — لا حاجة لتحرير
عبارة switch/match.
update addins أو
update-addins، والذين ينفذان git pull على النسخة المستنسخة.START addins؛ كلاهما يتطلب بيئة تشغيل Java.لكل وحدة دالة مساعدة بحيث تكون الأوامر والأوصاف مفصلة ويمكن تعديلها للتشغيل.
sudoAdmin وكل الباقي يمكن إجراؤه كمستخدم عاديهذه هي النقاط الرئيسية التي يجب معالجتها للعمل بسلاسة:
args أو باستخدام SET target داخل الأداة.target حيث تبحث جميع الأدوات عن الملف الهدف في ذلك المجلد.هناك وضعان:
|
└─> F mode
└─> A mode
وضع f هو وضع تحصل فيه على الواجهة النشطة لاستخدام النسخة التفاعلية من الإطار مع الموجّه، إلخ.

وضع F هو الوضع العادي ويمكن استخدامه بسهولة
وضع A أو الوضع الوسيطي يأخذ المدخلات عبر الوسائط ويشغّل الأوامر دون أي تدخل من المستخدم، وهذا مقتصر على القائمة الرئيسية، وفي المستقبل أخطط لتوسيع هذه الميزة لتشمل حتى الأكواد المدمجة.
uv run quadrainspect --target <APK_file> --mode argm --command install_tools/tools_name/apkleaks/mobfs/rms/apkleaks

تحتوي القائمة الرئيسية للأداة بأكملها على هذه الخيارات والأوامر:
وضع Frame:
| الأمر | الوصف |
|---|---|
SET target | تعيين اسم الملف الهدف |
START install_tools | إذا لم تكن مثبتة، سيثبّت الأدوات |
START full_install | تثبيت جميع الأدوات والإضافات دفعة واحدة |
LIST tools_name | عرض الأدوات المدمجة |
START apkleaks | استخدام أداة APKLeaks |
START mobfs | استخدام MOBfs للتحليل الديناميكي والثابت |
START andropass | استخدام محلل AndroPass APK |
START addins | بدء مثبّت الأدوات الإضافية |
update addins | تحديث مثبّت الأدوات الإضافية |
help | عرض قائمة المساعدة |
SHOW banner | عرض الشعار |
quit | إنهاء البرنامج |
وضع Args:
| الأمر | الوصف |
|---|---|
install_tools | إذا لم تكن مثبتة، سيثبّت الأدوات |
full-install | تثبيت جميع الأدوات والإضافات دفعة واحدة |
tools_name | عرض الأدوات المدمجة |
apkleaks | استخدام أداة APKLeaks |
mobfs | استخدام MOBfs للتحليل الديناميكي والثابت |
andropass | استخدام محلل AndroPass APK |
addins | بدء مثبّت الأدوات الإضافية |
addins | تحديث مثبّت الأدوات الإضافية |
help | عرض قائمة المساعدة |
banner | عرض الشعار |
كما ذُكر أعلاه، يجب تعيين الهدف قبل استخدام أي أداة.
قائمة APKLeaks مباشرة جدًا أيضًا وهناك بعض الأمور القليلة التي يجب مراعاتها:
SET output و SET json-out يأخذان أسماء ملفات وليس الملفات الفعلية، حيث ينشئان مخرجات في دليل result.SET pattern يأخذ اسم ملف نمط json. يجب أن يكون ملف JSON موجودًا في دليل pattern| الخيار | القيمة المعينة |
|---|---|
SET output | مخرجات لاسم ملف بيانات الفحص |
SET arguments | وسائط التفكيك الإضافية |
SET json-out | اسم ملف مخرجات JSON |
SET pattern | نمط البحث المسبق عن الأسرار |
help | عرض قائمة المساعدة |
return | العودة إلى القائمة الرئيسية |
quit | إنهاء الأداة |
Mobfs مباشرة جدًا، فقط يجب الانتباه إلى رقم المنفذ الذي يكون افتراضيًا على المنفذ 5000، ما عليك سوى بدء البرنامج والاتصال به على 127.0.0.1:5000 عبر متصفحك.
AndroPass مباشرة جدًا أيضًا، فهي تأخذ الملف كمدخل وتقوم بعملها دون أي مدخلات أخرى.