
استخلاص الجدول الزمني للطب الشرعي بشكل تلقائي من تفريغ الذاكرة المتطايرة
استخراج الجدول الزمني للطب الشرعي تلقائياً من تفريغات الذاكرة المتطايرة.
يقوم AutoTimeliner بتشغيل العديد من إضافات Volatility3 ضد صور ذاكرة Windows و Linux و macOS، ثم يدمج مخرجاتها في جدول زمني واحد CSV مرتب:
| الإضافة | ما تلتقطه |
|---|---|
timeliner | أحداث الطوابع الزمنية عبر الإضافات (جميع عائلات أنظمة التشغيل عند دعمها) |
| الإضافة | ما تلتقطه |
|---|---|
timeliner | الطوابع الزمنية من العمليات، التسجيل، المقابض، إلخ. |
mftscan | إدخالات ملفات MFT الموجودة في الذاكرة |
shellbags | سجل وصول المستخدم إلى المجلدات من خلايا التسجيل |
| الإضافة | ما تلتقطه |
|---|---|
linux.pslist | سياق الجدول الزمني لبدء/إنهاء العملية |
linux.bash | دليل أوامر الصدفة |
linux.lsof | دليل الملفات المفتوحة من العمليات |
| الإضافة | ما تلتقطه |
|---|---|
mac.pslist | سياق الجدول الزمني لبدء/إنهاء العملية |
mac.bash | دليل أوامر الصدفة |
mac.lsof | دليل الملفات المفتوحة من العمليات |
| الإضافة | ما تلتقطه |
|---|---|
psscan | العمليات النشطة والمنتهية والمخفية مع الطوابع الزمنية |
cmdline | وسيطات سطر الأوامر لكل عملية |
userassist | دليل تنفيذ البرامج من سجل Windows |
| الإضافة | ما تلتقطه |
|---|---|
netscan | اتصالات الشبكة مع الطوابع الزمنية للإنشاء |
| الإضافة | ما تلتقطه |
|---|---|
malfind | حقن الشيفرة ومناطق الذاكرة المشبوهة |
svcscan | خدمات Windows (مفيدة لكشف الثبات) |
| الإضافة | ما تلتقطه |
|---|---|
dlllist | مكتبات DLL المحملة بواسطة كل عملية |
filescan | الملفات المفتوحة في الذاكرة وقت الالتقاط |
يقوم AutoTimeliner بتحديد عائلة صورة الذاكرة تلقائياً وتمكين مجموعة الإضافات المناسبة لنظام Windows أو Linux أو macOS. لبدء تشغيل أسرع، يمكنك تمرير
--os-hintلتخطي الكشف التلقائي.
git clone https://github.com/andreafortuna/autotimeliner.git
cd autotimeliner
poetry install
pip install .
autotimeliner -f IMAGEFILE [-t TIMEFRAME] [-o OUTPUT] [options]
استخراج جدول زمني كامل من صورة واحدة:
autotimeliner -f TargetServer.raw
التصفية إلى نافذة زمنية معينة:
autotimeliner -f TargetServer.raw -t 2023-10-17..2023-10-21
معالجة جميع ملفات .raw في دليل، مع تحديد مسار الإخراج:
autotimeliner -f './*.raw' -o /evidence/timeline.csv
تسريع بدء التشغيل عندما تعرف نظام تشغيل التفريغ مسبقاً:
autotimeliner -f TargetServer.raw --os-hint windows
استخدام قيم مرادفات macOS للراحة:
autotimeliner -f MacbookCapture.mem --os-hint darwin
تشغيل timeliner و shellbags فقط (تخطي فحص MFT):
autotimeliner -f TargetServer.raw --skip-mftscan
فحص طب شرعي كامل (مجموعة إضافات Windows + الإضافات الموسعة الاختيارية):
autotimeliner -f TargetServer.raw --with-dlllist --with-filescan --with-handles --with-envars
فحص سريع مركز على البرامج الضارة:
autotimeliner -f TargetServer.raw --skip-timeliner --skip-mftscan --skip-shellbags
جمع جدول زمني مركز على Linux (تمكين إضافات linux تلقائياً):
autotimeliner -f UbuntuWorkstation.mem
جمع جدول زمني مركز على macOS (تمكين إضافات macOS تلقائياً):
autotimeliner -f MacbookCapture.mem
يحتوي ملف CSV الناتج على الأعمدة التالية:
يتضمن AutoTimeliner العديد من التحسينات لتقليل وقت التعريف:
--os-hint يتجاوز اكتشاف نظام التشغيل التلقائي بالكامل.linux، ubuntu، macos).path + size + mtime).ملف التخزين المؤقت:
~/.cache/autotimeliner/volatility3/.autotimeliner_profile_cache.json
أثناء الكشف، تتضمن السجلات رسائل تقدم الفحص ونتائجه مثل:
OS probe attempt: family=windows plugin=windows.info.Info
OS probe returned no rows: windows.info.Info
Memory image identification succeeded: os=linux profile=linux:... probe=linux.banners.Banners
راجع docs/migration.md للحصول على مقارنة كاملة.
التغييرات الرئيسية:
-p / --customprofile مهمل — يتم تجاهله بصمت.mftparser → mftscan — نفس البيانات، اسم إضافة جديد.mactime أصبح اختيارياً — استخدم --use-mactime لسير عمل ملف body القديم.poetry install
poetry run pytest
MIT — راجع LICENSE.
Andrea Fortuna — [email protected] — andreafortuna.org
handles | المقابض المفتوحة (الملفات، مفاتيح التسجيل، كائنات المزامنة) |
envars | متغيرات البيئة للعمليات |
| المتطلب | الإصدار | ملاحظات |
|---|
| Python | ≥ 3.9 | |
| Volatility3 | ≥ 2.5 | يتم تثبيته تلقائياً عبر Poetry/pip |
| jsonschema | ≥ 4.0 | يمكّن التحقق من صحة مخطط Volatility3 ويتجنب تحذير Dependency for validation unavailable: jsonschema |
| mactime | أي | اختياري — مطلوب فقط لوضع --use-mactime القديم |
| العلامة | الوصف |
|---|
-f, --imagefile | ملف تفريغ الذاكرة أو نمط glob (مثل '*.raw') |
-t, --timeframe | التصفية إلى نطاق YYYY-MM-DD..YYYY-MM-DD |
-o, --output | مسار CSV الناتج (الافتراضي: <imagefile>-timeline.csv) |
--os-hint | فرض عائلة نظام تشغيل الصورة (windows, linux, mac؛ مرادفات: win, macos, darwin) وتخطي التعريف التلقائي |
--skip-timeliner | تخطي إضافة timeliner |
--skip-mftscan | تخطي إضافة mftscan |
--skip-shellbags | تخطي إضافة shellbags |
--skip-psscan | تخطي فحص العمليات |
--skip-cmdline | تخطي استخراج سطر الأوامر |
--skip-netscan | تخطي فحص اتصالات الشبكة |
--skip-userassist | تخطي دليل تنفيذ البرامج |
--skip-svcscan | تخطي فحص خدمات Windows |
--skip-malfind | تخطي كشف البرامج الضارة/الحقن |
--with-dlllist | تفعيل تحليل DLL (بطيء) |
--with-filescan | تفعيل فحص الملفات المفتوحة (سجلات كثيرة) |
--with-handles | تفعيل فحص المقابض (سجلات كثيرة) |
--with-envars | تفعيل استخراج متغيرات البيئة |
--use-mactime | الوضع القديم: استخدام برنامج mactime الخارجي |
-v, --verbose | تفعيل تسجيل التصحيح |
--version | طباعة الإصدار والخروج |
| العمود | الوصف |
|---|
Timestamp (UTC) | طابع زمني UTC بتنسيق ISO 8601 |
Source | الإضافة التي أنتجت السجل |
Description | اسم الملف، المسار، العملية، أو مفتاح التسجيل |
Detail | نوع الطابع الزمني، المستخدم، أو سياق إضافي |
Inode | رقم inode MFT (حيثما ينطبق) |
UID / GID | معرفات المستخدم/المجموعة |
Size | حجم الملف بالبايت |
Mode | سلسلة وضع الملف |