Siber Güvenliğe Giriş - Ders 1
Siber güvenliğin en temel kuralı şudur: Savunmak için, hırsızın nasıl düşündüğünü, kapıyı nasıl kırdığını, alarmı nasıl atlattığını birebir yaşamadan öğrenmek zorundasın. Bugünkü dersimiz: Etik Hacking'in Felsefesi ve Sızma Testinin (Penetration Testing) Anatomisi. Dünyadan örneklerle, detaylara boğularak anlatacağım. Hazırsan, beyaz şapkamızı takıp karanlık taraftaki kardeşlerimizin nasıl çalıştığını inceleyelim.
1. Ders: Etik Hacker (White Hat) ile Kötü Hacker (Black Hat) Arasındaki Tek Fark: "İmza"
Dünyadan bir örnekle başlayayım: Diyelim ki dünyanın en sağlam kasasını yaptın. Kapısı 30 cm çelik, 3 ayrı şifreli kilidi var. Bir gün bir adam gelir, bu kasayı 2 dakikada açar, içindeki mücevherleri alır ve bir not bırakır: "Sayın kasa üreticisi, arka paneldeki vida gevşek, tornavidayla söktüm. İmzam: Beyaz Şapkalı."
İşte etik hacker budur. Yasa dışı bir şey yapmaz, ama yasa dışı yapılabilecek HER şeyi dener. Kötü hacker ise aynı yöntemle kasayı açar, mücevherleri alır, kaçar ve bir daha asla bulunmaz.
Sızma testi (Penetration Test / Pentest) ise şudur: Senin şirketinin veya uygulamanın dijital kasasını, önceden yazılı bir izinle (buna "Rule of Engagement" - Müdahale Kuralları denir) bütün gün boyunca zorlamak. Ama bu zorlama rastgele değildir; 5 aşamalı, disiplinli bir bilimdir.
2. Ders: Sızma Testinin (Pentest) 5 Aşaması (Detaylı ve Dünyadan Örneklerle)
Bir etik hacker asla "Hadi bakalım, brute force yapalım" diyerek işe başlamaz. Bu bir cerrahi operasyondur. İşte adımlar:
Aşama 1: Keşif ve Bilgi Toplama (Reconnaissance / OSINT)
Bu aşama, bir dedektifin bir suçluyu aylarca takip etmesi gibidir. Hacker, hedefi hakkında internetteki her açık bilgiyi toplar. Buna OSINT (Açık Kaynak İstihbaratı) denir.
Dünyadan örnek: 2013'te Edward Snowden’ın sızdırdığı belgelere göre NSA, bir hedef ülkenin elektrik santralini hacklemek için önce o ülkenin mühendislerinin LinkedIn profillerini taradı. Mühendislerin kullandığı yazılımları, bilgisayar markalarını, hatta sevdikleri yemekleri öğrendiler. Neden? Çünkü phishing saldırısı atacakları o mühendise, "Sevdiğin İtalyan restoranından sana hediye çeki" diye bir mail atacaklardı.
Teknik detay: Hacker,
whoiskomutuyla senin domaininin sahibini,nslookupile IP adreslerini,theHarvesteraracıyla senin şirketinle ilgili tüm e-posta adreslerini toplar. HattaShodan(dünyanın en tehlikeli arama motoru) ile internete açık olan kameralarını, termostatlarını, yazıcılarını tarar. Bu aşamada hedefin dijital ayak izi çıkartılır.Savunma (ileride detay): Bu aşamaya karşı tek çare, çalışanların sosyal medyada fazla bilgi paylaşmaması ve şirketin IP aralıklarını gizli tutmasıdır.
Aşama 2: Zafiyet Tarama (Scanning & Enumeration)
Artık elimizde IP adresleri, açık portlar, e-posta adresleri var. Şimdi "Kapıları sayma" zamanı. Hacker, Nmap adlı efsanevi aracı çalıştırır. Bu araç, hedefin bilgisayarına "Merhaba, 65535 tane kapının (port) hangisi açık?" diye sorar.
Dünyadan örnek: Diyelim ki bir bankayı test ediyorsun. Nmap taramasında 443 portunda (HTTPS) bir web sitesi, 22 portunda SSH (uzak bağlantı) ve 3389 portunda RDP (Uzak Masaüstü) gördün. Hacker hemen 22 portuna odaklanır. Çünkü SSH, yanlış yapılandırılırsa (zayıf şifreye izin verirse) içeri girmek için altın kapıdır.
Teknik detay: Bu aşamada
Niktoile web sunucusundaki zafiyetler taranır,OpenVASveyaNessusgibi zafiyet tarayıcıları ile eski yazılım sürümleri tespit edilir. Örneğin hedefin kullandığı Apache sürümü 2.4.29 ise, hacker hemen "Bunun şu CVE-2019-0211 numaralı zafiyeti var" diye not alır.
Aşama 3: Sömürü (Exploitation) - "Kırmızı Halıyı Döşemek"
İşte asıl aşama burasıdır. Artık bir zafiyet buldun, sıra bu zafiyeti kullanarak sisteme gerçekten girmeye geldi. Burada Metasploit Framework devreye girer. Metasploit, dünyadaki binlerce zafiyete hazır "patlayıcı" (exploit) kodlarını barındıran bir araçtır.
Dünyadan örnek: 2017'deki Equifax felaketini hatırla. Dünyanın en büyük kredi kuruluşlarından biriydi. Hackerlar, web sitesindeki bir "Apache Struts" zafiyetini (CVE-2017-5638) buldu. Bu zafiyet, siteye bir resim dosyası yükleniyormuş gibi görünen, ama aslında sunucuya doğrudan komut göndermeye yarayan bir açıktı. Hackerlar Metasploit'teki ilgili modülü çalıştırdı, sunucuya bir "web shell" (uzaktan kumanda paneli) yerleştirdi. 143 milyon kişinin verisi çalındı.
Teknik detay: Sömürü ikiye ayrılır:
Client-Side Exploit: Kullanıcının bir PDF açmasını veya bir linke tıklamasını bekleyen saldırılar.
Server-Side Exploit: Doğrudan sunucunun yazılım açığından giren saldırılar (Equifax örneği gibi).
Başarılı bir sömürü sonucunda hacker, hedefin işletim sisteminde bir "shell" (kabuk) elde eder. Yani o an itibarıyla hedefin bilgisayarında bir komut satırı penceresi açılmıştır ve hacker o bilgisayarın sahibinden daha yetkilidir.
Aşama 4: Yetki Yükseltme (Privilege Escalation) - "Kapıcıdan Patrona"
Bu aşama çok kritiktir. Diyelim ki bir web sunucusuna girdin, ama bu sıradan bir "misafir" kullanıcı yetkisindedir. Yani dosyaları okuyabilir ama sistemi çökertemez veya şifre dosyalarına erişemezsin. İşte burada yetki yükseltme devreye girer.
Dünyadan örnek: Bir binaya girip kapıcı dairesine girdin, ama Genel Müdürün kasasına ulaşmak istiyorsun. Bunun için binanın asansör şifresini, temizlik görevlisinin anahtarını bulman gerekir. Dijitalde bu, işletim sisteminin çekirdeğindeki (kernel) bir zafiyeti kullanmak demektir.
Teknik detay: Linux'ta
sudo -lkomutu ile "Hangi komutları root yetkisiyle çalıştırabilirim?" diye bakarsın. Eğersudo vimyetkisi varsa,vimeditöründen:!/bin/bashdiyerek root shell alabilirsin. Windows'ta iseMimikatzaracıyla bilgisayarın RAM'inden açık halde duran kullanıcı şifrelerini düz metin olarak çekebilirsin. (Evet, Windows bazen şifreleri bellekte tutar!)
Aşama 5: İzleri Temizleme ve Kalıcılık (Persistence & Clearing Tracks)
Etik hacker, testin sonunda yaptığı tüm değişiklikleri geri alır, buna "cleanup" denir. Ama kötü hacker asla çıkmak istemez. İleride tekrar girebilmek için arka kapı (backdoor) bırakır.
Dünyadan örnek: SolarWinds saldırısını hatırla. 2020'de Rus hackerlar, bir yazılım güncellemesinin içine gizli bir arka kapı yerleştirdi. Bu güncelleme binlerce şirket ve devlet kurumuna gitti. Hackerlar aylarca bu arka kapı sayesinde içeride kaldı, verileri izledi, ama kimse fark etmedi. Kalıcılık budur.
Teknik detay: Hacker, cronjob (zamanlanmış görev) ekler, sisteme yeni bir kullanıcı oluşturur, SSH anahtarı yerleştirir. İzleri temizlemek için ise log dosyalarına girer, kendi yaptığı işlemleri siler (
history -cile Linux geçmişini temizler).
3. Ders: Savunma Artık Sizin Elinizde (Ama Saldırganı Taklit Ederek)
Şimdi sızma testinin detaylarını öğrendin. Peki bir savunmacı (Blue Team) ne yapar? İşte siber güvenliğin en havalı kısmı: Savunma, saldırıyı taklit ederek yapılır.
Bir savunmacı, sürekli olarak "Threat Hunting" (Tehdit Avcılığı) yapar. Yani elinde bir anormallik listesi vardır: "Normalde bu saatte kimse SSH bağlantısı yapmaz, ama şu IP'den sürekli deneme geliyor. Bu ne?" diye bakar.
Bir savunmacı, SIEM (Security Information and Event Management) sistemleri kurar. Bu sistem, tüm logları toplar, birbirine bağlar. Örneğin; "A kullanıcısı başarısız 5 şifre denemesi yaptı, 2 dakika sonra B kullanıcısı başarıyla giriş yaptı" gibi bağlantıları anında fark eder.
En önemlisi, savunmacı "Zero Trust" (Sıfır Güven) modelini uygular. Yani şirket içindeki bir çalışana bile %100 güvenmez. "Bu kişi yetkili ama neden gece 3'te veritabanına bağlanıyor?" diye sorgular.
Bugünün Ödevi (Bu sefer teknik)
Artık sadece "Şifreni değiştir" demeyeceğim. Bugün yapacağın iş:
Kendi IP adresini ve hangi portlarının açık olduğunu öğren. Bunu yapmak için internette "What is my IP" yaz ve ardından bilgisayarında komut satırını (CMD veya Terminal) aç.
nmap -sS -O -v kendi_ip_adresinyaz. (Nmap bilgisayarında yoksa, ücretsizZenmapkur). Açık port görüyor musun? 80 veya 443 dışında bir port açık mı? Eğer açıksa, bu bir saldırgan için potansiyel kapıdır.Bir OSINT aracı dene:
theHarvesterveyaRecon-nggibi araçları araştır. (Sadece araştır, kullanmak zorunda değilsin). Google'da kendi adını ara. Karşına çıkan ilk 3 sayfa senin hakkında ne söylüyor? Bir hacker senin hakkında bu bilgilerle nasıl bir phishing maili hazırlayabilir?Metasploit'in modüllerini incele: Sadece internette "Metasploit exploit database" yaz ve bir zafiyet seç (örneğin CVE-2017-5638). Bu zafiyetin nasıl çalıştığını oku. Anlamasan da olur, önemli olan zafiyetlerin isimleri ve nasıl sınıflandırıldığı (CVSS skoru) hakkında fikir edinmen.