
APT-Hunter هي أداة بحث عن التهديدات لسجلات أحداث Windows صُممت بعقلية الفريق الأرجواني لتوفير كشف تحركات APT المخفية في بحر سجلات أحداث Windows لتقليل الوقت اللازم لكشف النشاط المشبوه.
اصطياد التهديدات في سجلات أحداث Windows، مبني بعقلية الفريق البنفسجي.
APT-Hunter هي أداة لاصطياد التهديدات في سجلات أحداث Windows. تستخدم قواعد كشف محددة مسبقًا وإحصاءات السجلات لإظهار نشاط APT المخفي في كميات كبيرة من الأحداث، مما يقلل الوقت اللازم لكشف السلوك المشبوه. وهي فعّالة بشكل خاص في تقييمات الاختراق.
تُكتب النتائج كخط زمني يمكن تحليله مباشرة في Excel وTimeline Explorer وTimesketch والأدوات المشابهة، أو استكشافه في لوحة التحكم على الويب المدمجة مع فرز اختياري بواسطة LLM محلي.
نزّل الملفات التنفيذية المُجمّعة من صفحة الإصدارات، أو شغّلها من المصدر (Python 3.8+):
git clone https://github.com/ahmedkhlief/APT-Hunter.git
cd APT-Hunter
python3 -m pip install -r requirements.txt
python3 APT-Hunter.py -p /opt/wineventlogs/ -o Project1 -allreport
يقبل -p مجلدًا أو ملفًا واحدًا. أضف -web لفتح لوحة التحكم عند انتهاء التحليل.





شغّل python3 APT-Hunter.py -h للحصول على القائمة الكاملة. الخيارات الرئيسية:
| الخيار | الوصف |
|---|---|
-p, --path | ملف السجل أو المجلد المراد تحليله |
-o, --out | اسم / مجلد المخرجات |
-start, -end | تقييد الخط الزمني (بصيغة ISO) |
-tz | المنطقة الزمنية (local أو مثل Asia/Dubai) |
-cores | أنوية المعالج المراد استخدامها (الافتراضي: نصف المتاح) |
-hunt, -huntfile, -eid | الاصطياد بواسطة سلسلة نصية/تعبير نمطي، أو ملف تعبيرات نمطية، أو معرّف الحدث |
-sigma, -rules | الاصطياد بقواعد Sigma المحوّلة إلى JSON |
-o365hunt, -o365rules, -o365raw | اصطياد سجلات تدقيق Office 365 |
-procexec, -logon, -objaccess, -allreport | تقارير إضافية |
-web, -webview, -webhost, -webport | تشغيل لوحة التحكم على الويب |
-llm, -llm-provider, -llm-url, -llm-model, -llm-key, -llm-severity, -llm-batch, -llm-context | تحليل LLM المحلي |
تحليل مجلد من ملفات EVTX (تُكتشف أنواع السجلات تلقائيًا):
python3 APT-Hunter.py -p /opt/wineventlogs/ -o Project1 -allreport
التركيز على إطار زمني:
python3 APT-Hunter.py -p /opt/wineventlogs/ -o Project1 -allreport -start 2022-04-03 -end 2022-04-05T20:56
الاصطياد بسلسلة نصية، أو تعبير نمطي، أو ملف من التعبيرات النمطية:
python3 APT-Hunter.py -hunt "psexec" -p /opt/wineventlogs/ -o Project2
python3 APT-Hunter.py -huntfile "(psexec|psexesvc)" -p /opt/wineventlogs/ -o Project2
python3 APT-Hunter.py -huntfile huntfile.txt -p /opt/wineventlogs/ -o Project2
الاصطياد بقواعد Sigma:
python3 APT-Hunter.py -sigma -rules rules.json -p /opt/wineventlogs/ -o Project2
جلب أحدث قواعد Sigma المحوّلة لـ APT-Hunter (يكتب rules.json):
./Get_Latest_Sigma_Rules.sh
تصفّح تقريرًا مُنشأً في المتصفح: التصفية والرسوم البيانية وخط زمني للحوادث وتصدير تقرير الاستجابة للحوادث.
python3 run_webapp.py <Output>/<Output>_Report.xlsx # or pass the output directory
python3 APT-Hunter.py -p <logs> -o <Output> -web # analyse, then open the dashboard
python3 APT-Hunter.py -webview <Output> # open an existing report
قبول نتيجة فرز يثبّتها على الخط الزمني للحوادث مع أدلتها، مرفقة كـ أحداث فرعية قابلة للطي: تظهر أسفل النتيجة في الجدول بدلًا من تشابكها مع كل شيء آخر، وتُستبعد من رسوم الخط الزمني البيانية لتبقى الرسوم قابلة للقراءة. إزالة نتيجة تُزيل أحداثها الفرعية معها.
يرتبط الخادم بـ 0.0.0.0:5000 افتراضيًا. استخدم --host / --port (أو -webhost / -webport) لتغيير ذلك، على سبيل المثال --host 127.0.0.1 لإبقائه محليًا. تُحفظ النتائج المراجَعة والخط الزمني عند إعادة بناء ذاكرة التخزين المؤقت للتقرير.

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

الخط الزمني للحوادث: النتائج المثبّتة مرسومة حسب الوقت ومُرمّزة بالألوان حسب الخطورة. قرّب وحُرّك داخل الفترات المزدحمة، وأنشئ ملخصًا تنفيذيًا بالذكاء الاصطناعي، وصدّر تقرير الاستجابة للحوادث أو CSV.