SentinelBoard - Hafif SIEM ve Log Korelasyon Platformu

[ Django - Python - Redis Streams - scikit-learn - Sigma Rules - MITRE ATT&CK ]

SentinelBoard, tek sunucu üzerinde çalışacak şekilde tasarlanmış hafif bir SIEM (Security Information and Event Management) platformudur. Linux sistem loglarını gerçek zamanlı toplar, normalleştirir, kural tabanlı korelasyon ve makine öğrenmesi ile analiz eder; tespit edilen olayları web panelinde ve Telegram üzerinden bildirir.

İŞLEME HATTI

- Collector — auth.log, syslog ve nginx access.log dosyalarını satır satır izler, yapılandırılmış olaylara çevirir
- Redis Streams — collector ile parser arasında kuyruk görevi görür, yük altında veri kaybını önler
- Parser — olayları normalleştirir ve veritabanına yazar
- Korelasyon Motoru — Sigma formatındaki kuralları 10 saniyelik aralıklarla değerlendirir
- ML Worker — 10 dakikalık zaman pencerelerinden 11 özellik çıkarır, Z-score ve Isolation Forest ile sapma arar
- Dashboard — Django ve Django REST Framework tabanlı web arayüzü

TESPİT KATMANLARI

- Kural tabanlı: SSH kaba kuvvet saldırısı, web uygulama taraması, firewall paket seli, şüpheli sudo kullanımı, yeni kullanıcı hesabı oluşturulması, başarısız sudo denemesi
- Tüm kurallar MITRE ATT&CK tekniklerine eşlenmiştir (T1110, T1595, T1548, T1136)
- Anomali tabanlı: Z-score ve Isolation Forest yöntemlerinin birlikte işaret ettiği sapmalar

ÜRETİM ORTAMINDAN ÇIKAN MÜHENDİSLİK KARARLARI

- Sistemin kendi log çıktısını yeniden işlemesi sönümlenmeyen bir geri besleme döngüsü oluşturmaktaydı. Yapılandırılabilir bir eleme katmanı eklenerek gelen syslog trafiğinin %84'ü işleme alınmadan ayrıştırılmaktadır.
- Olay alanları serbest biçimli bir JSON sütununda saklandığından, yanlış alan adı sorgulamak hata üretmeden sessizce boş sonuç döndürmektedir. Üretici ve tüketici modüller arasındaki alan sözleşmesi otomatik bir test ile doğrulanmaktadır.
- Düşük hacimli ve uzun süreli giriş denemelerini yakalamak üzere eşik tabanlı bir kural tasarlanmış; 31 günlük gerçek veri üzerinde ölçüldüğünde ayırt edici bir eşik bulunamadığı görülerek kural yerine erişim sonrası tekniklere yönelik tespitler geliştirilmiştir.
- Alert tekrarını önleyen bekleme süresi kural bazında yapılandırılabilir. Kuralların yapısal tutarlılığı — bekleme süresinin değerlendirme penceresinden kısa olmaması gibi — ayrı bir test katmanıyla denetlenmektedir.

DAĞITIM VE İŞLETİM

- Beş bağımsız systemd servisi: collector, parser, engine, ml, web
- Gunicorn ve Nginx ters proxy, Let's Encrypt sertifikası
- Panel HTTP Basic Authentication ile korunmaktadır; erişim talep üzerine sağlanmaktadır
- Otomatik veri saklama politikası ve günlük yedekleme
- 35 otomatik test: birim testleri, veritabanı davranış testleri ve kural denetim testleri