OxiSec SIEM Rehberi
Kurulumdan ileri özelliklere. Her bölüm gerçek ekran görüntüleri, komutlar ve çalışan örneklerle.
🎯 Genel Bakış
OxiSec SIEM, firewall ve ağ cihazlarınızın ürettiği syslog verilerini toplayıp analiz eden bir güvenlik olay yönetimi platformudur. Sisteme gelen her log:
- Cihaz tipine göre özel parser'a yönlendirilir (Fortigate / MikroTik / WG / Keenetic)
- IP adresleri GeoIP ile zenginleştirilir (ülke, şehir, ISP)
- Threat Intelligence kaynaklarına karşı kontrol edilir (abuse_score, Tor exit, bilinen kötü IP)
- AI skorlama (Qwen 2.5 yerel) her log'a 0-100 arası tehdit puanı verir
- 5 dakikada bir çalışan korelasyon motoru 20+ pattern'a karşı tarama yapar (mail, Windows, firewall)
- İlgili alarmlar Incident Builder tarafından otomatik gruplanır
- Her incident için AI özet + MITRE etiketleri + öneriler üretilir
Veriler nerede?
Cloud planlarında Türkiye'deki data center'larda. AI analizi yerel (Ollama), verileriniz asla OpenAI/Google'a gitmez. Enterprise planda on-prem kendi sunucunuzda.
🚀 Hızlı Başlangıç (15 dakika)
Ücretsiz hesap oluşturun
signup.html sayfasından kayıt olun. Email doğrulama linki gelecek, tıklayıp aktif edin.
İlk cihazınızı ekleyin
Dashboard → Devices → + Yeni Cihaz. Cihazın IP'sini ve tipini girin (Fortigate, MikroTik, vb.).
Size özel bir syslog hedef adresi gösterilecek — bunu bir sonraki adımda kullanacaksınız.
Firewall'ı syslog göndermek üzere yapılandırın
Cihaz tipinize göre aşağıdaki bölümlere bakın:
Akışı doğrulayın
Dashboard → Logs. Cihaz doğru yapılandırıldıysa 1-2 dakika içinde log'lar akmaya başlayacak.
2FA etkinleştirin
Menü → 2FA. Google Authenticator'la QR kodu tarayın, hesabınızı koruyun.
🔥 Fortigate Kurulumu
Fortigate FortiOS üzerinden syslog kurulumu 3 komutla biter.
CLI ile kurulum (tüm FortiOS versiyonları)
# FortiGate CLI'ya SSH veya konsol üzerinden bağlanın
# Aşağıdaki komutları yapıştırın (IP ve port'u size verilenle değiştirin)
config log syslogd setting
set status enable
set server "syslog.oxisec.com" # Size verilen adres
set port 5514 # Size verilen port
set facility local7
set format default
set mode udp
set enc-algorithm disable
end
# Tüm trafik loglarını dahil et
config log syslogd filter
set severity information
set forward-traffic enable
set local-traffic enable
set anomaly enable
set netscan-discovery enable
set netscan-vulnerability enable
end
GUI ile kurulum
- FortiGate web arayüzüne giriş yapın
- Log & Report → Log Settings
- Remote Logging → Syslog → Enable
- Server:
syslog.oxisec.com· Port:5514· Facility:Local7 - Save, bir dakika bekleyin, dashboard'da logların geldiğini görün
Fortigate parser'ımız %99.9 başarı oranında
FortiOS 6.0 ve üzeri tüm sürümler desteklenir. Action, policy, srcintf, dstintf, hostname alanları otomatik parse edilir.
📡 MikroTik Kurulumu
RouterOS için 2 komut yeterli. Tüm kategorideki log'lar OxiSec'e gönderilir.
# RouterOS CLI (Winbox Terminal veya SSH)
# 1. Remote syslog action ekleyin
/system logging action
add name=oxisec target=remote remote=syslog.oxisec.com remote-port=5514
# 2. Log topic'lerini gönderin (firewall, info, warning, error)
/system logging
add topics=firewall action=oxisec
add topics=info action=oxisec
add topics=warning action=oxisec
add topics=error action=oxisec
add topics=critical action=oxisec
Firewall loglarını detaylandırmak (önerilen)
# Tüm drop rule'larına log ekleyin
/ip firewall filter
set [find action=drop] log=yes log-prefix="drop:"
# NAT'ta da log istiyorsanız
/ip firewall nat
set [find] log=yes log-prefix="nat:"
Dikkat: Tüm trafik loglanırsa RouterOS CPU'su yoğun cihazlarda yüklenir.
RB450/RB750 gibi küçük cihazlarda önce drop ve reject action'lı rule'ları loglayın, ihtiyaç duydukça genişletin.
🛡 WatchGuard Kurulumu
WatchGuard Fireware OS için syslog ayarı.
- WatchGuard web console'a giriş
- System Status → Syslog Server
- Enable Syslog
- Server:
syslog.oxisec.com· Port:5514· Protocol:UDP - Log Format: IBM LEEF veya Syslog
- Save ve firewall politikalarının "Log" tick'ini açmayı unutmayın
🌐 Keenetic Kurulumu
Keenetic router'ları için CLI üzerinden syslog.
# Keenetic CLI (Web Arayüz → System → CLI)
system syslog server syslog.oxisec.com 5514
system syslog rotate
system log level info
system configuration save
⚙ Generic Syslog
Desteklenmeyen cihazlar için generic parser devreye girer. Çoğu syslog uyumlu cihaz çalışır:
- pfSense · OPNsense
- Cisco ASA · Meraki
- Sophos XG · SG
- Check Point · FortiWeb
- SonicWall · Juniper
- Linux syslog-ng / rsyslog
Generic parser; IP, port, protokol, action, timestamp gibi temel alanları çeker. Enterprise planda özel parser geliştirebiliriz.
🔒 2FA Kurulumu
2FA, hesabınıza ek bir güvenlik katmanı ekler. Parola ele geçirilse bile saldırgan telefonunuzdaki 6 haneli koda ulaşamaz.
Desteklenen Authenticator Uygulamaları
- Google Authenticator (iOS / Android) — en yaygın
- Microsoft Authenticator — iş hesaplarıyla iyi
- Authy — cihaz senkronizasyon
- 1Password — parola yöneticinizle tek yerden
- Bitwarden — açık kaynak alternatif
Kurulum Adımları
Settings → 2FA sayfasını açın
Menüden 🔒 İki Adımlı Doğrulama linkine tıklayın.
"🔒 2FA Etkinleştir" butonuna basın
Bir QR kod ve 16 haneli secret görünecek.
Authenticator uygulamanızda QR kodu tarayın
Uygulamada "OxiSec SIEM: sizin@email.com" hesabı eklenecek, 6 haneli kod görünmeye başlayacak.
Kodu doğrulayın
Sayfadaki "6 haneli kod" alanına Authenticator'daki kodu yazın → "Doğrula ve Aktifleştir"
Kurtarma kodlarını yazdırın
10 kurtarma kodu görünecek. YAZDIRIN veya güvenli bir yere kaydedin. Telefonunuz kaybolursa bu kodlarla giriş yapabilirsiniz.
Kurtarma kodlarını kaybetmeyin!
Telefonunuzu kaybederseniz + kurtarma kodlarınız da yoksa, hesabınıza erişim için destek ekibiyle kimlik doğrulama yapmanız gerekir. Bu süreç 24-48 saat alabilir.
⚡ Alarm Kuralları
Dashboard'da hazır 28+ kural geliyor. Kendi kurallarınızı Alarm Kuralları sayfasından ekleyebilirsiniz. 14 farklı kural tipi var:
- Bağlantı Kuralı — src→dst:port esnek filtreleme
- Port Erişim Tespiti — belirli porta erişim sayısı
- Coğrafi Erişim — whitelist/blacklist ülke bazlı
- Threat Intelligence — Tor exit, malware IP vs.
- Karaliste IP İletişimi — bilinen kötü IP
- Log Eşiği — N dakikada K log sayısı
- Aynı IP Tekrarı — aynı kaynaktan tekrar
- Farklı Değer Sayısı — DDoS, port scan
- Bant Genişliği — trafik volümü
- Başarısız Giriş — brute force
- Hotspot Brute Force — misafir WiFi saldırısı
- Hesap Paylaşımı — çok IP ile aynı user
- Log Mesajı Kalıbı — regex pattern match
- AI Threat Score — 0-100 skor eşiği
📋 Incident Akışı
Incident Builder her 3 dakikada çalışır. İlgili alarmları 5 kurala göre gruplar:
- Aynı /24 subnet — aynı ağ bloğundan gelen alarmlar
- Aynı hedef port — koordineli port saldırısı
- Aynı src_ip — aynı saldırgan, farklı pattern
- Kritik tek alert — severity=critical olan tek başına olay
- Devam eden olay — son 30 dk açık incident'a eklenir
Access Status — Kritik metrik
Her incident bir erişim durumu ile gelir:
- blocked — Tüm denemeler engellendi, sisteme erişim YOK
- partial — Bazı denemeler başarılı olmuş olabilir, inceleyin
- compromised — Başarılı giriş tespit edildi, acil müdahale
🎯 13 Korelasyon Paterni
Her pattern belirli saldırı davranışını tespit eder:
📨 Telegram Bildirim
Kritik olaylarda telefonunuza anında Telegram mesajı gelir.
Telegram Bot oluşturun
Telegram'da @BotFather ile konuşun. /newbot komutu ile yeni bot oluşturun. Size bir bot token verecek.
Bot'u kanalınıza ekleyin
Bir Telegram grup/kanal oluşturun. Bot'u admin olarak ekleyin. Kanala bir mesaj gönderin, https://api.telegram.org/bot<TOKEN>/getUpdates açın — chat_id'nizi göreceksiniz (örn: -1001234567890).
OxiSec'te yapılandırın
Settings → Notifications → Telegram. Bot token ve chat_id girin. "Test mesajı gönder" ile deneyin.
📧 Email SMTP
Cloud planlarında email gönderimi otomatik çalışır. On-prem deployment'ta kendi SMTP sunucunuzu Settings → Email SMTP'den yapılandırabilirsiniz.
SMTP Host: smtp.gmail.com
SMTP Port: 587 (STARTTLS) veya 465 (SSL)
Username: siz@gmail.com
Password: uygulama şifresi (2FA aktifse)
From Address: alerts@sirketiniz.com
Encryption: STARTTLS
🔌 Webhook Entegrasyonu
Kritik bir alarm tetiklenince OxiSec, sizin belirttiğiniz HTTP endpoint'e HMAC-SHA256 imzalı JSON payload gönderir. Slack, Teams, Discord, n8n/Zapier/Make, kendi SOAR sisteminiz veya CRM'inizle entegre edin.
Kurulum
- Panele giriş yap → sol menü → Webhook
- + Yeni Webhook butonuna tıkla
- Adı, hedef URL'i ve dinlemek istediğin event'leri seç
- Secret otomatik üretilir — kopyalayıp güvenli yere kaydet (bir daha gösterilmez)
- 🧪 Test Gönder butonu ile sample payload deneyebilirsin
Event Tipleri
Payload Yapısı
Her event aynı top-level şemayı kullanır. data alanı event'e özel veri içerir:
POST https://your-server.com/webhook
Content-Type: application/json
User-Agent: OxiSec-Webhook/1.0
X-OxiSec-Event: alert.critical
X-OxiSec-Webhook-Id: 42
X-OxiSec-Delivery-Id: 1715430000123
X-OxiSec-Signature: sha256=a8f3c9d2e7b4f1a9...
{
"event": "alert.critical",
"timestamp": "2026-05-11T14:32:05Z",
"tenant_id": 11,
"data": {
"id": 2847,
"title": "SSH Brute Force from 203.0.113.45",
"severity": "critical",
"source_ip": "203.0.113.45",
"dst_ip": "10.0.0.5",
"dst_port": 22,
"src_country": "NL",
"tenant_name": "Anadolu Enerji",
"description": "10 dakikada 247 başarısız SSH denemesi",
"created_at": "2026-05-11T14:32:05Z"
}
}
İmza Doğrulama (Güvenlik)
OxiSec her payload'u HMAC-SHA256 ile imzalar. Müşteri tarafında imzayı kontrol ederek isteğin gerçekten OxiSec'ten geldiğini doğrularsınız — sahte istekler reddedilir.
PHP
$payload = file_get_contents('php://input');
$secret = 'webhook-secret-burada';
$expected = 'sha256=' . hash_hmac('sha256', $payload, $secret);
$received = $_SERVER['HTTP_X_OXISEC_SIGNATURE'] ?? '';
if (hash_equals($expected, $received)) {
$data = json_decode($payload, true);
// Doğrulandı — payload'u işle
} else {
http_response_code(401);
die('Geçersiz imza');
}
Python (Flask)
import hmac, hashlib
from flask import request
SECRET = 'webhook-secret-burada'
@app.route('/webhook', methods=['POST'])
def webhook():
body = request.get_data()
signature = request.headers.get('X-OxiSec-Signature', '')
expected = 'sha256=' + hmac.new(
SECRET.encode(), body, hashlib.sha256
).hexdigest()
if not hmac.compare_digest(signature, expected):
return 'Invalid signature', 401
data = request.json
# İşle...
return 'OK'
Node.js (Express)
const crypto = require('crypto');
const SECRET = 'webhook-secret-burada';
app.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => {
const signature = req.headers['x-oxisec-signature'];
const expected = 'sha256=' + crypto.createHmac('sha256', SECRET)
.update(req.body).digest('hex');
if (!crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(expected))) {
return res.status(401).send('Invalid signature');
}
const data = JSON.parse(req.body.toString());
// İşle...
res.send('OK');
});
Hata Yönetimi ve Retry
Audit Log
Tüm webhook gönderimleri webhook_deliveries tablosunda kayıt altındadır.
Panelde her webhook'un detay sayfasında son 50 gönderim görünür:
başarılı/başarısız, HTTP yanıt kodu, süre, deneme sayısı, hata mesajı.
"Geldi mi gelmedi mi?" sorusu yok.
🎯 MITRE ATT&CK Mapping
Her pattern, MITRE ATT&CK framework'ündeki taktik ve tekniklere otomatik eşlenir. Raporlarda görünür, denetimlerde kullanılabilir.
Toplam 12 pattern → MITRE mapping ve 21 teknik hazır yüklenmiştir. Yeni teknikleri Settings → MITRE sayfasından ekleyebilirsiniz.
Yardıma mı ihtiyacınız var?
Dokümantasyonda bulamadığınız bir şey varsa destek ekibimize ulaşın.
İletişime Geç