Cyber Security Academy · درس

الحصول على بيانات Android وتحليلها

استخراج بيانات Android وتحليلها.

الدرس 2 من 413 خطوة

الحصول على بيانات Android وتحليلها درس مجاني في Cyber Security Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cyber Security Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cyber Security Academy 4 دروس في المجموع.

بنية تخزين Android

لاستخراج بيانات Android بفعالية، يجب أن تعرفوا مكان وجودها.

  • /data/data/<package>/ — مساحة كل تطبيق المعزولة: قواعد البيانات وshared_prefs والملفات وذاكرة التخزين المؤقت.
  • /data/media/0/ — مساحة تخزين المستخدم (الصور والتنزيلات).
  • /data/system/ — الحسابات وإعدادات القفل وإحصاءات الاستخدام.

توجد معظم أدلة التطبيقات في قواعد بيانات SQLite وملفات تفضيلات XML داخل مساحة التطبيق المعزولة، ولا يمكن قراءتها من دون root أو آلية نسخ احتياطي.

المتطلبات الأساسية لـ ADB وتصحيح الأخطاء

يُعد Android Debug Bridge (ADB) قناة الاستخراج المنطقي الأساسية. ويتطلب تفعيل تصحيح أخطاء USB والسماح بمفتاح المضيف.

  • من دون تفعيل تصحيح الأخطاء وإلغاء قفل الشاشة، يُحظر الوصول عبر ADB.
  • يغيّر طلب السماح نفسه حالة الجهاز — لذا وثّقوه.

تحققوا من الاتصال وسجّلوا خصائص الجهاز أولاً:

adb devices -l
adb shell getprop ro.build.version.release   # Android version
adb shell getprop ro.product.model           # Device model
adb shell getprop ro.crypto.state            # encrypted / unencrypted

الاستخراج المنطقي عبر ADB Backup

ينشئ adb backup أرشيفاً بامتداد .ab لبيانات التطبيقات التي تسمح بالنسخ الاحتياطي. وهو لا يتطلب root ومتوفر على نطاق واسع، لكنه محدود؛ إذ تضبط تطبيقات كثيرة allowBackup=false.

  • يستخرج بيانات التطبيقات وملفات APK (باستخدام -apk) ومساحة التخزين المشتركة.
  • لا يستخرج التطبيقات التي تختار عدم السماح بالنسخ الاحتياطي ولا السجلات المحذوفة.

أنشئوا نسخة احتياطية وحوّلوها للتحليل:

# Create a full backup (user must confirm on device)
adb backup -apk -shared -all -f android_backup.ab

# Convert the .ab to a readable tar (android-backup-extractor)
java -jar abe.jar unpack android_backup.ab android_backup.tar
tar -xvf android_backup.tar

استخراج نظام الملفات

ينسخ استخراج نظام الملفات شجرة الأدلة، بما في ذلك مساحات التطبيقات المعزولة وملفات السجل SQLite WAL/SHM التي تحتوي على السجلات التي لم تتم مزامنتها.

  • يتطلب root أو عميلاً جنائياً أو طريقة تعتمد على استغلال/محمّل الإقلاع.
  • يحافظ على الملفين -wal و-shm — وهما مهمان، إذ قد توجد الصفوف الأحدث فيهما وحدهما.

عند سحب قواعد بيانات SQLite، احصلوا دائماً على الملفات المرافقة للسجل أيضاً:

adb pull /data/data/com.whatsapp/databases/msgstore.db ./out/
adb pull /data/data/com.whatsapp/databases/msgstore.db-wal ./out/
adb pull /data/data/com.whatsapp/databases/msgstore.db-shm ./out/

حقائق الاستخراج المادي

الصورة المادية هي نسخة مطابقة بتةً ببت من NAND، بما في ذلك المساحة غير المخصصة التي قد تبقى فيها البيانات المحذوفة. ويُعد الحصول عليها أصعب ما يكون في Android الحديث.

  • يعني تشفير FBE أن تفريغ NAND الخام سيكون نصاً مشفّراً من دون مفتاح المستخدم.
  • تشمل الطرق استغلالات خاصة بالمورّد، وأوضاع EDL/bootloader، أو chip-off (وهو الخيار الأخير والمدمّر).
  • عملياً، ينتج استخراج نظام الملفات في حالة AFU غالباً بيانات قابلة للاستخدام أكثر من تفريغ مادي مشفّر.

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

SQLite: قلب أدلة Android

تُخزّن معظم الآثار الرقمية في Android داخل قواعد بيانات SQLite. ويستعلم المحللون منها مباشرة لاستعادة الرسائل وسجلات المكالمات والطوابع الزمنية.

  • افتحوا قواعد البيانات للقراءة فقط لتجنب تعديل ملف الدليل.
  • غالباً ما تكون الطوابع الزمنية بميلي ثانية منذ حقبة Unix.

افحصوا قاعدة بيانات جهات الاتصال المستخرجة:

sqlite3 -readonly contacts2.db
sqlite> .tables
sqlite> SELECT display_name, data1
   ...> FROM view_v_contacts LIMIT 20;

استعادة سجلات SQLite المحذوفة

غالباً لا يؤدي حذف صف في SQLite إلا إلى تحديد مساحة صفحته كمساحة حرة. وتوجد البقايا القابلة للاستعادة في:

  • صفحات القائمة الحرة والمناطق غير المخصصة من ملف .db.
  • سجل -wal للكتابة المسبقة، الذي يحتفظ بإصدارات الصفوف السابقة لنقطة التحقق.

تعيد أدوات اقتطاع البيانات بناء هذه السجلات. نفّذوا عملية استعادة على قاعدة بيانات:

