Kali Linux Kurulumu ve Temel Araçlara Giriş

Güvenlik dünyasına adım atmak isteyenler için Kali Linux, neredeyse kaçınılmaz bir başlangıç noktası. Ama ne yazık ki çoğu kişi Kali’yi kuruyor, birkaç araç açıyor ve “ne yapacağımı bilmiyorum” aşamasında takılıp kalıyor. Bu yazıda sıfırdan kurulumdan başlayıp, gerçekten işe yarar bir çalışma ortamı kurmaya ve temel araçları anlamlı biçimde kullanmaya kadar her şeyi ele alacağız. Sızma testi sertifikasyonu hazırlığı yapıyorsanız da, şirketinizin güvenlik durumunu değerlendirmek istiyorsanız da buradan başlayabilirsiniz.

Neden Kali Linux?

Piyasada Parrot OS, BlackArch, Pentoo gibi alternatifler var. Bunların hepsini denedim, hepsinin kendine göre artıları var. Ama Kali’nin kazandığı şey şu: ekosistem. Dokümantasyon bolluğu, Offensive Security’nin sürekli güncellenen araç seti ve topluluk desteği açısından hâlâ öne çıkıyor. BlackArch belki daha fazla araç sunuyor ama o araçların büyük çoğunluğuna hiç ihtiyaç duymayacaksınız.

Önemli bir not: Kali’yi günlük masaüstü olarak kullanmak genellikle iyi bir fikir değil. Root ile çalışan, saldırı araçlarıyla dolu bir sistemi günlük işleriniz için kullanmak hem güvenlik riski hem de pratik açıdan zahmetli. Kali’yi sanal makine olarak ya da ayrı bir fiziksel makine üzerine kurmak çok daha mantıklı.

Kurulum Yöntemleri ve Tercih

Üç ana senaryo var:

Sanal Makine (Önerilen başlangıç yöntemi): VirtualBox ya da VMware üzerinde çalıştırmak, snapshot alabilmek ve geri dönebilmek açısından paha biçilmez. Bir şeyler bozulduğunda, ve bozulacak, snapshot’a dönmek hayat kurtarır.

Dual Boot: Performans kritikse ve donanım kaynaklarını tam kullanmak istiyorsanız. Ama dikkatli olun, özellikle Windows ile birlikte kurulumda GRUB sorunları yaşanabiliyor.

Live USB: Hızlı testler için ideal. Persistence özelliğiyle değişikliklerinizi kaydedebilirsiniz.

ISO İndirme ve Doğrulama

Önce resmi kaynaktan indirin. Kali’nin sitesinde SHA256 hash değerleri yayınlanıyor, bunu mutlaka kontrol edin:

# İndirilen ISO'nun hash değerini kontrol etmek
sha256sum kali-linux-2024.1-installer-amd64.iso

# Resmi siteden aldığınız hash ile karşılaştırın
echo "beklenen_hash_degeri  kali-linux-2024.1-installer-amd64.iso" | sha256sum --check

Bu adımı atlamamanızı şiddetle tavsiye ederim. Güvenlik aracı indiriyoruz, doğrulama yapmamak biraz ironi olur.

VirtualBox Üzerine Kurulum

Kali’nin hazır VirtualBox imajını indirip import etmek en hızlı yol. Ama kurulumu kendiniz yapmanın avantajı, sistemi daha iyi tanımanız.

Sanal makine ayarları için önerdiğim minimum değerler:

  • RAM: 4 GB (8 GB çok daha rahat)
  • Disk: 50 GB dinamik
  • CPU: 2 core
  • Ağ: NAT + Host-only adapter (ikinci NIC olarak)

İki ağ adaptörü kullanmanın sebebi şu: NAT ile internete çıkarken, Host-only ile hedef sanal makinelerinize erişim sağlarsınız. Pratik bir lab ortamı için bu yapı şart.

Kurulum Sonrası Yapılması Gerekenler

Kurulum bitti, sistemi açtınız. Şimdi ne? Birçok kişi buradan direkt Metasploit’e atlar. Yanlış. Önce sistemi düzgün yapılandırmak gerekiyor.

