Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
mariana-trench — أداة تحليل ثابتة تركز على الأمان لتطبيقات Android و Java. | Kitploit
أدوات/GitHubGitHub/facebook/mariana-trench
أمان أندرويدالتحليل الثابتتحليل الثغرات الأمنيةتحليل الكودأمن الجوال
GitHubfacebook/mariana-trench

mariana-trench

أداة تحليل ثابتة تركز على الأمان لتطبيقات Android و Java.

عرض المستودع
1.2k156منذ 9 دقائقتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
الموقع الإلكتروني

Mariana Trench

شعار

MIT License .github/workflows/tests.yml

Mariana Trench هي منصة تحليل ثابت موجهة للأمان تستهدف نظام أندرويد.

سيرشدك هذا الدليل خلال إعداد Mariana Trench على جهازك ومساعدتك في العثور على أول ثغرة تنفيذ تعليمات برمجية عن بُعد في تطبيق عينة صغير. هذه التعليمات متاحة أيضًا على موقعنا.

المتطلبات الأساسية

تتطلب Mariana Trench إصدارًا حديثًا من Python. على MacOS يمكنك الحصول على إصدار حالي عبر homebrew:

root@kitploit:~
$ brew install python3

على نظام Linux بنكهة Debian (أوبونتو، Mint، Debian)، يمكنك استخدام apt-get:

root@kitploit:~
$ sudo apt-get install python3 python3-pip python3-venv

يفترض هذا الدليل أيضًا أن لديك Android SDK مثبتًا ومتغير بيئة $ANDROID_SDK يشير إلى موقع SDK.

لبقية هذا الدليل، نفترض أنك تعمل داخل بيئة افتراضية. يمكنك إعداد ذلك باستخدام:

root@kitploit:~
$ python3 -m venv ~/.venvs/mariana-trench
$ source ~/.venvs/mariana-trench/bin/activate
(mariana-trench)$

يشير اسم البيئة الافتراضية أمام موجه الصدفة إلى أن البيئة الافتراضية نشطة.

تثبيت Mariana Trench

داخل بيئتك الافتراضية، تثبيت Mariana Trench سهل مثل تشغيل:

root@kitploit:~
(mariana-trench)$ pip install mariana-trench

ملاحظة: تثبيت pip غير مدعوم حاليًا لأجهزة Mac من Apple silicon؛ يمكنك البناء من المصدر باستخدام التعليمات الموجودة في دليل المطور.

تشغيل Mariana Trench

سنستخدم تطبيقًا صغيرًا جزءًا من وثائقنا. يمكنك الحصول عليه عن طريق تشغيل:

root@kitploit:~
(mariana-trench)$ git clone https://github.com/facebook/mariana-trench
(mariana-trench)$ cd mariana-trench/

نحن الآن جاهزون لتشغيل التحليل:

root@kitploit:~
(mariana-trench)$ mariana-trench \
  --system-jar-configuration-path=configuration/default_system_jar_paths.json \
  --model-generator-configuration-paths=configuration/default_generator_config.json \
  --lifecycles-paths=configuration/lifecycles.json \
  --rules-paths=configuration/rules.json \
  --apk-path=documentation/sample-app/app/build/outputs/apk/debug/app-debug.apk \
  --source-root-directory=documentation/sample-app/app/src/main/java \
  --model-generator-search-paths=configuration/model-generators/

# ...
INFO Analyzed 68937 models in 7.47s. Found 9 issues!
# ...

وجد التحليل 9 مشكلات في تطبيق العينة. مخرجات التحليل هي مجموعة من المواصفات لكل طريقة في التطبيق.

المعالجة اللاحقة

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

root@kitploit:~
(mariana-trench)$ sapp --tool=mariana-trench analyze .
(mariana-trench)$ sapp --database-name=sapp.db server --source-directory=documentation/sample-app/app/src/main/java
# ...
2021-05-12 12:27:22,867 [INFO]  * Running on http://localhost:13337/ (Press CTRL+C to quit)

يخبرنا السطر الأخير من المخرجات أن SAPP بدأ خادم ويب محلي يتيح لنا عرض النتائج. افتح الرابط وسترى المشكلات الأربع التي وجدها التحليل.

استكشاف النتائج

دعنا نركز على مشكلة تنفيذ التعليمات البرمجية عن بُعد الموجودة في تطبيق العينة. يمكنك تحديدها بواسطة رمز المشكلة 1 (لجميع عمليات تنفيذ التعليمات البرمجية عن بُعد) والاستدعاء void MainActivity.onCreate(Bundle) مع وجود 4 مشكلات فقط، من السهل تحديد المشكلة يدويًا ولكن بمجرد تشغيل المزيد من القواعد، تصبح وظيفة التصفية في الزاوية العلوية اليمنى من الصفحة مفيدة.

عرض مشكلة واحدة

تخبرك المشكلة أن Mariana Trench وجدت تنفيذ تعليمات برمجية عن بُعد في MainActivity.onCreate حيث تأتي البيانات من Activity.getIntent على بعد استدعاء واحد، وتتدفق إلى مُنشئ ProcessBuilder على بعد 3 استدعاءات. انقر فوق "Traces" في الزاوية العلوية اليمنى من المشكلة لرؤية مثال على التتبع.

يتكون التتبع الذي كشفته Mariana Trench من ثلاثة أجزاء.

يمثل تتبع المصدر من أين تأتي البيانات. في مثالنا، التتبع قصير جدًا: يتم استدعاء Activity.getIntent مباشرة في MainActivity.onCreate. مصدر التتبع

يمثل جذر التتبع النقطة التي يلتقي فيها تتبع المصدر مع تتبع المصب. في مثالنا، هذه هي طريقة onCreate للنشاط. جذر التتبع

الجزء الأخير من التتبع هو تتبع المصب: هذا هو المكان الذي تتدفق فيه البيانات من المصدر إلى المصب. في مثالنا من onCreate إلى onClick إلى execute وأخيرًا إلى مُنشئ ProcessBuilder. مصب التتبع

تكوين Mariana Trench

قد تسأل نفسك، "كيف تعرف الأداة ما هي البيانات التي يتحكم فيها المستخدم، وما هو المصب؟" هذا الدليل يهدف إلى مساعدتك في البدء بسرعة على تطبيق صغير. لم نغط كيفية تكوين Mariana Trench. يمكنك قراءة المزيد حول ذلك على موقعنا تحت التكوين.

المساهمة

للحصول على دليل متعمق حول البناء من المصدر والتطوير على Mariana Trench، راجع دليل المطور على موقعنا.

الترخيص

Mariana Trench مرخصة بموجب ترخيص MIT.

تنزيل الأداة