Siber güvenlik dünyasında bir zamanlar bir IP adresini banlamak, kendimizi Orta Çağ kalelerindeki şövalyeler gibi hissetmemize yetiyordu. Kötücül bir IP bul, firewall'a yaz ve kahveni yudumla. Peki ya bugün? Artık saldırganlar her 5 dakikada bir IP değiştiriyor, altyapılarını bulut servislerinin (Cloudfront, Azure, AWS) arkasına saklıyor. Şimdi sorum şu: Sadece 8 karakterli parolalara güvenmeyi bıraktık, peki her gün ekranımıza düşen binlerce 'threat feed' verisine gerçekten güveniyor muyuz? Yoksa sadece veri mi biriktiriyoruz?
Dostum, eğer SIEM (Security Information and Event Management) sistemine sadece kontrolsüzce 'Threat Intel' besliyor ve dashboard'unda kırmızı ışıklar yanınca seviniyorsan, aslında sadece gürültü kirliliği yapıyorsun demektir. Bugünün dünyasında Tehdit İstihbaratı (Cyber Threat Intelligence - CTI), statik listelerden çıkıp 'davranış analizine' dönüştü. Gelin, testCompany bünyesinde bu işleri nasıl daha akıllıca yapabileceğimize, o meşhur 'Pyramid of Pain' (Acı Piramidi) basamaklarında nasıl terlemeden yükselebileceğimize bakalım.
Acı Piramidi: Neden Canımız Yanıyor?
David Bianco’nun meşhur piramidini hatırlarsın. En altta Hash değerleri ve IP adresleri var. Bunları engellemek 'Trivial' yani çocuk oyuncağı. Ama saldırgan için de bunları değiştirmek bir saniye bile sürmüyor. Piramidin en tepesinde 'TTPs' (Tactics, Techniques, and Procedures) yer alıyor. İşte burası, saldırganın bel kemiği. Eğer bir saldırganın PowerShell üzerinden nasıl 'Obfuscation' yaptığını veya bellekte (in-memory) nasıl 'Reflective DLL Injection' koşturduğunu tespit edebilirsen, işte o zaman onun için oyunu bitirirsin. Çünkü bu teknikleri değiştirmek, onun için haftalarca yeni bir eğitim ve kod geliştirme süreci demek.
Teoriden Pratiğe: Davranışsal Tespit (Sigma Kuralları)
Sadece 'bad_ip.txt' dosyasına bakmak yerine, sistemimizdeki anomaliyi nasıl yakalarız? İşte burada Sigma kuralları devreye giriyor. Sigma, loglar için ortak bir imza formatıdır. Bir saldırganın 'testCompany' sunucularında yanal hareket (Lateral Movement) yapmaya çalıştığını varsayalım. Saldırgan muhtemelen psexec benzeri bir araç kullanacaktır. Ama biz psexec.exe ismine bakmayacağız, çünkü adını zararsiz.exe yapabilir. Biz davranışa bakacağız.
Örnek bir Sigma kuralı taslağına bakalım (Defanged):
title: Suspicious Process Execution via Mock-PsExec
status: experimental
description: Detects execution of tools that behave like PsExec but with different names.
logsource:
product: windows
service: sysmon
detection:
selection:
EventID: 1
Image|endswith:
- '\zararsiz.exe' # Defanged: normalde psexec.exe
CommandLine|contains:
- ' -s ' # System yetkisiyle çalıştırma parametresi
- ' -i ' # İnteraktif oturum
- ' \\\\' # Uzak makine erişimi
condition: selection
fields:
- CommandLine
- ParentImage
falsepositives:
- Admin_Scripts.ps1
level: high
Bu kural, dosya adı ne olursa olsun, belirli parametrelerle ( -s -i \target ) çalışan bir süreci yakalar. İşte bu 'Actionable Intelligence' yani eyleme dönüştürülebilir istihbarattır.
MISP: Bilgiyi Paylaşmak mı, Yoksa İstiflemek mi?
Bir Red Team Lead olarak en çok gördüğüm hata, departmanlar arası kopukluk. SOC ekibi bir saldırı yakalıyor, ama bunu Threat Intel ekibine veya sistem yöneticilerine raporlayana kadar saldırgan çoktan 'Domain Admin' olmuş oluyor. Biz testCompany içinde (varsayımsal olarak) MISP (Malware Information Sharing Platform) kullanıyoruz. MISP sadece bir veri tabanı değil, aynı zamanda bir korelasyon motoru.
Eğer bir 'Phishing' e-postası yakaladıysan, o e-postanın içindeki mock domaini (evil-example.com) MISP'e girdiğin an, sistem otomatik olarak bu domainin daha önce hangi 'Campaign' (kampanya) ile ilişkili olduğunu sana söyler. Belki de o domain, aylar önce başka bir finans kuruluşuna saldıran 'APT-X' grubuyla ilişkilidir. İşte o an, karşındaki düşmanın kim olduğunu anlarsın.
YARA ile Hafıza Avcılığı
Tehdit istihbaratı sadece dışarıdan gelen veri değildir; bazen kendi sistemindeki bir dosyanın 'karakterini' okumaktır. Bir saldırganın payload'unu zararsızlaştırdık ve inceledik diyelim. İçinde belirli bir şifreleme algoritması veya hata mesajı (string) kullanıyor. Bunu tüm ağda aramak için YARA kuralları yazarız.
rule Mock_Malware_Family_Alpha {
meta:
author = "Sedat Ozdemir"
description = "Detects characteristics of Alpha Group's custom stager"
company = "testCompany"
strings:
$magic_bytes = { 4D 5A } // MZ Header
$string1 = "XOR_Key_0x42" // Defanged string
$string2 = "internal_testCompany_api_bypass" // Özel string
condition:
$magic_bytes at 0 and ($string1 or $string2)
}
Bu kuralı kullanarak tüm uç noktalarda (Endpoint) bir tarama yaptığında, antivirüslerin (AV) henüz tanımadığı '0-day' veya 'polimorfik' zararlıları şak diye bulabilirsin.
İstihbaratı Kimden Alıyoruz? (OSINT ve Ötesi)
Sadece ücretli 'feed'lere servet ödemene gerek yok. Bazen en iyi istihbarat, Github'da yanlışlıkla unutulmuş bir 'API Key' veya bir forumda 'testCompany altyapısını nasıl aşarım?' diye soran bir lamer'ın sorusudur. OSINT (Açık Kaynak İstihbaratı) araçlarıyla saldırganın senin hakkında ne bildiğini bilmen gerekir.
Basit bir Python scripti ile (Defanged version) Shodan API üzerinden kendi IP bloklarını sürekli taratabilirsin:
import shodan
SHODAN_API_KEY = "YOUR_MOCK_KEY"
api = shodan.Shodan(SHODAN_API_KEY)
target_ip_block = "127.0.0.1/24" # Defanged: Kendi bloklarınız
try:
results = api.search(f'net:{target_ip_block} port:3389')
for result in results['matches']:
print(f"[!] UYARI: RDP Portu Açık Tespit Edildi: {result['ip_str']}")
except shodan.APIError as e:
print(f"Hata: {e}")
Bu küçük otomasyon, bir saldırganın Shodan kullanarak açık RDP portu bulup içeri sızmasını engellemek için ilk adımın olabilir.
İşin İnsan Tarafı
Son olarak şunu unutma dostum; en iyi istihbarat aracı senin merakındır. Bir log satırında 'normal görünmeyen' bir şeyler varsa, onun peşinden git. Tehdit istihbaratı statik bir PDF raporu değil, yaşayan bir süreçtir. Raporu okuyup arşive kaldırmak yerine, o rapordaki 'Indicator'ları kendi sisteminde 'Hunt' (Avlama) faaliyetine dönüştür.
Saldırganlar iş birliği yapıyor, biz neden yapmayalım? Bilgiyi paylaşın, teknikleri tartışın ve en önemlisi; savunmanızı asla sadece bir IP listesine emanet etmeyin.
Bir sonraki yazıda, bu yakaladığımız ipuçlarıyla nasıl 'Threat Hunting' yapılır, derinlere ineriz. Şimdilik loglarınıza iyi bakın, açık port bırakmayın!