İlk Güncelleme

sudo apt update && sudo apt upgrade -y
sudo apt autoremove -y
sudo apt autoclean

Bu işlem biraz uzun sürebilir. Kali’nin paket deposu oldukça kalabalık ve güncellemeler düzenli geliyor. Haftada en az bir kez güncelleme alışkanlığı edinmek iyi olur.

Kullanıcı Ayarları

Eski Kali sürümlerinde root olarak giriş yapılabiliyordu. Yeni sürümlerde bu değişti ve standart kullanıcı ile çalışıyorsunuz. Yine de sudo yetkilerini gözden geçirmek faydalı:

# Mevcut kullanıcının gruplarını kontrol et
id

# Kullanıcıyı gerekli gruplara ekle
sudo usermod -aG sudo,wireshark,bluetooth $USER

Wireshark grubuna eklemenin sebebi: Wireshark’ı root olmadan çalıştırabilmek. Ağ arayüzlerini yakalamak için bu grup üyeliği gerekiyor.

SSH Servisini Yapılandırma

Lab ortamında uzaktan erişim için SSH kullanacaksınız büyük ihtimalle:

# SSH servisini başlat
sudo systemctl start ssh
sudo systemctl enable ssh

# SSH anahtarlarını yenile (kurulumda oluşturulanlar değiştirilmeli)
sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server

# Servis durumunu kontrol et
sudo systemctl status ssh

Kali’de SSH anahtarlarını yenilemek önemli, çünkü bazı ön yapılandırılmış imajlarda anahtarlar herkese açık olabiliyor.

Temel Araçlara Giriş

Kali’de 600’den fazla araç yüklü geliyor. Bunların hepsini öğrenmek ne mümkün ne de gerekli. Gerçek dünya sızma testlerinde kullandığım ve mutlaka bilmeniz gereken araçlara odaklanacağım.

Nmap ile Ağ Keşfi

Nmap, sızma testinin neredeyse her aşamasında karşınıza çıkar. Temel bir port taramasından çok daha fazlasını yapabiliyor.

# Basit ping taraması - ağdaki aktif hostları bul
nmap -sn 192.168.1.0/24

# Hızlı port taraması
nmap -F 192.168.1.100

# Servis ve versiyon tespiti
nmap -sV -sC 192.168.1.100

# İşletim sistemi tespiti (root gerektirir)
sudo nmap -O 192.168.1.100

# Kapsamlı tarama - gerçek bir değerlendirmede kullandığım format
sudo nmap -sS -sV -sC -O -p- --min-rate 1000 -oA tarama_sonuclari 192.168.1.100

Son komuttaki parametreleri açıklayalım:

  • -sS: SYN taraması (stealth tarama olarak bilinir)
  • -sV: Versiyon tespiti
  • -sC: Varsayılan script’leri çalıştır
  • -O: İşletim sistemi tespiti
  • -p-: Tüm 65535 portu tara
  • –min-rate 1000: Saniyede minimum 1000 paket gönder
  • -oA: Üç formatta çıktı al (normal, XML, grepable)

Dikkat: -p- ile tam tarama yapmak zaman alır. Önce -F ile hızlı tarama yapıp, sonra ilginç portlarda detaylı tarama yapmak daha verimli.

Nikto ile Web Uygulama Taraması

Web sunucularındaki yaygın güvenlik açıklarını ve yanlış yapılandırmaları tespit etmek için:

# Temel web taraması
nikto -h http://hedef-site.com

# SSL ile çalışan site
nikto -h https://hedef-site.com -ssl

# Belirli bir porta yönelik tarama
nikto -h 192.168.1.100 -p 8080

# Sonuçları dosyaya kaydet
nikto -h http://hedef-site.com -o nikto_rapor.html -Format htm

Nikto’nun çıktısı bazen gürültülü olabiliyor. False positive’ler için bulguları manuel olarak doğrulamanız gerekiyor. Özellikle “Potentially interesting backup/cert file found” gibi uyarıları mutlaka elle kontrol edin.

Metasploit Framework

