Skip to content

استعادة رسائل الأدلة من هاتف تالف أو نسخة احتياطية للدردشة التالفة

تختلف أرقام الطوارئ حسب البلد. تستخدم هذه الصفحة الرقم 911، وهو الرقم الخاص بالولايات المتحدة وكندا. تستخدم العديد من البلدان الأخرى 112 أو 999 أو رقمًا آخر. ابحث عن الرقم الخاص ببلدك.

عندما تتوقف دعوى مدنية حرجة، أو معركة حضانة في محكمة الأسرة، أو جلسة استماع بشأن أمر تقييدي، أو شكوى مضايقة في مكان العمل، أو نزاع بشأن احتيال مقاول، أو دفاع جنائي على رسائل نصية، أو محادثات WhatsApp، أو iMessages، أو سلاسل رسائل Signal المحاصرة داخل هاتف معطل أو ملف نسخ احتياطي تالف، فإن نقرة واحدة خاطئة يمكن أن تدمر دليلك القانوني بشكل دائم. لا تقوم قواعد بيانات المراسلة الحديثة بتخزين الرسائل كملفات نصية بسيطة؛ يقومون بتخزينها داخل ** قواعد بيانات SQLite ** (sms.db على نظام التشغيل iOS، mmssms.db / bugle_db على أندرويد, msgstore.db.crypt14 / crypt15 على WhatsApp، وقواعد بيانات SQLCipher على Signal) مصحوبة بسجل مؤقت للكتابة المسبقة (.db-wal)** ملفات دفتر اليومية.

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

يوفر هذا الدليل استخراج الدردشة غير المدمر خطوة بخطوة، وإصلاح قاعدة بيانات SQLite، واستعادة النسخ الاحتياطي للتشفير، وبروتوكولات حفظ الطب الشرعي المقبولة لدى المحكمة بناءً على منشور خاص للمعهد الوطني للمعايير والتكنولوجيا (NIST) 800-101 Rev. 1 (إرشادات حول الطب الشرعي للأجهزة المحمولة)، وقواعد الإثبات الفيدرالية (FRE) القواعد 901(ب)(9) و902(14) (الأدلة الإلكترونية ذاتية المصادقة عبر شهادة التجزئة SHA-256)، ومواصفات استرداد SQLite / SQLCipher الرسمية.

افعل هذا الآن

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

  1. ** ضع الهاتف في وضع الطائرة على الفور وأوقف تشغيل iCloud / Google Drive Backup التلقائي. ** هذه هي القاعدة رقم 1 في الطب الشرعي للجوال. لماذا؟ أولاً، عندما تقوم بحذف رسالة في iMessage (sms.db)، واتساب (msgstore.db)، أو رسائل Android، لا يتم مسح النص على الفور من محرك الأقراص المحمول**، بل يوجد داخل "القائمة الحرة / الصفحات غير المخصصة" الخاصة بقاعدة بيانات SQLite أو داخل سجل الكتابة المسبق المؤقت (.db-wal) حتى تقوم قاعدة البيانات بتشغيل الخلفية VACUUM تنظيف أو ارتكاب رسائل جديدة فوقه. ثانيًا، إذا تم حذف رسالة على هاتفك اليوم، لا تزال النسخة الاحتياطية على iCloud أو Google Drive WhatsApp Backup الليلة الماضية في الساعة 02:00 صباحًا تحتوي على الرسالة السليمة، حتى تقوم النسخة الاحتياطية التلقائية لشبكة Wi-Fi الليلة بالكتابة عليها. يؤدي تشغيل وضع الطائرة إلى إيقاف الكتابة فوق SQLite المحلية والكتابة فوق النسخ الاحتياطي السحابي على الفور. إذا كنت في خطر جسدي مباشر من معتدي منزلي أو مطارد تحتفظ برسائله، اذهب إلى مكان آمن أولاً واتصل برقم الطوارئ المحلي الخاص بك (911 في الولايات المتحدة وكندا، 112 عبر الاتحاد الأوروبي، 999 في المملكة المتحدة) أو تحقق من أرقام الطوارئ.
  2. لا تقم مطلقًا بتثبيت WhatsApp أو Signal أو تسجيل الدخول إليهما على هاتف جديد وانقر على "النسخ الاحتياطي الآن" قبل استعادة الأرشيف القديم. يفقد ملايين المستخدمين سنوات من أدلة WhatsApp عند إعداد هاتف بديل: إذا تخطيت مطالبة الاستعادة الأولية (أو إذا فشلت الاستعادة بنسبة 99 بالمائة) وقام تثبيت WhatsApp الفارغ الجديد بتشغيل نسخة احتياطية تلقائية على Google Drive أو iCloud، فإنه يحل محل النسخة الاحتياطية السحابية التاريخية التي تبلغ سعتها عدة غيغابايت بنسخة احتياطية فارغة تبلغ 0 كيلوبايت.
  3. **إذا كانت شاشة الهاتف سوداء أو مكسورة (جهاز التحويل الرقمي الذي يعمل باللمس مكسور) ولكن الهاتف لا يزال يهتز أو يرن، فلا تقم بإعادة تشغيله. ** على كل من نظامي التشغيل iOS وAndroid (التشفير المستند إلى الملفات / قبل إلغاء القفل لأول مرة - BFU مقابل بعد إلغاء القفل لأول مرة - AFU)، طالما تم إلغاء قفل الهاتف مرة واحدة منذ آخر عملية إعادة تشغيل له (AFU الحالة)، يتم فك تشفير مفاتيح التشفير التي تحمي قواعد بيانات رسائلك في ذاكرة الوصول العشوائي (RAM)، مما يسمح لك بتوصيل ** محور USB-C / Lightning ** بقيمة 15 دولارًا مع ماوس كمبيوتر USB سلكي وشاشة HDMI ** للنقر "Trust This Computer" وسحب نسخة احتياطية محلية كاملة. إذا قمت بإعادة تشغيل الهاتف بالقوة مع شاشة مكسورة، فإنه يسقط BFU حالة القفل حيث لا يستطيع ماوس USB أو الكمبيوتر فتحه دون إصلاح الشاشة أولاً (راجع دليلنا حول استعادة الهاتف المكسور أو التالف بسبب الماء).
  4. ** عند نسخ قاعدة بيانات SQLite الخام (sms.db أو msgstore.db)، انسخ الملفات الثلاثة معًا دائمًا (.db, .db-wal، و .db-shm).** تعمل كل قاعدة بيانات حديثة لرسائل الجوال في وضع SQLite WAL (تسجيل الكتابة المسبق). غالبًا ما تكون آخر أيام أو أسابيع رسائلك موجودة داخل الرفيق sms.db-wal أو msgstore.db-wal الملف، وليس داخل الملف الرئيسي .db الملف حتى الآن. إذا قمت بنسخ فقط sms.db واترك sms.db-wal في الخلف، تختفي أحدث الرسائل أو يتم فتح قاعدة البيانات على أنها تالفة.
  5. حساب وتسجيل تجزئة SHA-256 المشفرة لأي نسخة احتياطية أو ملف قاعدة بيانات تم تصديره على الفور. قبل فحص أو تحويل أي ملف نسخ احتياطي تم استرداده، قم بتشغيل sha256sum (لينكس/ماك) أو Get-FileHash -Algorithm SHA256 (Windows PowerShell) في الأرشيف الأصلي واحفظ سلسلة التجزئة المكونة من 64 حرفًا. بموجب قاعدة الإثبات الفيدرالية 902(14)، فإن قيمة التجزئة SHA-256 هي المعيار الذهبي لإثبات أن أرشيف الرسائل الرقمية الخاص بك لم يتم تغييره أو تعديله بالفوتوشوب في المحكمة.
