
Giriş
Günümüz dijital dünyasında siber güvenlik, teknolojinin ayrılmaz bir parçası haline gelmiştir. Bilgi sistemlerine yönelik saldırılar her geçen gün daha sofistike hale gelmekte ve güvenlik uzmanlarının bu tehditlere karşı daha stratejik yaklaşımlar geliştirmesi gerekmektedir. Bu makalede, çeşitli siber güvenlik kavramları, saldırı teknikleri ve savunma mekanizmaları yazılım mühendisliği perspektifinden ele alınarak derinlemesine incelenecektir.
1. Bilgi Toplama (Reconnaissance)
Bilgi toplama süreci, sızma testlerinin ve siber saldırıların en kritik aşamalarından biridir. Bu aşamada saldırganlar hedef sistem hakkında olabildiğince fazla bilgi edinmeye çalışır. Bilgi toplama teknikleri aktif ve pasif olmak üzere ikiye ayrılır.
1.1 Pasif Bilgi Toplama
Pasif bilgi toplama, hedef sistem ile doğrudan etkileşime girmeden gerçekleştirilen bilgi edinme sürecidir. Örnek Araçlar:
- Shodan: İnternete açık cihazları tarayan güçlü bir motor.
- Censys: Açık portları ve hizmetleri taramak için kullanılır.
- HaveIBeenPwned: Veritabanı sızıntılarından etkilenen hesapları tespit eder.
1.2 Aktif Bilgi Toplama
Aktif bilgi toplama, doğrudan hedef sistem ile etkileşime geçilerek yapılan keşif sürecidir. Örnek Araçlar:
- Nmap: Ağ keşfi ve güvenlik denetimi için kullanılır.
- Burp Suite: Web uygulamalarını test etmek için kullanılan proxy tabanlı bir güvenlik aracıdır.
- SpiderFoot: Açık kaynak tehdit istihbaratı toplama ve analiz etme aracı.
Örnek:
nmap -sP 192.168.1.0/24
Bu komut, belirli bir IP aralığındaki cihazların aktif olup olmadığını belirlemek için kullanılabilir.
2. Kimlik Doğrulama ve Yetkilendirme
Kimlik doğrulama mekanizmalarının doğru tasarlanması, siber güvenlik açısından hayati öneme sahiptir. OWASP Top 10’da kimlik doğrulama hataları kritik tehditler arasında gösterilmektedir.
Başlıca Kimlik Doğrulama Zafiyetleri:
- Zayıf parola kullanımı: “123456” gibi tahmin edilebilir şifrelerin kullanılması.
- Çok faktörlü doğrulama eksikliği: MFA kullanılmadığında saldırganların kimlik avı saldırılarıyla erişim sağlaması kolaylaşır.
- Brute-force saldırıları: Otomatik parola deneme saldırılarına karşı rate-limiting önlemlerinin eksikliği.
Örnek Senaryo: Bir saldırgan, “password spraying” yöntemiyle bir sistemde yaygın kullanılan şifreleri denemektedir. Aşağıdaki Python betiği basit bir saldırı senaryosunu simüle eder:
import requests
usernames = ['admin', 'user', 'test']
passwords = ['123456', 'password', 'admin123']
url = 'https://hedef-site.com/login'
for user in usernames:
for pwd in passwords:
response = requests.post(url, data={'username': user, 'password': pwd})
if "Welcome" in response.text:
print(f"Geçerli kimlik bilgileri bulundu: {user}:{pwd}")
3. Yetki Yükseltme (Privilege Escalation)
Yetki yükseltme, bir saldırganın sistemde düşük ayrıcalıklı bir hesaptan yüksek yetkili bir hesaba erişim kazanmasını sağlayan bir süreçtir. Yetki yükseltme saldırıları genellikle işletim sistemindeki zafiyetlerden faydalanarak gerçekleştirilir.
Yetki Yükseltme Teknikleri:
- Windows Kernel Exploitleri: Örneğin, CVE-2021-1732 gibi bir yerel hak yükseltme zafiyetini istismar etmek.
- Linux SUID Bit İstismarı: Yanlış yapılandırılmış dosya izinleri kullanılarak root yetkileri elde edilebilir.
Örnek: Bir saldırgan, Linux sisteminde aşağıdaki komutla hangi dosyaların SUID bitine sahip olduğunu kontrol edebilir:
find / -perm -4000 -type f 2>/dev/null
Bu çıktıdan elde edilen dosyalar, potansiyel bir yetki yükseltme saldırısı için incelenebilir.
4. Siber Saldırı Türleri ve Mitigasyon Stratejileri
4.1 SQL Injection
SQL Injection, bir web uygulamasında kullanıcı girdilerinin doğrulanmaması sonucu veritabanına kötü niyetli sorguların çalıştırılmasına olanak tanır. Örnek:
SELECT * FROM users WHERE username='admin' -- AND password='password'
Mitigasyon: Parametrik sorgular kullanarak girişlerin doğrulanması gerekmektedir.
4.2 Cross Site Scripting (XSS)
XSS saldırıları, bir saldırganın kullanıcı tarayıcısında kötü amaçlı JavaScript kodu çalıştırmasını sağlar. Örnek:
<script>alert('XSS');</script>
Mitigasyon: Girdi doğrulama ve içerik güvenliği politikaları (CSP) uygulanmalıdır.
5. Sonuç
Siber güvenlik, sürekli evrilen bir alandır ve her yeni teknoloji, beraberinde yeni tehditler getirmektedir. Bu nedenle güvenlik uzmanları, en güncel tehdit istihbaratı ve savunma stratejileri konusunda bilgi sahibi olmalıdır.
Kaynakça
- OWASP Top 10 (https://owasp.org/www-project-top-ten/)
- MITRE ATT&CK Framework (https://attack.mitre.org/)
- NIST Cybersecurity Framework (https://www.nist.gov/cyberframework)
- CVE Details (https://www.cvedetails.com/)