Metasploit, sızma testi dünyasının İsviçre çakısı. Ama yanlış anlaşılan bir araç. Metasploit’i açıp “exploit çalıştır” modunda kullanmak sizi sınırlı bir noktaya götürür. Asıl değer, payload oluşturma, post-exploitation ve modüler yapısında.

# Metasploit veritabanını başlat
sudo systemctl start postgresql
sudo msfdb init

# Metasploit'i başlat
msfconsole

# Metasploit içinde temel komutlar
msf6 > search eternalblue
msf6 > use exploit/windows/smb/ms17_010_eternalblue
msf6 exploit(ms17_010_eternalblue) > info
msf6 exploit(ms17_010_eternalblue) > set RHOSTS 192.168.1.100
msf6 exploit(ms17_010_eternalblue) > check

PostgreSQL’i başlatmak önemli, çünkü Metasploit tarama sonuçlarını, oturumları ve bulguları veritabanında saklıyor. Bağlantısız çalışmak da mümkün ama workspace ve workspace organizasyonu kullanamıyorsunuz.

Gobuster ile Dizin ve Dosya Keşfi

Web uygulaması testlerinde gizli dizinleri ve dosyaları bulmak için:

# Temel dizin taraması
gobuster dir -u http://hedef-site.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

# Dosya uzantısı belirterek tarama
gobuster dir -u http://hedef-site.com 
  -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt 
  -x php,html,txt,bak 
  -t 50 
  -o gobuster_sonuclari.txt

# DNS subdomain keşfi
gobuster dns -d hedef-site.com 
  -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-5000.txt 
  -t 30

Parametre açıklamaları:

  • -w: Wordlist dosyası
  • -x: Aranacak dosya uzantıları
  • -t: Thread sayısı (dikkatli kullanın, çok yüksek değerler hedef sistemi etkileyebilir)
  • -o: Çıktı dosyası

Kali’de /usr/share/wordlists/ dizininde hazır wordlist’ler var. Ama SecLists koleksiyonunu da yüklemek faydalı:

sudo apt install seclists -y

Burp Suite ile Web Testi

Burp Suite, web uygulama testlerinde vazgeçilmez. Community edition Kali ile birlikte geliyor. Temel konfigürasyon:

# Burp Suite'i başlat
burpsuite &

Burp’u başlattıktan sonra tarayıcınızı 127.0.0.1:8080 proxy’sine yönlendirin. Firefox kullanıyorsanız FoxyProxy eklentisi bu geçişi kolaylaştırır.

Sıkça karşılaşılan sorun: HTTPS sitelerinde “SSL hatası” alıyorsunuz. Çözüm için Burp’un CA sertifikasını tarayıcıya yüklemek gerekiyor. Burp çalışırken http://burpsuite adresine gidip sertifikayı indirin ve Firefox’un sertifika yöneticisine ekleyin.

Hydra ile Kimlik Doğrulama Testi

Brute force saldırıları için Hydra. Yasal yetkisi olmayan sistemlerde kesinlikle kullanmayın:

# SSH brute force
hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.100

# HTTP form brute force
hydra -l admin -P /usr/share/wordlists/rockyou.txt 
  192.168.1.100 
  http-post-form "/login:username=^USER^&password=^PASS^:Invalid credentials"

# FTP brute force, birden fazla kullanıcı listesiyle
hydra -L kullanici_listesi.txt -P /usr/share/wordlists/rockyou.txt 
  ftp://192.168.1.100 
  -t 4 -V

rockyou.txt varsayılan olarak sıkıştırılmış geliyor:

sudo gunzip /usr/share/wordlists/rockyou.txt.gz

Lab Ortamı Kurma

Araçları öğrenmenin en iyi yolu pratik yapmak. Ama bunu güvenli bir ortamda yapmanız gerekiyor.

VulnHub ve Hack The Box

İki popüler seçenek var:

VulnHub: Ücretsiz, sanal makine imajları indirip kendi ortamınızda çalıştırıyorsunuz. Metasploitable2 ile başlamak klasik ama etkili bir yol.

Hack The Box: Online platform, aylık abonelik var ama ücretsiz makineler de mevcut. Gerçeğe daha yakın senaryolar sunuyor.