flowchart TD
    A["الحاجة الملحة لاستعادة رسائل الأدلة والحفاظ عليها (SMS، iMessage، WhatsApp، Signal)"] --> B["التجميد الفوري: تمكين وضع الطائرة على الهاتف وتعطيل النسخ الاحتياطي السحابي التلقائي على الأجهزة الأخرى"]
    B --> C{"ما هو الوضع الحالي للهاتف والرسائل؟"}
    C -->|"1. الهاتف يعمل، ولكن تم حذف الرسائل عن طريق الخطأ"| D["تحقق مما إذا كان مجلد النسخ الاحتياطي السحابي (iCloud / Google Drive) أو مجلد WhatsApp المحلي '/Databases' يحتوي على لقطة ما قبل الحذف"]
    D --> E["قبل الاستعادة عبر الهاتف المباشر: قم أولاً بعمل نسخة احتياطية محلية كاملة ومشفرة على جهاز الكمبيوتر/جهاز Mac ('idevicebackup2' / iTunes / Finder / ADB) للاحتفاظ بقوائم SQLite WAL المجانية"]
    C -->|"2. شاشة الهاتف مكسورة / سوداء، ولكن اللوحة لا تزال قيد التشغيل"| F["لا تقم بإعادة التشغيل (احتفظ بالحالة 'بعد إلغاء القفل لأول مرة')؛ قم بتوصيل USB-C/Lightning Hub + ماوس USB سلكي + شاشة HDMI لفتح النسخ الاحتياطي للكمبيوتر الشخصي والترخيص به"]
    C -->|"3. ملف النسخ الاحتياطي للدردشة أو قاعدة بيانات SQLite (`sms.db`، `msgstore.db`، Signal) تالف / فشل في استعادته"| G["انسخ جميع الملفات الثلاثة (`.db`، `.db-wal`، `.db-shm`) إلى دليل العمل على جهاز الكمبيوتر/جهاز Mac"]
    G --> H{"هل قاعدة البيانات مشفرة (`crypt14/crypt15` أو SQLCipher) أم SQLite قياسي؟"}
    H -->|"الواتس اب / سيجنال المشفر"| I["فك التشفير باستخدام مفتاح E2EE مكون من 64 حرفًا / `/data/data/com.whatsapp/files/key` (`wa-crypt-tools`) أو عبارة مرور Signal المكونة من 30 رقمًا (`signalbackup-tools`)"]
    H -->|"فك تشفير / SQLite القياسية"| J["قم بإصلاح صفحات B-tree التالفة باستخدام `sqlite3 .recover` أو انحت السجلات المحذوفة من إطارات Freelist وWAL"]
    E --> K["المصادقة للمحكمة: قم بإنشاء SHA-256 Hash + Full-Thread PDF باستخدام Carrier CDRs + إعلان FRE 902(14)"]
    I --> K
    J --> K

بنية تخزين رسائل الهاتف المحمول: أين توجد رسائلك فعليًا

لاستعادة الرسائل المحذوفة أو التالفة دون تدميرها، يجب أن تفهم المكان الذي يقوم فيه كل نظام تشغيل ونظام أساسي للمراسلة بتخزين قاعدة بياناته المباشرة ومفاتيح التشفير والنسخ الاحتياطية المحلية المتداولة:

