Port scanner

Port tarayıcı , açık portlar için bir sunucuyu veya ana bilgisayarı araştırmak için tasarlanmış bir uygulamadır.  Bu tür bir uygulama, yöneticiler tarafından  bilgisayar ağlarının güvenlik politikalarını doğrulamak ve saldırganlar tarafından bir ana bilgisayar üzerinde çalışan ağ hizmetlerini tanımlamak ve güvenlik açıklarından yararlanmak için kullanılabilir.
Bir port taraması veya portscan aktif port bulma amacıyla, bir ana bilgisayardaki bir dizi sunucu bağlantı noktası adreslerine istemci istekleri gönderilme işlemidir; bu, kendi başına kötü bir işlem değildir.  Bir port taramasının kullanımının büyük çoğunluğu saldırı için değildir, aksine servislerin uzak makinede uygunluğunu kontrol etme amaçlı küçük araştırmalardır.
Portsweep(Bağlantı noktası taraması), birden fazla ana bilgisayarı belirli bir dinleme bağlantı noktası için taramaktır.  Sonuncusu, tipik olarak spesifik bir servisi aramak için  kullanılır, örneğin, bir SQL tabanlı bilgisayar solucanı, 1433 numaralı TCP bağlantı noktasını dinleyen ana bilgisayarları aramayı düşünebilir.

Varsayımlar

Tüm port tarama işlemleri, hedeflenen ana bilgisayarın RFC 793 - İletim Denetimi Protokolü ile uyumlu olduğu varsayımına dayanır. Her ne kadar çoğu zaman böyle olsa da bir sunucunun garip paketleri geri göndermesi veya ana bilgisayarın TCP / IP yığını RFC ile uyumlu olmadığı veya değiştirildiği durumlarda yanlış pozitifler üretme olasılığı hala vardır.  Bu özellikle işletim sistemine bağımlı olan daha az yaygın tarama teknikleri için geçerlidir (örneğin, FIN taraması).  Ayrıca TCP / IP yığını parmak izi yöntemi de ana bilgisayarın çalıştırdığı işletim sisteminin türünü tahmin etmek için belirli bir uyarıcıdan gelen bu farklı ağ yanıtları türlerine dayanır.

TCP taraması

En basit port tarayıcıları işletim sisteminin ağ işlevlerini kullanır ve ve genellikle uygulanabilir bir  seçenek olmadığında SYN gidilebilecek sonraki seçenektir (sonraki bölümde açıklanmaktadır).  Nmap , Unix connect () sistem çağrısından sonra adlandırılan bu mod bağlantı taramasını çağırır.  Eğer bağlantı açıksa işletim sistemi TCP 3 yollu el sıkışmasını tamamlar ve bağlantı noktası DoS saldırısı yapılmasını önlemek amacıyla bağlantıyı hemen kapatır.  Aksi halde bir hata kodu döndürülür.  Bu tarama modu sayesinde, kullanıcının özel ayrıcalıklara sahip olmasına gerek yoktur.  Buna rağmen, işletim sistemi ağ fonksiyonlarını kullanmak düşük seviye kontrolünü önler, bu nedenle bu tarama türü daha az yaygındır.  Bu yöntem özellikle bir "portsweep" ise, gürültülüdür: hizmetler gönderenin IP adresini kaydedebilir ve  saldırı tespit sistemleri alarm verebilir.

SYN tarama

SYN taraması, başka bir TCP taraması türüdür.  İşletim sisteminin ağ fonksiyonlarını kullanmak yerine port tarayıcısı ham IP paketlerini kendisi oluşturur ve yanıtları izler.  Bu tarama türü "yarı açık tarama" olarak da bilinir. Çünkü gerçekte tam bir TCP bağlantısını asla açmaz.  Port tarayıcı bir SYN paketi türetir.  Hedef port açıksa, bir SYN-ACK paketi cevap olarak  gönderilir.  Tarayıcı ana bilgisayarı, bir RST paketi göndererek cevap verir ve el sıkışma tamamlanmadan önce bağlantıyı kapatır.  Bağlantı noktası kapalı fakat bağlantı noktası filtreli değilse, hedef anında bir RST paketi ile cevap verir.
Ham ağ kullanımı birçok avantaja sahiptir: tarayıcıya gönderilen paketleri, yanıtlar için zaman aşımını ve yanıtların ayrıntılı olarak raporlanmasını   kontrol eder.  Günümüzde hangi taramanın hedef ana bilgisayarda daha az müdahaleci olduğu konusunda tartışmalar bulunmaktadır.  Bireysel servislerin gerçekte asla bir bağlantı alamaması SYN taramasının bir avantajıdır.  Buna rağmen, bazı RST ağ yığınları el sıkışma sırasında, özellikle yazıcılar gibi basit cihazlar için sorunlara sebep olabilir.  Her iki şekilde de nihai bir tartışma sonucu yoktur.

UDP taraması

