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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
AndroTickler — مجموعة أدوات اختبار الاختراق والتدقيق لتطبيقات أندرويد. | Kitploit
أدوات/GitHubGitHub/ernw/androtickler
أمان أندرويدالتحليل الثابتالتحليل الديناميكي (عزل)تحليل الثغرات الأمنيةاختبار اختراق تطبيقات الجوالجمع المعلوماتاختبار الاختراق
GitHubernw/androtickler

AndroTickler

مجموعة أدوات اختبار الاختراق والتدقيق لتطبيقات أندرويد.

عرض المستودع
2544847منذ سنة واحدةتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

أندروتيكلر

أداة جافا تساعد في اختبار اختراق تطبيقات أندرويد بشكل أسرع وأسهل وأكثر فعالية. يقدم أندروتيكلر العديد من ميزات جمع المعلومات والفحوصات الثابتة والديناميكية التي تغطي معظم جوانب اختبار اختراق تطبيقات أندرويد. كما يقدم العديد من الميزات التي يحتاجها مختبرو الاختراق أثناء اختباراتهم. يتكامل أندروتيكلر أيضًا مع فريدا لتوفير تتبع ومعالجة الدوال. تم نشر الأداة سابقًا تحت اسم تيكلر.

يتطلب أندروتيكلر مضيف لينكس وجهاز أندرويد متجذر متصل بمنفذ USB. لا تقوم الأداة بتثبيت أي شيء على جهاز أندرويد، فهي تنشئ فقط دليلاً باسم Tickler على /sdcard. يعتمد أندروتيكلر على Android SDK لتشغيل الأوامر على الجهاز ونسخ بيانات التطبيق إلى دليل TicklerWorkspace على المضيف لمزيد من التحليل. TicklerWorkspace هو دليل العمل الخاص بأندروتيكلر، ولكل تطبيق دليل فرعي منفصل في TicklerWorkspace يمكن أن يحتوي على ما يلي (اعتمادًا على إجراءات المستخدم):

  • دليل DataDir: نسخة من دليل بيانات التطبيق
  • دليل extracted: مخرجات أداة apktool على التطبيق، تحتوي على كود smali والموارد والمكتبات... إلخ.
  • دليل bgSnapshots: يحتوي على لقطات الخلفية المنسوخة من الجهاز.
  • دليل images: يحتوي على أي لقطات شاشة تم التقاطها للتطبيق.
  • دليل JavaCode: يحتوي على كود جافا للتطبيق تم فك ترجمته بواسطة أدوات dex2jar و JD
  • دليل logs: يحتوي على ملفات السجل التي تم إنتاجها بواسطة -t -log، كما هو موضح أدناه
  • دليل transfers: الملفات والأدلة المنسوخة من الجهاز إلى المضيف باستخدام -copy2host
  • AndroidManifest.xml: ملف البيان الخاص بالتطبيق وفقًا لـ apktool
  • base.apk: ملف APK للتطبيق المثبت على الجهاز
  • debuggable.apk: نسخة قابلة للتصحيح من التطبيق، تم إنتاجها بواسطة -dbg

يوجد دليل libs وملف الإعدادات Tickler.conf في نفس دليل ملف jar. يحدد ملف الإعدادات موقع دليل TicklerDir على المضيف ودليل Tickler على /sdcard لجهاز أندرويد. إذا لم يكن ملف الإعدادات موجودًا أو لم يتم تعيين هذين الدليلين، فسيتم استخدام القيم الافتراضية (Tickler_workspace في الدليل الحالي و /sdcard/Tickler على التوالي). يحتوي دليل Tickler_lib على بعض مكتبات جافا والأدوات الخارجية التي يستخدمها أندروتيكلر مثل apktool و dex2jar.

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

  • Java 7 أو أحدث
  • أدوات Android SDK (adb وأدواتها)
  • sqlite3

هناك أدوات أخرى مطلوبة لبعض الميزات، لكن أندروتيكلر يمكنه العمل بدونها:

  • فريدا
  • jarsigner