تطبيق المراسلة/نظام التشغيل مسار ملف قاعدة البيانات الداخلية هندسة التشفير مكان وجود النسخ الاحتياطية المحلية أو السحابية المخفية
Apple iOS: iMessage وSMS / MMS / RCS /HomeDomain/Library/SMS/sms.db (زائد sms.db-wal و sms.db-shm)
** مرفقات الوسائط: ** /HomeDomain/Library/SMS/Attachments/
(داخل النسخة الاحتياطية المحلية لـ Finder/iTunes، sms.db يتم تخزينه دائمًا تحت اسم الملف SHA-1 3d0d7e5fb2ce288813306e4d4636395e047a3d28)
قاعدة بيانات SQLite 3 القياسية (محمية على القرص بواسطة فئة حماية بيانات iOS فئة C، ومشفرة داخل النسخ الاحتياطية المحلية للكمبيوتر الشخصي/Mac إذا "Encrypt local backup" تم تمكين كلمة المرور). 1. الباحث المحلي لجهاز Mac/PC/النسخ الاحتياطي على iTunes (-/Library/Application Support/MobileSync/Backup/ أو %APPDATA%\Apple Computer\MobileSync\Backup\).
2. ** النسخ الاحتياطي لجهاز iCloud ** (إذا "Messages in iCloud" تم إيقاف تشغيله، لقطات كاملة لـ sms.db موجودة داخل النسخة الاحتياطية اليومية على iCloud).
3. ** مجلد iOS "المحذوف مؤخرًا" ** داخل تطبيق الرسائل (Edit -> Show Recently Deleted، يحتفظ بالنصوص المحذوفة لمدة 30 إلى 40 يومًا).
Android: رسائل Google (SMS / MMS / RCS) /data/data/com.google.android.apps.messaging/databases/bugle_db (ومزود نظام الهاتف /data/user_de/0/com.android.providers.telephony/databases/mmssms.db) قاعدة بيانات SQLite 3 القياسية داخل قسم بيانات اعتماد مستخدم التشفير المستند إلى ملفات Android (FBE) المدعوم بالأجهزة. Google One / Android Cloud Backup (يقوم تلقائيًا بعمل نسخة احتياطية لرسائل SMS وMMS/RCS المرتبطة بحسابك في Google).
الواتس اب على الاندرويد قاعدة بيانات داخلية مباشرة (الجذر/المفتاح مطلوب): /data/data/com.whatsapp/databases/msgstore.db + /data/data/com.whatsapp/files/key
النسخ الاحتياطية المحلية التي يمكن للمستخدم الوصول إليها: /sdcard/Android/media/com.whatsapp/WhatsApp/Databases/msgstore.db.crypt14 (أو .crypt15)
.crypt14: AES-256-GCM مشفر باستخدام 158 بايت key الملف المخزن في /data/data/com.whatsapp/files/key.
.crypt15: نسخة احتياطية مشفرة من طرف إلى طرف محمية بواسطة مفتاح التشفير الست عشري المكون من 64 رقمًا أو كلمة المرور.
السجل المحلي المتجدد لمدة 7 أيام: كل ليلة في 02:00 صباحًا، يحفظ WhatsApp على Android ما يصل إلى 7 أيام من ملفات النسخ الاحتياطي التاريخية مباشرة على وحدة التخزين الداخلية لهاتفك (msgstore-YYYY-MM-DD.1.db.crypt14)، بالإضافة إلى أحدث نسخة احتياطية على Google Drive.
الواتس اب على الايفون (iOS) /AppDomainGroup-group.net.whatsapp.WhatsApp.shared/ChatStorage.sqlite (زائد .sqlite-wal)
(داخل نسخة احتياطية من iTunes/Finder، ChatStorage.sqlite تم تجزئته كـ 7c7fba66680ef796b916b067077cc246adacf01d)
SQLite 3 القياسي داخل حاوية iOS App Group (يمكن الوصول إليه في أي نسخة احتياطية محلية غير مشفرة أو تم فك تشفيرها بكلمة مرور لجهاز Mac/PC على iPhone). النسخ الاحتياطي لـ iCloud Drive WhatsApp بالإضافة إلى النسخ الاحتياطي الكامل لجهاز Mac/PC المحلي/iTunes.
Signal Private Messenger (Android وiOS) ملف النسخ الاحتياطي المحلي لنظام Android: signal-YYYY-MM-DD-HH-MM-SS.backup
تطبيق سطح المكتب (Windows/Mac/Linux): -/.config/Signal/sql/db.sqlite + config.json (أو مفتاح التخزين الآمن لسلسلة مفاتيح نظام التشغيل)
** أندرويد .backup:** مشفر باستخدام عبارة المرور الرقمية المكونة من 30 رقمًا التي تظهر عند تشغيل النسخ الاحتياطية.
Signal Desktop: مشفر عبر SQLCipher 4; يتم تخزين مفتاح فك التشفير في الداخل config.json / OS Keychain على الكمبيوتر المحمول الخاص بك.
** تجاوز الطب الشرعي الحرج: ** حتى إذا تم تحطيم هاتف Signal أو فقدانه (ولا يوفر iOS Signal نسخًا احتياطية سحابية)، إذا قمت في أي وقت مضى بربط "Signal Desktop" على الكمبيوتر المحمول الذي يعمل بنظام التشغيل Windows أو Mac أو Linux، فإن سجل الرسائل الكامل الذي تم فك تشفيره موجود محليًا داخل جهاز الكمبيوتر المحمول. -/.config/Signal/sql/db.sqlite قاعدة البيانات.

السيناريو 1: استعادة رسائل iPhone المحذوفة أو التالفة (sms.db & ChatStorage.sqlite)

إذا تم حذف رسائل iMessage أو الرسائل النصية القصيرة أو رسائل WhatsApp الهامة على iPhone، أو إذا كان iPhone تالفًا، فاتبع هذه الخطوات الدقيقة بترتيب الأولوية:

الخطوة 1: التحقق من مخزن iOS المدمج "المحذوف مؤخرًا" (أول 30 إلى 40 يومًا)

في أنظمة التشغيل iOS 16 وiOS 17 وiOS 18 والإصدارات الأحدث، لا يؤدي حذف النص أو سلسلة رسائل iMessage إلى نقله على الفور إلى مساحة القائمة الحرة لـ SQLite الأولية؛ فهو ينقله إلى مجلد سلة المهملات المخفي لمدة 30 يومًا (حتى 40 يومًا قبل التطهير الدائم): 1. افتح تطبيق الرسائل على iPhone. 2. اضغط على تحرير (أو المرشحات) في الزاوية العلوية اليسرى. 3. اضغط على إظهار المحذوفة مؤخرًا. 4. حدد المحادثة ثم اضغط على استرداد.