# Carve deleted rows from freelist + WAL
python3 sqlite_carver.py --db msgstore.db --wal msgstore.db-wal \
  --out recovered_messages.csv

# Cross-check live vs recovered counts in your notes

الخط الزمني وفك ترميز الطوابع الزمنية

يربط إنشاء خط زمني الأحداث بين التطبيقات. ويتمثل التحدي في تعدد تنسيقات الطوابع الزمنية التي يستخدمها Android.

  • حقبة Unix (ms) — في معظم قواعد بيانات الرسائل.
  • حقبة Unix (s) — في كثير من سجلات النظام.
  • توقيت WebKit/Chrome — ميكروثوانٍ منذ عام 1601 (سجل المتصفح).

وحّدوا القيم دائماً إلى UTC وسجّلوا المنطقة الزمنية للجهاز. مثال على التحويل في SQLite:

-- Convert epoch milliseconds to readable UTC
SELECT datetime(timestamp/1000, 'unixepoch') AS sent_utc,
       key_remote_jid, data
FROM messages
ORDER BY timestamp DESC LIMIT 25;

آثار النظام الرئيسية

إلى جانب بيانات التطبيقات، تكشف آثار نظام Android عن سلوك المستخدم وكيفية استخدام الجهاز.

  • usagestats — التطبيقات التي شُغّلت ووقت تشغيلها.
  • accounts.db / accounts_ce.db — حسابات Google والتطبيقات المرتبطة.
  • net stats / netpolicy — استخدام البيانات لكل تطبيق.
  • إعدادات Wi-Fi (WifiConfigStore.xml) — الشبكات المعروفة، وهي مفيدة لفهم سياق تحديد الموقع الجغرافي.

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

التحليل الآلي باستخدام ALEAPP

لا يصلح التحليل اليدوي للتعامل مع هذا الحجم من البيانات. تستقبل أداة ALEAPP (Android Logs Events And Protobuf Parser) استخراجًا لنظام الملفات، وتُخرج تقريرًا منظمًا بصيغتي HTML/CSV.

  • تحلل usagestats والنشاط الأخير والإشعارات وأذونات التطبيقات وغير ذلك.
  • استخدموها للفرز الأولي، ثم تحققوا يدويًا من النتائج المهمة بمقارنتها بقواعد البيانات الخام.

شغّلوا ALEAPP على مجلد الاستخراج:

python3 aleapp.py -t fs -i ./android_filesystem/ -o ./aleapp_report/
# Open ./aleapp_report/index.html to review parsed artifacts

التحقق ومكافحة العبث

لا تثقوا أبدًا بأداة واحدة. تحققوا من المخرجات الآلية بمقارنتها ببيانات المصدر وبنتائج أدوات أخرى.

  • أعيدوا تشغيل الاستعلامات المهمة يدويًا باستخدام sqlite3 لتأكيد نتائج المحلل.
  • انتبهوا إلى مؤشرات طمس الأدلة: السجلات الممسوحة، أو الطوابع الزمنية المعدّلة، أو تطبيقات الحذف الآمن، أو تطبيقات الدردشة التي تستخدم إعدادات الرسائل المختفية.
  • تأكدوا من أن تجزئة الصورة لا تزال مطابقة قبل التحليل وبعده.

إن قابلية إعادة الإنتاج والتحقق المتقاطع هما ما يجعلان النتائج قابلة للدفاع عنها.

اختبار سريع

أنتم تستخرجون قاعدة بيانات SQLite الخاصة بتطبيق دردشة. ما الملفات المصاحبة التي يجب جمعها أيضًا لتجنب فقدان الرسائل المرسلة حديثًا؟

خلاصة: جمع أدلة Android وتحليلها

يمكنكم الآن جمع أدلة Android وتحليلها من البداية إلى النهاية.

  • توجد بيانات التطبيقات في مساحات معزولة لكل تطبيق على هيئة قواعد بيانات SQLite وتفضيلات XML.
  • يمثل ADB backup سحبًا منطقيًا سهلًا؛ ويحافظ استخراج نظام الملفات (مع root) على WAL؛ أما الاستخراج الفيزيائي فهو الأصعب في ظل FBE.
  • استعيدوا السجلات المحذوفة من صفحات freelist وWAL.
  • وحّدوا الطوابع الزمنية إلى UTC، وفكّكوا صيغ epoch وWebKit.
  • استخدموا ALEAPP للفرز الأولي، ثم تحققوا يدويًا باستخدام sqlite3.
  • انتبهوا إلى العبث بقصد طمس الأدلة، وأعيدوا التحقق من تجزئة الصورة.

التالي: منظومة iOS.

البدء مجانًا

تعلم Cyber Security Academy مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
76
الدروس
303

الأسئلة الشائعة

هل درس «الحصول على بيانات Android وتحليلها» مجاني؟

نعم — نص درس «الحصول على بيانات Android وتحليلها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cyber Security Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cyber Security Academy 4 دروس في المجموع.

ماذا ستتعلم في «الحصول على بيانات Android وتحليلها»؟

استخراج بيانات Android وتحليلها. تتمرن على Cyber Security Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Cyber Security Academy؟

لا تُشترط خبرة سابقة. Cyber Security Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «الحصول على بيانات Android وتحليلها»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Cyber Security Academy هذا؟

نعم. كل درس في Cyber Security Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. أساسيات الأدلة الجنائية للأجهزة المحمولة
  2. الحصول على بيانات Android وتحليلها
  3. الحصول على بيانات iOS وتحليلها
  4. التطبيقات والآثار وإعداد التقارير
← العودة إلى Cyber Security Academy