Kali Linux Üzerinde Ağ Tarama ve Keşif: Nmap'in Teknik Analizi

Ağ tarama süreçlerinin (Reconnaissance) temel mekanikleri, TCP/IP el sıkışma (handshake) prensipleri ve Kali Linux üzerinde standart ağ tarayıcısı Nmap'in çalışma mantığı üzerine teknik bir rehber.

Yavuz Soylu

Kali Linux Üzerinde Ağ Tarama ve Keşif: Nmap'in Teknik Analizi blog image

Siber güvenlik süreçlerinde ve sızma testlerinde bilgi toplama (Reconnaissance) aşamasının en kritik adımı, hedefin ağ topolojisini ve dışarıya açık servislerini (attack surface) haritalandırmaktır. Kali Linux, bu işlemler için endüstri standardı haline gelmiş araçları dahili olarak barındırır. Bu araçların başında Nmap (Network Mapper) gelir.

Bu yazıda, ağ tarama işlemlerinin sadece terminal komutlarından ibaret olmadığını; arka planda TCP, UDP, ICMP ve ARP protokollerinin nasıl manipüle edildiğini teknik bir bakış açısıyla inceleyeceğiz.

1. Canlı Hedef Tespiti (Host Discovery)

Bir ağda hangi IP adreslerinin "ayakta" (up) olduğunu bulmak, port taramasına geçmeden önce zaman kazanmak için şarttır. Nmap, ağın yapısına göre farklı keşif mekanizmaları kullanır:

  • Yerel Ağda (Local Network) ARP Taraması: Tarama yapılan cihaz hedefle aynı alt ağdaysa (subnet), Nmap doğrudan ARP (Address Resolution Protocol) istekleri gönderir. ARP, OSI Modelinin 2. katmanında çalıştığı için güvenlik duvarlarına (Firewall) takılma ihtimali çok düşüktür ve en kesin sonucu verir.
  • Yönlendirilmiş Ağlarda (Routed Network) ICMP Ping Sweep: Hedef farklı bir ağdaysa Nmap; standart ICMP Echo Request, TCP SYN (genellikle 443. porta) ve TCP ACK (genellikle 80. porta) paketlerini karma olarak göndererek hedefin ayakta olup olmadığını doğrulamaya çalışır.

2. Port Tarama Mekanikleri ve TCP/IP

Bir hedefin ayakta olduğu doğrulandıktan sonra, üzerindeki açık portların tespiti başlar. Nmap, TCP/IP protokolünün doğasındaki el sıkışma (handshake) kurallarını kullanarak portların durumunu belirler.

TCP SYN Scan (Gizli Tarama / Half-Open) - -sS Root yetkisiyle çalışan Nmap'in varsayılan tarama türüdür. Tam bir TCP bağlantısı kurmak yerine "yarım" bir bağlantı açar:

  1. Nmap hedefe SYN paketi gönderir.
  2. Hedef port açıksa SYN-ACK ile döner.
  3. Nmap portun açık olduğunu anlar, ancak bağlantıyı tamamlamak (ACK göndermek) yerine hedefe anında bir RST (Reset) paketi göndererek bağlantıyı koparır. Bu yöntemin avantajı, hedefin işletim sistemi veya uygulama loglarında tam bir bağlantı kaydı (TCP connection logged) bırakmaması ve son derece hızlı olmasıdır.

TCP Connect Scan - -sT Eğer Nmap root yetkisi olmadan çalıştırılırsa, işletim sisteminin standart connect() sistem çağrısını (system call) kullanmak zorunda kalır. Bu durumda klasik üçlü el sıkışma (SYN -> SYN-ACK -> ACK) tamamlanır. Bu yöntem daha yavaştır ve hedef sunucunun loglarında açıkça bir bağlantı izi bırakır.

UDP Scan - -sU UDP protokolü bağlantısız (connectionless) olduğu için taraması daha zordur. Nmap hedefe boş bir UDP paketi gönderir. Eğer hedef sistemden "ICMP Port Unreachable" hatası dönerse portun "kapalı" (closed) olduğu anlaşılır. Hiçbir cevap dönmezse port "açık veya filtrelenmiş" (open|filtered) olarak işaretlenir.

3. Servis ve Versiyon Tespiti (Service Fingerprinting)

Sadece portun açık olduğunu bilmek, sızma testi için yeterli değildir. O portun arkasında çalışan servisin (örneğin Nginx, Apache, SSH, MySQL) hangi versiyonda çalıştığını bulmak gerekir.

Nmap, -sV parametresi kullanıldığında açık bulduğu portlara özel sondalar (probes) gönderir. Dönen banner bilgisini (sunucunun kendini tanıttığı metin bloğu) kendi dahili veritabanındaki (nmap-service-probes) binlerce imza ile karşılaştırarak (pattern matching) uygulamanın tam sürümünü tespit eder. İşletim sistemi tespiti (-O parametresi) de benzer bir yöntemle, dönen TCP paketlerindeki TTL değerleri ve pencere boyutlarının (Window Size) analiziyle yapılır.

4. Temel Kullanım Örnekleri

Aşağıdaki komutlar, yukarıda teorik olarak bahsedilen işlemlerin Kali Linux terminalindeki pratik karşılıklarıdır:

Bash

# Sadece hızlı bir SYN taraması (En sık kullanılan)
# -Pn: Ping atmadan doğrudan port tara (Ping engelleyen sistemler için)
sudo nmap -sS -Pn 192.168.1.50

# Belirli portları ve servis versiyonlarını tarama
sudo nmap -p 22,80,443 -sV 192.168.1.50

# Agresif tarama (İşletim sistemi tespiti, versiyon tespiti, script taraması ve traceroute tek komutta)
sudo nmap -A 192.168.1.50

# Tüm subnet'te sadece ayakta olan cihazları tespit etme (Port taraması yapmaz)
sudo nmap -sn 10.0.0.0/24

Sonuç

Kali Linux üzerinde ağ taraması yapmak, temelde işletim sisteminin TCP/IP yığınını ustaca manipüle etmektir. Nmap gibi araçlar bu manipülasyonu otomatize eden gelişmiş framework'lerdir. Tarama algoritmalarının arka planda ağ trafiğini nasıl şekillendirdiğini anlamak, güvenlik duvarlarını (Firewall) ve saldırı tespit sistemlerini (IDS/IPS) aşma (evasion) süreçlerinde bir geliştirici veya siber güvenlik uzmanı için temel gereksinimdir.

Etiketler

  • Kali Linux
  • Nmap
  • Reconnaissance
  • Networking
  • TCP/IP
  • Port Scanning

İletişim

Sorularınız veya daha fazla ayrıntı için sosyal medya bağlantılarımdan bana ulaşabilirsiniz.

Bülten

Teknoloji, tasarım, üretkenlik, programlama ve daha fazlası gibi konularda kişisel güncellemeler ve içerikler için katılın!

Diğer 0 okuyucuya katılın.