الخطوة 2: استخراج sms.db و ChatStorage.sqlite من نسخة احتياطية محلية لنظام التشغيل Mac / Windows دون الكتابة فوق أي شيء

إذا تم حذف الرسالة نهائيًا من "المحذوفة مؤخرًا" (أو إذا كنت بحاجة إلى استخراج الرسائل للمحكمة أو اقتطاع صفوف SQLite المحذوفة)، قم بإنشاء نسخة احتياطية محلية كاملة على جهاز كمبيوتر على الفور بينما لا يزال الهاتف في وضع الطائرة:

  1. قم بتوصيل iPhone عبر كابل USB بجهاز Mac (Finder) أو Windows PC (أجهزة Apple / iTunes) أو Linux (libimobiledevice):
  2. حدد مربع "تشفير النسخة الاحتياطية المحلية" وقم بتعيين كلمة مرور بسيطة لن تنساها (مثل Evidence1234). (لماذا يتم تمكين تشفير النسخ الاحتياطي؟ تتضمن النسخة الاحتياطية المحلية المشفرة لنظام iOS عناصر الطب الشرعي الإضافية، والبيانات الصحية، وسجل المكالمات، وعناصر سلسلة المفاتيح التي تزيلها Apple من النسخ الاحتياطية غير المشفرة).
  3. انقر فوق النسخ الاحتياطي الآن وانتظر حتى ينتهي.
  4. ** حدد موقع مجلد النسخ الاحتياطي الأولي على جهاز الكمبيوتر الخاص بك: **
  5. ماك: -/Library/Application Support/MobileSync/Backup/<UDID>/
  6. الويندوز: %APPDATA%\Apple Computer\MobileSync\Backup\<UDID>\ أو %USERPROFILE%\Apple\MobileSync\Backup\<UDID>\
  7. ** انسخ ذلك بالكامل <UDID> قم بنقل المجلد إلى محرك أقراص خارجي منفصل على الفور واحسب تجزئة SHA-256 الخاصة به** بحيث لا يمكن أبدًا تغيير لقطة الطب الشرعي الأصلية.
  8. حدد موقع قواعد بيانات الرسائل الدقيقة داخل نسخة iOS الاحتياطية باستخدام تجزئة المجال SHA-1 من Apple:
  9. تقوم Apple بإعادة تسمية كل ملف داخل نسخة احتياطية لنظام iOS إلى تجزئة SHA-1 الخاصة بها Domain-RelativePath، مُصنفة إلى أدلة فرعية مكونة من حرفين:
    • ** قاعدة بيانات Apple SMS / iMessage (HomeDomain-Library/SMS/sms.db):** يقع في المجلد الفرعي 3d/ -> ملف 3d0d7e5fb2ce288813306e4d4636395e047a3d28
    • قاعدة بيانات WhatsApp iOS (AppDomainGroup-group.net.whatsapp.WhatsApp.shared-ChatStorage.sqlite): يقع في المجلد الفرعي 7c/ -> ملف 7c7fba66680ef796b916b067077cc246adacf01d
    • ** فهرس ملف النسخ الاحتياطي (Manifest.db):** يقوم فهرس SQLite الرئيسي بتعيين كل صورة ومذكرة صوتية وتجزئة المرفقات إلى اسم الملف الحقيقي الخاص بها SMS/Attachments/.
  10. (إذا قمت بتمكين تشفير النسخ الاحتياطي، فقم بفك تشفير نسخة العمل من النسخة الاحتياطية إلى مجلد قابل للقراءة باستخدام أدوات مفتوحة المصدر مثل iphone-backup-decrypt في بايثون أو المشاهدين المحليين ذوي السمعة الطيبة مثل iMazing أو iBackup Viewer).

السيناريو 2: استرداد تطبيق WhatsApp لنظام Android .crypt14 / .crypt15 والإشارة .backup المحفوظات

1. إنقاذ نسخة احتياطية قديمة من WhatsApp قبل انتهاء فترة الـ 7 أيام

ماذا لو قام شخص ما بحذف محادثة WhatsApp على هاتف Android الخاص بك قبل 3 أيام، وقامت النسخة الاحتياطية من Google Drive في الساعة 02:00 صباحًا الليلة الماضية باستبدال النسخة السحابية بالفعل؟ - قم بتوصيل هاتف Android الخاص بك بالكمبيوتر عبر USB (في وضع نقل الملفات / MTP) أو افتح تطبيق Android Files وانتقل إلى:

Internal Storage/Android/media/com.whatsapp/WhatsApp/Databases/
(أو في إصدارات Android الأقدم: Internal Storage/WhatsApp/Databases/). - داخل هذا المجلد، سترى ما يصل إلى 7 ملفات منفصلة: - msgstore.db.crypt14 (النسخ الاحتياطي الليلة الماضية، المفقودين الرسائل المحذوفة) - msgstore-2026-10-30.1.db.crypt14 (الاحتياطية أمس) - msgstore-2026-10-28.1.db.crypt14 (النسخة الاحتياطية منذ 3 أيام، قبل حذف الرسائل) - كيفية استعادة النسخة الاحتياطية التي مضى عليها 3 أيام على هاتفك بأمان: 1. نسخ كامل Databases/ و Media/ المجلدات على جهاز الكمبيوتر الخاص بك أولاً حتى لا يتم فقدان أي شيء. 2. إعادة تسمية الحالي msgstore.db.crypt14 ل msgstore-CURRENT-NEW.db.crypt14.bak. 3. إعادة تسمية ملف الحذف المسبق الأقدم msgstore-2026-10-28.1.db.crypt14 إلى اسم الملف النشط الدقيق msgstore.db.crypt14. 4. قم بتشغيل وضع الطائرة (أو قم بإلغاء إذن Google Drive الخاص بـ WhatsApp مؤقتًا حتى لا يسحب WhatsApp النسخة الاحتياطية السحابية الأحدث بدلاً من ذلك)، وقم بإلغاء تثبيت WhatsApp وإعادة تثبيته، وتحقق من رقمك، وعندما يكتشف WhatsApp الرقم المحلي msgstore.db.crypt14 الملف، انقر فوق استعادة. كل رسالة من 3 أيام مضت سوف تظهر مرة أخرى سليمة.