كيفية بنائه

  1. بناء الأداة من الكود

    gradle build

  2. انقل AndroTickler.jar إلى نفس دليل Tickler_lib وملف Tickler.conf (يتم إنشاؤها تلقائيًا في build/libs)

  3. اجعل dex2jar قابلاً للتنفيذ (libs/notJars//dex2jar-2.1/d2j-dex2jar.sh و libs/notJars//dex2jar-2.1/d2j_invoke.sh)

  4. قم بتوصيل جهاز أندرويد الخاص بك مع التطبيق المراد اختباره مثبتًا عليه

ملاحظة: إذا فشل بناء الكود المصدري، يمكنك تنزيل أحدث إصدار مترجم من علامة التبويب الإصدارات

الإصدار الحالي يقوم بما يلي:

مساعدة الأوامر

root@kitploit:~
java -jar AndroTickler.jar -h

جمع المعلومات / التحليل الثابت:

سرد التطبيقات المثبتة على الجهاز:

root@kitploit:~
java -jar AndroTickler.jar -pkgs

البحث عن تطبيق (حزمة) مثبت على الجهاز، بحيث يحتوي اسم الحزمة على مفتاح البحث

root@kitploit:~
java -jar AndroTickler.jar -findPkg <searchKey>

الحزمة بدون سمات إضافية

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> [other options]

أي أمر يحتوي على الخيار -pkg (سواء تم استخدامه مع أي من الخيارات التالية أم لا)، يقوم بالإجراءات التالية إذا لم تكن قد تمت من قبل:

  • نسخ التطبيق من الجهاز
  • استخراج ملف البيان (Manifest) الخاص بالتطبيق
  • فك ترجمة التطبيق إلى كود جافا باستخدام أدوات dex2jar و JD

معلومات عامة

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -info

يعيد المعلومات التالية:

  • معرف المستخدم للتطبيق
  • مسار أدلة التطبيق
  • إذا كان كود التطبيق يشير إلى استخدام التخزين الخارجي
  • أدلة التطبيق الموجودة بالفعل في التخزين الخارجي
  • معرفات الموارد الموحدة للمحتوى (Content URIs) في الكود
  • إذا كان التطبيق قابلاً للنسخ الاحتياطي (backable)
  • إذا كان التطبيق قابلاً للتصحيح (debuggable)
  • مخططات البيانات (مثل IPC في iOS)
  • الأذونات التي يستخدمها

ضغط الكود

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -squeeze [short | <codeLocation> ]

يجلب ما يلي من كود جافا الذي تم فك ترجمته للتطبيق:

  • رسائل السجل (Log messages)
  • أي إشارة إلى بيانات اعتماد محتملة للمستخدم
  • تعليقات جافا
  • المكتبات المستخدمة
  • عناوين URL في الكود
  • استخدام المشاركات المفضلة (shared preferences)
  • استخدام التخزين الخارجي
  • المكونات الشائعة مثل OkHttp و WebView

ليس من المستغرب أن يكون مخرجاته ضخمة عادة، لذلك يُنصح بتوجيه مخرجات الأمر إلى ملف

short يضغط فقط الكود الذي تم فك ترجمته والذي ينتمي إلى المطور. على سبيل المثال، إذا كان للتطبيق اسم حزمة com.notEnaf.myapp، فإن squeeze short يضغط فقط الكود في دليل com/notEnaf.

يضغط الكود فقط في دليل codeLocation. مفيد لتحديد نطاق بحثك أو ضغط الكود المصدري إذا كان متاحًا.

سرد المكونات

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -l [-exp] [-v]

يسرد جميع مكونات التطبيق

-exp يعرض المكونات المصدرة فقط

-v يعطي معلومات أكثر تفصيلاً لكل مكون:

  • نوع المكون
  • ما إذا كان مصدرًا أم لا
  • عوامل تصفية النية (intent filters) الخاصة به
  • تتحقق الأداة من فئة جافا المقابلة لكل مكون وتعيد جميع الإضافات المحتملة للنية (intent extras)

سرد أي نوع من المكونات

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -l [-act | -ser | -rec | -prov ] [-exp] [-v]
  • -act : الأنشطة (activities)
  • -ser : الخدمات (services)
  • -rec : مستقبلات البث (broadcast receivers)
  • -prov : موفرو المحتوى (Content providers)
  • -exp : عرض المكونات المصدرة فقط من أي نوع أعلاه

قواعد البيانات

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -db [|e|l|d] [nu]

بشكل افتراضي، تقوم جميع أوامر -db بتحديث دليل تخزين بيانات التطبيق على المضيف قبل تشغيل الفحص.

بدون سمة أو e يختبر ما إذا كانت قواعد بيانات التطبيق مشفرة. هذا هو الإجراء الافتراضي في حالة عدم إعطاء أي خيار بعد علامة -db. l يسرد جميع قواعد بيانات التطبيق. قد لا يتم الكشف عن قواعد البيانات المشفرة. d يأخذ تفريغ sqlite لأي من قواعد البيانات غير المشفرة. nu noUpdate: يقوم بتشغيل أي من الخيارات أعلاه دون تحديث دليل بيانات التطبيق على المضيف.

مقارنة دليل تخزين البيانات

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -diff [d|detailed]

ينسخ دليل تخزين بيانات التطبيق (إلى DataDirOld) ثم يطلب من المستخدم القيام بالإجراء الذي يريده والضغط على Enter عند الانتهاء. ثم ينسخ دليل تخزين البيانات مرة أخرى (إلى DataDir) ويقوم بتشغيل diff بينهما لإظهار الملفات التي تم إضافتها أو حذفها أو تعديلها.

d|detailed يقوم بنفس الأمر -diff العادي، كما يعرض بالضبط ما تغير في الملفات النصية وقواعد البيانات غير المشفرة.

البحث

في الكود

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -sc <key> [<customLocation>]

يبحث عن المفتاح في المواقع التالية:

  • كود جافا الذي تم فك ترجمته للتطبيق
  • res/values/strings.xml
  • res/values/arrays.xml

البحث غير حساس لحالة الأحرف.

يستبدل موقع كود جافا الذي تم فك ترجمته بموقع مخصص.

في التخزين

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -sd <key>

يبحث في دليل تخزين بيانات التطبيق عن المفتاح المعطى

الدغدغة (Tickling)

يقوم بتشغيل مكونات التطبيق، بجميع التوافيق الممكنة من النوايا (intents). على سبيل المثال، إذا كان للنشاط عامل تصفية نية يحتوي على إجراءين محتملين وثلاثة مخططات URI للبيانات، فسيقوم أندروتيكلر بتشغيل هذا النشاط مع جميع التوافيق الممكنة لهذه النية. بالإضافة إلى ذلك، يلتقط أندروتيكلر إضافات النية (intent extras) المذكورة في فئة جافا المقابلة للمكون، ويخصص لها قيمًا وهمية ويضيفها إلى توافيق النية الممكنة. يتم دعم الإضافات من النوع boolean و string و int و float فقط.

إذا تم استخدام الخيار -exp، فسيتم تشغيل المكونات بدون صلاحيات الجذر أو أي أذونات خاصة. إذا لم يتم استخدامه، فسيتم تشغيل المكونات بصلاحيات الجذر. يساعد هذا في اختبار التطبيق في سيناريوهين مختلفين: ضد المهاجمين بصلاحيات عادية أو عالية.

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

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -t [-all | -exp] [target] [-log]

الهدف كما هو موضح مع أمر القائمة، يمكن أن يكون:

  • -act : الأنشطة. يبدأ النشاط (الأنشطة) مع جميع توافيق النية كما هو موضح أعلاه
  • -ser : الخدمات. يبدأ الخدمة (الخدمات) مع جميع توافيق النية كما هو موضح أعلاه
  • -rec : مستقبلات البث. يرسل جميع رسائل البث الممكنة التي ستطابق مستقبل البث (المستقبلات)
  • -prov : موفرو المحتوى. يستعلم من موفر المحتوى (المزودين)

إذا لم يتم تحديد قيمة، فالهدف هو جميع ما سبق

[-comp] <اسم_المكون> يحدد مكونًا واحدًا فقط. يمكنك أيضًا استخدام اسم المكون مباشرة بدون علامة -comp. -exp يستخدم أندروتيكلر صلاحيات عادية لتشغيل الأهداف المصدرة فقط. -all الخيار الافتراضي. يستخدم أندروتيكلر صلاحيات الجذر لتشغيل الأهداف المصدرة. -log يلتقط جميع رسائل logcat التي تم إنشاؤها أثناء جلسة التشغيل. يتم حفظ ملف السجل في الدليل الفرعي logs.

فريدا:

يجب تثبيت فريدا على جهاز المضيف. كما يجب إضافة موقع خادم فريدا على جهاز أندرويد إلى ملف Tickler.conf في الإدخال Frida_server_path

التقاط الوسائط وقيمة الإرجاع

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -frida vals <ClassName> <MethodName> <NumberOfArgs> [-reuse]

يعرض الوسائط وقيمة الإرجاع لهذه الدالة (فقط أنواع البيانات الأولية و String)

reuse في حالة خيارات vals و set، يقوم فريدا بإنشاء/تحديث سكريبت فريدا لتلك الوظيفة. يمكنك تعديل السكريبت الذي تم إنشاؤه كما تريد، ثم إذا كنت تريد تشغيله عبر أندروتيكلر، فاستخدم الخيار -reuse حتى لا يتم استبداله.

تعديل الوسائط أو قيمة الإرجاع

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -frida set <ClassName> <MethodName> <NumberOfArgs> <NumberOfArgToModify> <newValue>[-reuse]

يضبط رقم الوسيطة NumberOfArgToModify إلى newValue (فقط أنواع البيانات الأولية و String). يبدأ NumberOfArgToModify من 0: الوسيطة الأولى --> NumberOfArgToModify = 0، ... إلخ لتعديل قيمة الإرجاع --> اضبط NumberOfArgToModify على ret

تشغيل سكريبت JS فريدا

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -frida script <scriptPath>

تشغيل سكريبت فريدا بلغة JS الموجود في scriptPath على المضيف

سرد الفئات المحملة:

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -frida enum

ميزات أخرى

إصدار قابل للتصحيح

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -dbg

ينشئ نسخة قابلة للتصحيح من التطبيق، يمكن تثبيتها على الجهاز وتصحيحها باستخدام أي أداة خارجية. يأتي أندروتيكلر مع مخزن مفاتيح (keystore) لتوقيع ملف apk القابل للتصحيح، ولكنه يتطلب أداة jarsigner على المضيف.

إصدار مخصص

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -apk <decompiledDirectory>

يبني ملف apk من دليل، ويوقعه ويقوم بتثبيته.

لقطات الخلفية

root@kitploit:~
java -jar AndroTickler.jar [-pkg <package>] [-bg|--bgSnapshots]

ينسخ لقطات الخلفية التي التقطها الجهاز (يعمل مع وبدون خيار -pkg) إلى الدليل الفرعي bgSnapshots.

نسخ الملفات / الأدلة

نسخ دليل تخزين البيانات:

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -dataDir  [dest]

ينسخ دليل تخزين البيانات إلى DataDir dest اسم اختياري للدليل الوجهة، والذي سيكون موجودًا في الدليل الفرعي transfers على أي حال.

نسخ أي ملف / دليل:

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -cp2host <source_path> [dest]

ينسخ الملفات / الأدلة من جهاز أندرويد.

  • source_path هو الموقع المطلق لما تريد نسخه من جهاز أندرويد
  • dest: اسم اختياري للدليل الوجهة، والذي سيكون موجودًا في الدليل الفرعي transfers على أي حال.

إذا لم يتم إعطاء خيار dest، فسيكون اسم الدليل هو الطابع الزمني للمعاملة.

لقطة الشاشة

root@kitploit:~
java -jar AndroTickler.jar [-pkg <package>] -screen
  • يلتقط لقطة الشاشة الحالية للجهاز ويحفظها في الدليل الفرعي images
  • يعمل مع أو بدون علامة الحزمة

ملاحظة

بالنسبة للخيارات التي لا تتطلب خيار -pkg، سيتم حفظ بياناتها في Tickler_Dir/NoPackage

أمثلة:

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -t  -act -exp

يقوم بتشغيل الأنشطة المصدرة

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -t -prov -log

يستعلم من جميع موفري المحتوى ويحفظ رسائل logcat حتى تتوقف الأداة عن التنفيذ

root@kitploit:~
java -jar AndroTickler.jar -pkg <package> -t <component_name> 

يقوم بتشغيل المكون، ونوع التشغيل يعتمد على نوع المكون

root@kitploit:~
java -jar AndroTickler.jar -pkg de.not3naf.myApp -frida set de.not3naf.myApp.myActivity myMethod 2 0 "newValue" 

يعلق على الدالة "myMethod" التي تحتوي على وسيطين ويغير قيمة الوسيطة الأولى (args[0]) إلى "newValue"

root@kitploit:~
java -jar AndroTickler.jar -pkg de.not3naf.myApp -frida set de.not3naf.myApp.myActivity myMethod 2 2 false 

يعلق على الدالة "myMethod" التي تحتوي على وسيطين ويغير قيمة الإرجاع إلى boolean false

تنزيل الأداة