Autor del tema
#0
Bir port tarayıcı (port scanner), bir ağ üzerindeki açık portları tespit etmek için kullanılan önemli bir araçtır. Bu tür yazılımlar, siber güvenlik uzmanlarından sistem yöneticilerine kadar birçok profesyonel tarafından kullanılır. Port tarayıcıları, bir sistemin hangi hizmetleri sunduğunu anlamak için kritik bir öneme sahiptir.
Port tarayıcı yazarken göz önünde bulundurulması gereken birkaç temel unsur vardır:
Örnek bir port tarayıcı yazılımı Python dilinde şu şekilde gerçekleştirilebilir:
Bu basit örnek, belirli bir IP adresindeki 1-1024 arasındaki portları tarar ve açık olanları listeler. Güvenlik açısından dikkat edilmesi gereken bir nokta, izinsiz taramaların yasal sonuçlar doğurabileceğidir. Bu nedenle, yalnızca izinli sistemler üzerinde port taraması yapmalısınız. Port tarayıcı yazmanın temel ilkeleri ve örneği bu şekilde özetlenebilir.
Port tarayıcı yazarken göz önünde bulundurulması gereken birkaç temel unsur vardır:
- Protokol Seçimi: Port tarayıcıları genellikle TCP ve UDP protokollerini kullanır. TCP, bağlantı odaklı bir protokol olduğundan, bağlantı durumu ve yanıt süreleri hakkında daha fazla bilgi sağlar. UDP ise bağlantı kurmadan veri gönderdiği için daha hızlıdır fakat yanıt alınamaması durumunda bağlantı durumu hakkında bilgi vermez.
- Port Aralığı: Tarayıcı, belirli bir port aralığı üzerinde çalışabilir. Genellikle 1-65535 arası portlar taranır, ancak çoğu sistemin yalnızca belirli portları açıktır.
- Zaman Aşımı ve Hız: Tarayıcı yazarken, tarama işleminin ne kadar sürede tamamlanacağına dair zaman aşımı ayarları belirlemek önemlidir. Çok hızlı taramalar, yanlış sonuçlara yol açabilirken, çok yavaş taramalar zaman kaybına neden olabilir.
- Sonuçların Raporlanması: Tarama sonuçlarının anlaşılır bir şekilde raporlanması, kullanıcılar için önemlidir. Açık portların listesi, bunların hangi protokolleri kullandığı ve hangi servislerin çalıştığı gibi bilgiler sağlanmalıdır.
Örnek bir port tarayıcı yazılımı Python dilinde şu şekilde gerçekleştirilebilir:
CODE
1234567891011121314
import socket
def port_scan(ip, start_port, end_port):
for port in range(start_port, end_port + 1):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(1)
result = sock.connect_ex((ip, port))
if result == 0:
print(f"Açık port: {port}")
sock.close()
ip_address = '192.168.1.1' # Tarama yapılacak IP adresi
port_scan(ip_address, 1, 1024) # 1 ile 1024 arasındaki portları tara
Bu basit örnek, belirli bir IP adresindeki 1-1024 arasındaki portları tarar ve açık olanları listeler. Güvenlik açısından dikkat edilmesi gereken bir nokta, izinsiz taramaların yasal sonuçlar doğurabileceğidir. Bu nedenle, yalnızca izinli sistemler üzerinde port taraması yapmalısınız. Port tarayıcı yazmanın temel ilkeleri ve örneği bu şekilde özetlenebilir.