2. فك التشفير التالف .crypt14 / .crypt15 النسخ الاحتياطية لتطبيق WhatsApp على الكمبيوتر (wa-crypt-tools)

ماذا لو تعطل ملف النسخ الاحتياطي لـ WhatsApp بنسبة 95 بالمائة أثناء استعادة الهاتف لأن قاعدة بيانات SQLite الموجودة داخل الغلاف المشفر تالفة قليلاً؟ يمكنك فك تشفير .crypt14 أو .crypt15 حاوية مباشرة على جهاز الكمبيوتر الخاص بك، وإصلاح قاعدة بيانات SQLite، وقراءة كل رسالة: - إذا كان لديك .crypt15 نسخة احتياطية مشفرة من طرف إلى طرف وحفظت المفتاح السداسي العشري المكون من 64 رقمًا (أو إذا قمت باستخراجه /data/data/com.whatsapp/files/key أو encrypted_backup.key)، قم بتثبيت أداة الطب الشرعي Python مفتوحة المصدر wa-crypt-tools (wagolek):

# Install wa-crypt-tools on Linux, macOS, or Windows Python:
python3 -m pip install wa-crypt-tools

# Decrypt a WhatsApp .crypt15 backup using your 64-character hex key:
wadecrypt <your_64_character_hex_key> msgstore.db.crypt15 msgstore.db

# Or decrypt a .crypt14 backup using the extracted 158-byte key file:
wadecrypt key msgstore.db.crypt14 msgstore.db
- مرة واحدة wadecrypt ينتج الخام msgstore.db SQLite، يمكنك إصلاح أي صفحات B-tree تالفة باستخدام SQLite الرسمي .recover المحرك في القسم 3 أدناه.

3. استخراج وإصلاح الإشارة التالفة .backup أو قاعدة بيانات Signal لسطح المكتب

  • ** للأندرويد signal-YYYY-MM-DD.backup الملفات:** إذا رفض هاتف جديد استيراد ملف نسخ احتياطي كبير لتطبيق Signal (أو إذا تم اقتطاع الملف عند نسخ بطاقة SD محتضرة)، فاستخدم أداة الطب الشرعي مفتوحة المصدر signalbackup-tools (github.com/bepaald/signalbackup-tools) مع عبارة مرور النسخ الاحتياطي الرقمية المكونة من 30 رقمًا لتفريغ الإطارات غير التالفة، وتصدير قاعدة بيانات SQLite الأولية، وإنشاء أرشيف محادثات HTML نظيف وقابل للبحث مع جميع مرفقات الوسائط سليمة:
    # Unpack a Signal Android backup (including truncated/partially corrupted archives) to HTML:
    signalbackup-tools signal-2026-10-30.backup "12345 67890 12345 67890 12345 67890" --exporthtml ./recovered_signal_chats/
    
  • لجهاز Signal لسطح المكتب (-/.config/Signal/sql/db.sqlite): حتى إذا تحطم هاتفك الذكي في حادث سيارة أو ألقي في بحيرة ولم يكن لديك أي نسخ احتياطية للهاتف، إذا كان الكمبيوتر المحمول الخاص بك مرتبطًا بـ Signal Desktop، فانسخ دليل تطبيق Signal بالكامل (%APPDATA%\Signal على ويندوز، -/Library/Application Support/Signal على نظام التشغيل MacOS، أو -/.config/Signal على Linux) قبل فتح التطبيق، وتصدير قاعدة بيانات SQLCipher باستخدام signalbackup-tools أو sqlcipher.

السيناريو 3: إصلاح قاعدة بيانات دردشة SQLite التالفة (database disk image is malformed) ونحت الصفوف المحذوفة

عندما يفقد الهاتف طاقة البطارية أثناء الكتابة أو يعاني من أخطاء في تخزين الفلاش، يتم فتحه sms.db, ChatStorage.sqliteأو msgstore.db يلقي خطأ SQLite الفادح: Error: database disk image is malformed (SQLITE_CORRUPT)

لا تقم مطلقًا بتشغيل برامج تجريبية مدمرة تابعة لجهة خارجية "مثبت SQLite مدفوع" على قاعدة بياناتك الأصلية. استخدم **SQLite الرسمي .recover الأمر ** المدمج مباشرة في sqlite3 (الإصدار 3.29.0+)، الذي يقوم بمسح صفحات قاعدة البيانات الأولية التي يبلغ حجمها 4 كيلو بايت واحدة تلو الأخرى متجاوزًا مؤشرات فهرس B-tree المعطلة:

خطوة بخطوة سكليتي .recover وإصلاح نقطة تفتيش WAL

  1. ** قم بعمل نسخة عمل من ملفات قاعدة البيانات الثلاثة (.db, .db-wal, .db-shm) في مجلد جديد:**
    mkdir ~/chat_rescue && cp sms.db* ~/chat_rescue/ && cd ~/chat_rescue/
    
  2. ** قم بتشغيل SQLite الرسمي .recover أمر لإعادة بناء قاعدة بيانات نظيفة (والتقاط صفوف القائمة المفقودة/المجانية):**
    # Standard recovery of all intact tables and rows into a brand-new healthy database:
    sqlite3 sms.db ".recover" | sqlite3 sms_repaired.db
    
    # FORENSIC DELETED-ROW RECOVERY: Add the --ignore-freelist flag so SQLite ALSO recovers
    # deleted message fragments still sitting inside unallocated freelist pages into a 'lost_and_found' table:
    sqlite3 sms.db ".recover --ignore-freelist" | sqlite3 sms_forensic_with_deleted.db
    
  3. تصدير نسخة CSV/HTML مرتبة زمنيًا ويمكن قراءتها بواسطة الإنسان من قاعدة البيانات التي تم إصلاحها:
  4. لنظام تشغيل Apple iOS sms.db (تحويل الطابع الزمني CoreData NanoSecond الزمني لشركة Apple منذ 1 يناير 2001 إلى UTC/التاريخ المحلي):
    sqlite3 -header -csv sms_repaired.db "
    SELECT
        m.ROWID AS MsgID,
        datetime(m.date / 1000000000 + 978307200, 'unixepoch', 'localtime') AS Timestamp_Local,
        CASE WHEN m.is_from_me = 1 THEN 'SENT BY ME' ELSE 'RECEIVED' END AS Direction,
        h.id AS Contact_Phone_Or_Email,
        m.service AS Service_Type,
        m.text AS Message_Body,
        a.filename AS Attachment_Path
    FROM message m
    LEFT JOIN handle h ON m.handle_id = h.ROWID
    LEFT JOIN message_attachment_join maj ON m.ROWID = maj.message_id
    LEFT JOIN attachment a ON maj.attachment_id = a.ROWID
    ORDER BY m.date ASC;
    " > recovered_imessage_transcript.csv
    
  5. ** للواتس اب أندرويد msgstore.db (حديث message مخطط الجدول):**
    sqlite3 -header -csv msgstore_repaired.db "
    SELECT
        m._id AS MsgID,
        datetime(m.timestamp / 1000, 'unixepoch', 'localtime') AS Timestamp_Local,
        CASE WHEN m.from_me = 1 THEN 'SENT BY ME' ELSE 'RECEIVED' END AS Direction,
        jid.raw_string AS Chat_Or_Sender_JID,
        m.text_data AS Message_Body
    FROM message m
    LEFT JOIN chat c ON m.chat_row_id = c._id
    LEFT JOIN jid ON c.jid_row_id = jid._id
    ORDER BY m.timestamp ASC;
    " > recovered_whatsapp_transcript.csv
    

جعل رسائلك المستردة مقبولة بنسبة 100% في المحكمة (تجنب الاعتراض "لقطة الشاشة المزيفة")

كل أسبوع في محكمة الأسرة، ومحكمة المطالبات الصغيرة، وجلسات الاستماع للأوامر التقييدية، والدعاوى المدنية، يتوجه الأشخاص إلى القاضي مع لقطات شاشة فضفاضة ومقتطعة للهواتف الذكية، حيث يقول العنوان العلوي لجهة الاتصال لقبًا مثل "Ex-Husband" أو "Landlord Mike" بدون رقم هاتف ولا مواعيد كاملة. يعترض المحامون المعارضون على الفور بموجب قاعدة الإثبات الفيدرالية 901 (عدم المصادقة) و القاعدة 106 (قاعدة الاكتمال)، بحجة أنه يمكن لأي شخص إعادة تسمية هاتف ثانٍ مدفوع مسبقًا "Landlord Mike" في تطبيق جهات الاتصال الخاص بهم وأرسلوا رسائل نصية لأنفسهم رسائل مزيفة في 30 ثانية.

Warning

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

قائمة مراجعة المصادقة في قاعة المحكمة المكونة من 5 نقاط للأدلة النصية والدردشة

  1. احذف الاسم المستعار لجهة الاتصال أو أعد تسميته مؤقتًا قبل التصدير/التقاط لقطة الشاشة حتى يظهر رقم الهاتف الأولي (+1-555-019-2834) أو ظهور البريد الإلكتروني في كل رأس:
  2. قبل أخذ لقطات شاشة احتياطية (أو الأفضل من ذلك، استخدم أداة تصدير PDF كاملة مثل iMazing, Decipher TextMessageأو استعلام SQLite CSV أعلاه الذي يطبع كلاً من اسم العرض والخام handle.id رقم الهاتف في كل فقاعة رسالة)، تأكد من أن رقم الهاتف الفعلي المكون من 10 أرقام أو البريد الإلكتروني لمعرف Apple الخاص بالمرسل مرئي في الجزء العلوي من سلسلة الرسائل، وليس مجرد لقب جهة اتصال قابل للتخصيص.
  3. اسحب سجلات تفاصيل مكالمات مشغل شبكة الجوال الرسمية (CDRs) وسجلات الطوابع الزمنية للرسائل القصيرة/رسائل الوسائط المتعددة كدعم مستقل من طرف ثالث:
  4. على الرغم من أن مشغل شبكة الجوال (AT&T وVerizon وT-Mobile وEE وVodafone وRogers وTelstra) لا يحتفظ بـ المحتوى النصي لرسائل SMS لفترة طويلة (ولا يرى أبدًا محتوى iMessage/WhatsApp المشفر)، فإن كشف حساب مشغل شبكة الجوال الشهري أو بوابة الحساب عبر الإنترنت يوفر سجل طرف ثالث مستقل للتاريخ الدقيق والدقيقة والاتجاه (الوارد/الصادر) ورقم الهاتف لكل رسالة SMS/MMS ومكالمة صوتية.
  5. إن إرفاق سجل استخدام AT&T / Verizon / T-Mobile الرسمي مباشرة خلف نسخة الرسالة النصية المطبوعة يثبت أن رقم هاتف الطرف الآخر قام بالفعل بإرسال رسالة نصية قصيرة إلى هاتفك على 14:22:09 on October 12، مما يؤدي إلى تدمير أي ادعاء بأنك قمت بتزييف لقطة الشاشة.
  6. قم بتصدير سلسلة المحادثة غير المحررة بالكامل (قاعدة الاكتمال - القاعدة 106 من FRE):
  7. لا تقم أبدًا باختيار لقطات شاشة معزولة أو قص ردودك الخاصة. بموجب قاعدة الإثبات الفيدرالية 106، إذا قدمت جزءًا من محادثة مسجلة، فيمكن للطرف المعارض أن يطالب بالموضوع المحيط بأكمله، ولا يثق القضاة في الصور المقصوصة التي تحذف الطوابع الزمنية أو الرسائل السابقة. اطبع تدفق المحادثة الزمني الكامل.
  8. احتفظ بالجهاز الأصلي وملف النسخ الاحتياطي المجزأ SHA-256 (قاعدة أفضل دليل - قاعدة FRE 1002 والمصادقة الذاتية - قاعدة FRE 902(14)):
  9. أحضر معك الهاتف الفعلي (المشحون وغير المقفل) إلى طاولة الاستماع في قاعة المحكمة، بحيث إذا اعترض المحامي المنافس على النسخة المطبوعة، يمكنك إخبار القاضي: "حضرتك، لدي الجهاز الأصلي هنا على طاولة المحامي لتفتيش المحكمة وفقًا لقاعدة أفضل الأدلة."
  10. بالإضافة إلى ذلك، بموجب قاعدة الإثبات الفيدرالية 902(14) (وما يعادلها من الولايات المعتمدة في جميع أنحاء الولايات المتحدة)، فإن البيانات المنسوخة من جهاز إلكتروني تتحقق ذاتيًا عندما تكون مصحوبة بشهادة مكتوبة تحدد قيمة التجزئة الرقمية SHA-256 للاستخراج الأصلي والنسخة.
  11. أرفق "إعلان المصادقة على رسائل النص/الدردشة الإلكترونية" (نموذج النسخ واللصق أدناه):