UDP taraması da olasıdır fakat bu konuda teknik sorunlar mevcuttur.  UDP , bağlantısız  bir protokoldür, bu nedenle TCP SYN paketine eşdeğer bir paket bu protokolde bulunmamaktadır.  Buna rağmen, eğer bir UDP paketi açık olmayan bir porta gönderilirse, sistem bir ICMP portuna erişilemez mesajı ile cevap verir.  Çoğu UDP port tarayıcıları bu tarama metodunu kullanır ve yanıtın yokluğu bağlantı noktasının açık olduğu sonucuna ulaşmak için kullanılır.  Bununla birlikte, bir port bir güvenlik duvarı tarafından engellenirse, bu metot bağlantı noktasının açık olduğunu yanlışlıkla rapor eder. Eğer porta erişilemez mesajı engellenir ise, tüm portlar açık görünecektir. ICMP hız sınırlaması da bu metodu etkilemektedir.
Uygulama katmanı mesajı üretmeyi umarak, uygulama için spesifik UDP paketleri göndermek alternatif bir yaklaşımdır. Örneğin, eğer bir DNS sunucusu varsa 53 numaralı porta bir DNS sorgusu göndermek bir yanıtla sonuçlanacaktır.  Bu metot açık portları tespit etme konusunda çok daha güvenilirdir.  Bununla birlikte, uygulamaya özel bir inceleme paketinin mevcut olduğu tarama portları ile sınırlıdır.  Nmap gibi bazı araçlar genellikle 20 UDP servisinden daha az problara sahipken bazı nessus gibi ticari araçlar ise 70 UDP servisine sahip olabilir.  Bazı durumlarda, bir servis portu dinliyor olabilir, fakat belirli bir probe paketine cevap vermeyecek şekilde konfigüre edilmiştir.

ACK taraması

ACK taraması, birçok olağan dışı tarama türlerinden biridir. Bunun nedeni bir portun açık mı yoksa kapalı mı, portun filtreli mi yoksa filtre edilmemiş mi olduğunu tam olarak belirlememesidir.  Bu güvenlik duvarı ve onun kural setlerinin varlığını sorgulama denemeleri için oldukça iyidir.  Basit paket filtrelemesi yayınlanmış bağlantılara(ACK bit setli paketler) izin verirken, daha sofistike kararlı güvenlik duvarları olamayabilir.

Window taraması

Modası geçmiş yapısından dolayı window taraması portun açık veya kapalı olduğuna karar vermek için büsbütün güvensizdir.  ACK taramalarıyla aynı paketleri üretir, fakat paketlerin pencere alanlarının değiştirilip değiştirilmediğini kontrol eder.  Paket hedefe ulaştığı zaman,  eğer port noktası açıksa tasarım hatası paket için bir pencere boyutu oluşturmaya çalışır, paket gönderene geri dönmeden paketin pencere alanı 1'lerle işaretlenir.  Bu uygulamayı artık desteklemeyen sistemlerde bu tarama tekniğini kullanmak,pencere alanı için 0 değerini döndürür ve açık portları kapalı olarak etiketler.

FIN taraması

Güvenlik duvarları genellikle yeterince kapsamlı olmayan SYN paketleri  türündeki paketleri tarar ve engeller.  FIN paketleri güvenlik duvarlarından değişiklik yapmadan atlayabilirler.  Açık portlar FIN paketlerini görmezden gelirken  kapalı portlar uygun RST paketi olan bir FIN paketine cevap verirler.  TCP'nin doğasından dolayı bu tipik bir davranıştır ve bir şekilde önlenemez bir çöküştür.

ISP'ler tarafından port filtreleme

İnternet servis sağlayıcıların çoğu, müşterilerinin ev ağları dışındaki hedeflere port taraması yapma yeteneklerini sınırlandırır.  Bu genellikle müşterinin kabul etmesi gereken hizmet veya kabul edilebilir kullanım politikası kapsamında belirtilmektedir.  Bazı ISP'ler, önceden belirlenmiş portlara giden servis taleplerini önlemek için paket filtreleri veya şeffaf vekil sunucuları kullanırlar.  Örneğin,eğer bir ISP 80 numaralı porta HTTP şeffaf vekil sunucusu sağlarsa, herhangi bir adresin port taramaları, hedef ana bilgisayarın gerçek yapılandırmasını göz önüne almayarak, port 80 ve açık olacak şekilde  görünecektir.

Etik

Bir port taraması sırasında toplanan bilgilerin, ağ envanteri ve ağın güvenliğinin doğrulanması gibi pek çok kanuni kullanıma sahiptir.  Port taraması, bununla birlikte güvenliği tehlikeye atan durumlarda da kullanılır.  Çoğu istismar, port taramalarının açık portları bulmasına ve arabellek aşımı durumunu tetiklemek için spesifik veri örüntüleri gönderilmesine dayanır.  Bu tarz bir davranış, hassas bir bilginin ve iş yapma yeteneğinin kaybına veya açığa çıkmasına yol açarak bir ağın güvenliğini tehlikeye atabilir.
Port taramasının neden olduğu tehdit seviyesi taramam metodunun çeşidine, tarama yapılan portun türüne, sayısına, hedeflenen ana bilgisayarın değerine ve ana bilgisayarı görüntüleyen yöneticiye göre değişiklik gösterebilir. Ama bir port taraması, genellikle bir saldırının ilk adımı olarak görünür ve bununla birlikte ana bilgisayar hakkında birçok hassas bilgiyi ortaya çıkarabilme olasılığı olduğu için ciddiye alınmaktadır.  Buna rağmen, port taramasının sonrasında gerçek bir saldırının  gözlemlenme olasılığı düşüktür. Port taraması vulnerability scan ile ilişkilendirildiğinde saldırı olasılığı daha yüksektir.