تخطَّ إلى المحتوى

Timesketch - تحليل خط زمني أساسي تعاوني

Timesketch - تحليل خط زمني أساسي تعاوني

Timesketch هي أداة مفتوحة المصدر (من Google) لـ تحليل خط زمني أساسي تعاوني. يقوم المحققون بتجميع البيانات المختومة بالزمن — قطع أثرية من القرص/التجميع التي يتم تحليلها بواسطة Plaso وسجلات و CSV — في “رسم”، ثم البحث والتصفية والعلامات والتعليق والنجوم للأحداث على خط زمني مشترك. تم بناؤها لعمل فريق DFIR: يعمل محللون متعددون على نفس الحادثة، ويشاركون عمليات البحث المحفوظة، ويشغلون محللي آليين لكشف النشاط المريب. يقترن بشكل طبيعي مع أدوات التجميع مثل Velociraptor.

النشر

الطريقةالأمر / الملاحظة
Docker Compose (موصى به)اتبع نشر docker-compose الرسمي في المستندات
تثبيت تطوير سريعاستخدم deploy/docker الخاص بالمشروع
إنشاء مستخدمtsctl create-user <username>
إضافة إلى المجموعةtsctl add-user-to-group ...
واجهة الويبتخدم على المضيف/المنفذ المكون بعد بدء التشغيل

Timesketch هي تطبيق خادم (Elasticsearch/OpenSearch + PostgreSQL + واجهة ويب)، وليس ملف ثنائي واحد. قم بالنشر مع Docker Compose للحصول على أسلس الإعداد.

تجميع البيانات

المصدركيف
ملف تخزين Plasoقم بتحميل ملف .plaso المنتج من log2timeline.py
CSV / JSONLتحميل مع الأعمدة المطلوبة datetime، message، timestamp_desc
استيراد CLItimesketch_importer -u user -p pass --host URL data.csv
استيراد APIاستخدم عميل Python import_streamer

Plaso → Timesketch

# قم بإنشاء سطر زمني فائق من صورة/تجميع مع Plaso، ثم استيراد
log2timeline.py --storage-file evidence.plaso /mnt/triage
timesketch_importer --host https://ts.example.com \
  -u analyst evidence.plaso --sketch_id 1

البحث في الخط الزمني

يستخدم Timesketch بناء جملة استعلام Elasticsearch/Lucene.

الاستعلامالمطابقات
powershellالأحداث التي تحتوي على المصطلح
data_type:"windows:evtx:record"نوع بيانات محلل معين
message:*mimikatz*حرف بدل داخل حقل الرسالة
tag:badالأحداث التي وضعت عليها علامة “سيء”
datetime:[2026-06-01 TO 2026-06-02]نطاق زمني
event_identifier:4624 AND username:adminمجموعات منطقية

العمل مع الأحداث

الإجراءالوصف
النجمضع علامة على الأحداث المهمة
العلامةتطبيق التصنيفات (على سبيل المثال bad، suspicious، lateral-movement)
التعليقإضافة ملاحظات المحقق إلى حدث
البحث المحفوظتخزين استعلام لإعادة الاستخدام / المشاركة
القصةاكتب سردية تضمن عمليات بحث محفوظة والنتائج

المحللون

يعمل المحللون تلقائياً على خط زمني لوضع علامات على الأنماط.

المحللالسطح
البحث عن المتصفح / القطع الأثريةنشاط الويب المهم
أحداث تسجيل الدخول/Windowsشذوذ المصادقة
Sigmaمطابقة قواعد كشف Sigma مقابل الأحداث
Yet، خيوط الذكاء التهديدالمؤشرات المعروفة السيئة
الموسومعلامات تلقائية للأحداث حسب القواعد
المهمةكيف
تشغيل محللجهاز التحكم من واجهة المستخدم أو API على خط زمني
قواعس Sigmaإدارة القواعس حتى يتمكن محلل Sigma من مطابقتها
التجميعاتبناء الرسوم البيانية (على سبيل المثال الأحداث بمرور الوقت والمستخدمون الأفضل)

API / الأتمتة

from timesketch_api_client import client
ts = client.TimesketchApi("https://ts.example.com", "analyst", "password")
sketch = ts.get_sketch(1)
for event in sketch.explore("tag:bad", as_pandas=True).itertuples():
    print(event.message)

سير العمل الشائع

# بناء سطر زمني فائق من مخرجات التجميع وتحميله في رسم
log2timeline.py --storage-file case.plaso /evidence
timesketch_importer -u analyst case.plaso --sketch_id 5

# في واجهة المستخدم: البحث عن نشاط مريب والعلامات والنتائج والكتابة إلى قصة
#   message:*mimikatz*  →  tag "credential-access"  →  add to Story

Timesketch مقابل أدوات خط زمني أخرى

الجانبTimesketchPlaso (log2timeline)Splunk
الدورواجهة مستخدم تحليل تعاونيةتوليد خط زمنيSIEM/analytics سجل
التعاونمن الدرجة الأولى (الرسومات والقصص)لا شيء (CLI)لوحات تحكم الفريق
الإدخالPlaso و CSV و JSONLنظام الملفات/القطع الأثريةالمحولات/الفهارس
الأفضل لمراجعة خط زمني DFIR الفريقإنتاج خط زمنيتسجيل مؤسسة عريضة

الموارد