DECLARATION AUTHENTICATING ELECTRONIC MESSAGE EVIDENCE
(Pursuant to Federal Rules of Evidence 901(b)(1), 901(b)(4), and 902(14) / State Equivalents)

I, [YOUR FULL LEGAL NAME], declare under penalty of perjury under the laws of the State of [STATE] and the United States of America that the following is true and correct:

1. I am the [Plaintiff / Defendant / Petitioner / Respondent] in this action and have personal knowledge of the facts set forth herein.
2. I am the sole owner and user of the [Apple iPhone / Android Smartphone], assigned telephone number [YOUR 10-DIGIT PHONE NUMBER].
3. Attached hereto as EXHIBIT A is a true, complete, and unedited chronological transcript and printout of [SMS / iMessage / WhatsApp / Signal] messages exchanged between my telephone number ([YOUR NUMBER]) and [NAME OF OTHER PARTY] at telephone number [OTHER PARTY'S 10-DIGIT PHONE NUMBER] between [START DATE] and [END DATE].
4. I personally know that telephone number [OTHER PARTY'S NUMBER] belongs to and is used by [NAME OF OTHER PARTY] because: (a) we have communicated at that number regularly since [YEAR]; (b) I have spoken to [NAME OF OTHER PARTY] by voice call at that exact number and recognized their voice; and (c) the messages inside Exhibit A contain distinctive personal facts, photographs, and references known uniquely to [NAME OF OTHER PARTY] (pursuant to FRE Rule 901(b)(4) Distinctive Characteristics).
5. Not a single message, timestamp, or attachment in Exhibit A has been altered, deleted, or modified in any way. On [DATE OF EXTRACTION], a complete forensic backup of the original messaging database (`[FILENAME, e.g., sms.db / msgstore.db]`) was preserved prior to printing Exhibit A, yielding the following cryptographic SHA-256 hash fingerprint:
   SHA-256 Hash: [INSERT 64-CHARACTER HEXADECIMAL SHA-256 HASH FROM sha256sum / Get-FileHash]
6. Attached hereto as EXHIBIT B are true and correct copies of my official mobile carrier call/message detail records from [NAME OF CARRIER] independently corroborating the dates, times, and telephone numbers of the communications.
7. The original smartphone device and the SHA-256 verified backup archive remain in my secure custody and are available for immediate inspection by the Court.

Executed on [DATE] at [CITY, STATE].

____________________________________
[YOUR SIGNATURE]
[YOUR PRINTED NAME]

الأسئلة المتداولة

هل يستطيع مشغل شبكة الجوال (AT&T، وVerizon، وT-Mobile، وVodafone) إعطائي نسخة مطبوعة من محتوى الرسالة النصية المحذوفة إذا اتصلت بخدمة العملاء؟

لا، ليس من خلال خدمة العملاء العادية، وعادةً ليس على الإطلاق بالنسبة لمحتوى الرسالة. أولاً، لا تستطيع شركات الاتصالات أبدًا الوصول إلى محتوى iMessages، أو رسائل WhatsApp، أو رسائل Signal، أو محادثات RCS المشفرة من طرف إلى طرف، لأن تلك المحادثات تمر عبر الإنترنت في شكل مشفر، وليس من خلال خوادم الرسائل القصيرة الخاصة بشركة الاتصالات. ثانيًا، حتى بالنسبة للرسائل النصية القصيرة ذات الفقاعة الخضراء التقليدية، فإن شركات النقل الكبرى تقوم فقط بتخزين نص النص الفعلي على خوادم تبديل الرسائل الخاصة بها لمدة 3 إلى 7 أيام (تحتفظ Verizon بمحتوى الرسائل القصيرة لمدة 3 إلى 5 أيام تقريبًا؛ وتتجاهل AT&T وT-Mobile المحتوى الأساسي لرسالة SMS فورًا تقريبًا بعد التسليم أو في غضون 72 ساعة)، وسوف يقومون فقط بإصدار محتوى الرسائل القصيرة المخزنة استجابةً لاستدعاء صالح أو أمر تفتيش بأمر من المحكمة، وليس للعميل على الهاتف أبدًا. ولهذا السبب يمكنك استعادة الرسائل المحذوفة مباشرة من قاعدة بيانات SQLite الخاصة بهاتفك (`sms.db` / `bugle_db`) أو أن النسخة الاحتياطية على iCloud/Google Drive هي دائمًا المسار الوحيد لاستعادة الكلمات الفعلية.

ماذا يحدث إذا كان الشخص الآخر على WhatsApp أو Signal أو iMessage يستخدم خيار "الحذف للجميع" أو "اختفاء الرسائل" لمسح تهديداته؟

عندما ينقر المرسل على "الحذف للجميع" (أو "إلغاء الإرسال" في iOS iMessage) أثناء اتصال هاتفك بالإنترنت، يتلقى التطبيق أمر الحذف عن بعد الذي يزيل الرسالة من شاشتك المرئية. ومع ذلك، لا يزال بإمكان ثلاث طرق لاسترداد الطب الشرعي التقاطها: (1) إذا وضعت هاتفك في وضع الطائرة قبل أن ينقر المرسل على "حذف للجميع"، فلن يتمكن أمر الحذف عن بُعد من الوصول إلى هاتفك حتى تقوم بتصوير الشاشة وعمل نسخة احتياطية منها؛ (2) على هواتف Android التي تم تمكين "سجل الإشعارات" (`Settings -> Notifications -> Advanced settings -> Notification history`)، يقوم نظام التشغيل Android بتسجيل النص الكامل الدقيق لكل لافتة إشعارات WhatsApp وSignal وSMS الواردة لمدة 24 ساعة، ولا يمكن لميزة "الحذف للجميع" مسح سجل إشعارات نظام Android؛ و(3) في نظامي التشغيل iOS وAndroid، غالبًا ما يترك الصف المحذوف أجزاء نص متبقية داخل SQLite غير المفرغة `.db-wal` قم بكتابة ملف السجل المسبق إذا قمت بتصوير الهاتف فورًا في وضع الطائرة.

لماذا صدرت بلدي `sms.db` أو `msgstore.db` هل فقدت قاعدة البيانات آخر 3 أيام من الرسائل عندما فتحتها في متصفح DB لـ SQLite؟

لأنك نسخت فقط `.db` الملف وتركه وراءه `.db-wal` (سجل الكتابة المسبق) في الدليل المصدر. تستخدم قواعد بيانات iOS وAndroid الحديثة وضع SQLite WAL، حيث يتم إلحاق جميع الرسائل المرسلة والمستلمة حديثًا بالرفيق `.db-wal` الملف أولاً ويتم دمجه فقط ("نقطة التفتيش") في الملف الرئيسي `.db` ملف بشكل دوري. كلما استخرجت `sms.db`, `ChatStorage.sqlite`, `msgstore.db`أو `bugle_db`، يجب عليك نسخ جميع الملفات الثلاثة (`filename.db`, `filename.db-wal`، و `filename.db-shm`) في نفس المجلد بالضبط قبل فتح قاعدة البيانات في SQLite، والذي سيقوم بعد ذلك تلقائيًا بدمج معاملات WAL وعرض كل رسالة حديثة.

هل يمكنني الاستعانة بمختبر الطب الشرعي المتنقل لاستخراج النصوص المحذوفة من هاتفي باستخدام Cellebrite أو Oxygen Forensics لرفع دعوى قضائية؟

نعم. على عكس استعادة محرك الأقراص الثابتة في غرف الأبحاث، يُسمح لك قانونًا بتعيين فاحص الطب الشرعي الرقمي المعتمد (يحمل شهادات مثل asiacis CFCE أو GIAC GCFE/GASF أو Cellebrite CCO/CCPA) لإجراء استخراج الطب الشرعي المعتمد لهاتفك الذكي باستخدام Cellebrite UFED أو Magnet AXIOM أو Oxygen Forensic Detective. يتقاضى فاحص الطب الشرعي الرقمي المرخص عادةً رسمًا ثابتًا يتراوح من 400 دولار إلى 1200 دولار لكل جهاز لإجراء استخراج متقدم لنظام منطقي أو نظام ملفات، واقتطاع قائمة SQLite المجانية المحذوفة وعناصر WAL، وإنشاء تقرير PDF مختوم من Bates مع تجزئات SHA-256، والتوقيع على شهادة الوصي 902(14) الرسمية التي تجعل التقرير يتم المصادقة عليه ذاتيًا في المحكمة دون الحاجة الخبير للإدلاء بشهادته شخصيا.

تم التأكد من المصادر

  • المعهد الوطني للمعايير والتكنولوجيا (NIST، الولايات المتحدة): منشور NIST الخاص 800-101 Rev. 1: إرشادات حول الطب الشرعي للأجهزة المحمولة (الحفظ، وعزل الترددات اللاسلكية في وضع الطائرة، وعناصر قاعدة بيانات SQLite، والتحقق من التجزئة).
  • المكتب الإداري لمحاكم الولايات المتحدة: قواعد الإثبات الفيدرالية (FRE) القاعدة 106 (بقية الكتابات أو البيانات المسجلة أو ذات الصلة)، القاعدة 901(ب)(1)، (ب)(4)، و(ب)(9) (تصديق الأدلة الإلكترونية)، القاعدة 902(13) و902(14) (البيانات المعتمدة المنسوخة من جهاز إلكتروني عبر قيمة التجزئة)، والقاعدة 1002 (متطلبات الأصل).
  • اتحاد SQLite: وثائق SQLite الرسمية حول تسجيل الكتابة المسبقة (وضع WAL)، وتنسيق الملف لقواعد البيانات الفاسدة، وصفحات القائمة الحرة، و .recover أمر سطر الأوامر.
  • شركة Apple Inc.: دليل أمان نظام Apple الأساسي (فئات حماية البيانات، قبل إلغاء القفل لأول مرة مقابل بعد إلغاء القفل لأول مرة، وهيكل بيان النسخ الاحتياطي لـ iTunes/Finder).
  • مجموعة العمل العلمية المعنية بالأدلة الرقمية (SWGDE): أفضل الممارسات المتعلقة بالطب الشرعي للهاتف المحمول وفحص قاعدة بيانات SQLite.

أدلة ذات صلة