Metasploitable2 Kurulumu

Pratik yapmak için mükemmel bir hedef:

# Metasploitable2'yi VirtualBox'a import ettikten sonra
# Host-only ağ üzerinden bağlantı testi
ping 192.168.56.101  # Genellikle bu IP'yi alır

# Nmap ile servisleri keşfet
sudo nmap -sV -sC 192.168.56.101 -oN metasploitable_tarama.txt

Metasploitable2’de onlarca kasıtlı güvenlik açığı var. Bu sistemi tarayıp, açıkları tespit edip, Metasploit ile exploit etmeyi denemek sizi çok şey öğretiyor.

Kali’de Temel Güvenlik Önlemleri

Kali’yi güvenli kullanmak da önemli. Saldırı araçları çalıştıran bir sistemi güvensiz bırakmak trajikomik bir durum yaratır.

# UFW firewall aktif et
sudo apt install ufw -y
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Sadece belirli IP'den SSH erişimine izin ver
sudo ufw allow from 192.168.56.0/24 to any port 22

# Durumu kontrol et
sudo ufw status verbose

Otomatik güncellemeleri yapılandırmak da faydalı, ama Kali’de bunu dikkatli yapın, bazı tool güncellemeleri beklenmedik değişiklikler getirebilir:

# Güvenlik güncellemelerini kontrol et
sudo apt list --upgradable 2>/dev/null | grep -i security

Raporlama: Genellikle Atlanan Kısım

Bir sızma testi yaparken bulguları kayıt altına almak kritik. Kali’de bu iş için birkaç araç var.

KeepNote veya CherryTree: Notlarınızı organize etmek için. CherryTree özellikle tavsiye edilen bir araç.

Faraday: Ekip çalışması yapıyorsanız, collaborative bir pentest platformu.

# CherryTree kurulumu
sudo apt install cherrytree -y

# Screenshot almak için
scrot -s ekran_goruntusu.png  # -s ile alan seçimi

# Ekran kaydı
recordmydesktop --output test_kaydi.ogv

Her bulgunu not alın: hangi araç, hangi komut, ne sonuç verdi, timestamp ne. İleride rapor yazarken bu notlar hayat kurtarır. Yaşanmış bir deneyimden söylüyorum: aylar sonra “bunu nasıl bulmuştum?” diye saatlerce çırpınmak istemezsiniz.

Yasal ve Etik Çerçeve

Bu araçları kullanmadan önce net olmak gereken bir konu var: Yetki almadan hiçbir sisteme bu araçlarla erişim girişiminde bulunmayın. Türkiye’de Türk Ceza Kanunu’nun 243. maddesi bilişim sistemlerine yetkisiz erişimi suç sayıyor. “Sadece test ediyordum” diye bir savunma yok.

Profesyonel sızma testlerinde mutlaka yazılı yetki belgesi (scope of work, ROE) alınır. Bug bounty programlarında scope dışına çıkmak da sorun yaratır. Bu konuda gevşek davranmak kariyer bitirebilir.

Sonuç

Kali Linux, güçlü bir araç kutusu, ama araç kutunuzun ne kadar iyi olduğu değil, onu nasıl kullandığınız önemli. Burada anlattıklarım bir başlangıç noktası. Nmap çıktısını okuyabilmek, Burp’ta bir HTTP isteğini intercept edip modifiye edebilmek, Metasploit’te doğru modülü seçip yapılandırabilmek, bunlar saatler ve günler içinde gelişen beceriler.

Pratik yapın, lab ortamı kurun, VulnHub makinelerini çözmeye çalışın. OSCP gibi sertifikasyonlar bu yolculuğu yapılandırmak için iyi bir çerçeve sunuyor. Ama sertifika asıl hedef değil, gerçek anlayış asıl hedef olmalı.

Son olarak: bu alandaki öğrenme asla bitmiyor. Yeni açıklar çıkıyor, araçlar güncelleniyor, savunma mekanizmaları gelişiyor. Merak ve öğrenme isteğini canlı tutabiliyorsanız, doğru yoldasınız demektir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir