general_goril
- 26 Tem 2025
- 16 Mesaj
Aktiflik
Seviye
Deneyim
Selam dostlar,
Bu konuda sizlerle tamamen Python ile kendim yazmış olduğum, renkli çıktı veren, hızlı ve gizli modda çalışabilen gelişmiş bir Port Tarama Aracı paylaşacağım.
Kod tamamen açık kaynak olup istediğiniz gibi geliştirebilirsiniz.
- ? Renkli terminal çıktısı (Colorama desteği)
- ? Hızlı tarama modu (multi-threading ile)
- ?️
Gizli mod (rastgele gecikmeli, tespit edilmesi zor) - ? Bilinen port açıklamaları
Riskli port uyarıları- ? Güvenlik puanı hesaplama
- ?️ Engellenmiş port tespiti (Firewall algılama)
? Kullanım
Python 3 yüklü olmalı.
Colorama kütüphanesini yükleyin:
pip install colorama
Kod dosyasını ip_tools.py olarak kaydedin.
Terminalden çalıştırın:
python ip_tools.py
Nasıl Kullanılır?
Terminal veya komut satırını açın.
Kodun bulunduğu klasöre gidin:
cd klasor_yolu
Programı çalıştırın:
python ip_tools.py
Karşınıza menü gelecek:
Hedef IP veya alan adını yazın.
Örnek:
192.168.1.1
veya
google.com
Tarama modu seçin:
[1] Normal Mod (hızlı ama tespit edilebilir)
[2] Gizli Mod (yavaş ve sessiz)
Port aralığını girin:
Başlangıç portu: 1
Bitiş portu: 65535
Tarama başlar ve sonunda:
?️ Engellenmiş portlar
? Güvenlik skoru
ekranda listelenir.
? Notlar
Normal Mod hızlıdır ama güvenlik sistemleri tarafından daha kolay tespit edilir.
Gizli Mod daha yavaştır ama tespit edilme ihtimali düşüktür.
altta kodu paylaşacam size daha fazlası için teşekkur puanı gondermeyi be yorum yapmakla detsek olabilirsiniz
hepinize iyi kaoslar
Python:
# core/ip_tools.py
import socket
import threading
import time
import random
from colorama import Fore, Style, init
init(autoreset=True)
# 🧠 Bilinen port açıklamaları
PORT_DESCRIPTIONS = {
21: 'FTP (Dosya Aktarımı)',
22: 'SSH (Uzaktan Erişim)',
23: 'Telnet (Güvensiz Uzaktan Erişim)',
25: 'SMTP (E-Posta)',
53: 'DNS (Alan Adı Hizmeti)',
80: 'HTTP (Web)',
110: 'POP3 (Mail)',
139: 'NetBIOS (Paylaşım)',
143: 'IMAP',
443: 'HTTPS (Güvenli Web)',
445: 'SMB (Dosya Paylaşımı)',
3306: 'MySQL',
3389: 'RDP (Uzak Masaüstü)',
}
# 🔥 Riskli portlar
RISKY_PORTS = [23, 139, 445, 3389]
# 🌈 Banner
ascii_banner = f"""{Fore.LIGHTGREEN_EX}
██╗ ████████╗██╗ ██╗██████╗ ██╗ ██╗
╚██╗╚══██╔══╝██║ ██║██╔══██╗██║ ██╔╝
╚██╗ ██║ ██║ ██║██████╔╝█████╔╝
██╔╝ ██║ ██║ ██║██╔══██╗██╔═██╗
██╔╝ ██║ ╚██████╔╝██║ ██║██║ ██╗
╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
██╗ ██╗ ██╗ █████╗ ██████╗██╗ ██╗
╚██╗ ██║ ██║██╔══██╗██╔════╝██║ ██╔╝
╚██╗███████║███████║██║ █████╔╝
██╔╝██╔══██║██╔══██║██║ ██╔═██╗
██╔╝ ██║ ██║██║ ██║╚██████╗██║ ██╗
╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝
{Style.RESET_ALL}
{Fore.MAGENTA} 🛰️ PORT SCANNER | BY ǤΞИΣ𐍂ΛL_GØⱤ!L |.gg/3GgXMazpdp
"""
# 💼 Servis adı al
def get_service_name(port):
return PORT_DESCRIPTIONS.get(port, 'Tanımsız Servis')
# 🌐 IP doğrulama
def is_valid_ip(ip):
try:
socket.gethostbyname(ip)
return True
except:
return False
# 🧵 Port tarayıcı thread fonksiyonu
def scan_port(ip, port, results, stealth):
try:
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
sock.settimeout(1.0 if stealth else 0.5)
result = sock.connect_ex((ip, port))
service = get_service_name(port)
if result == 0:
results['open'].append((port, service))
if port in RISKY_PORTS:
results['warnings'].append(f"{Fore.YELLOW}⚠️ RİSKLİ PORT AÇIK: {port} - {service}")
elif result in (111, 10061):
results['blocked'].append(port)
else:
results['closed'].append(port)
if stealth:
time.sleep(random.uniform(0.3, 1.5)) # Stealth delay
except Exception as e:
print(f"{Fore.RED}❌ Tarama hatası - Port {port}: {e}")
# 🥮 Güvenlik puanı hesapla
def calculate_security_score(results):
score = 100
for port, _ in results['open']:
if port in RISKY_PORTS:
score -= 15
else:
score -= 2
return max(score, 0)
# 🚀 Tarama başlat
def run_scan(ip, start_port, end_port, stealth=False):
mode = f"Gizli Mod" if stealth else "Normal Mod"
print(f"\n{Fore.CYAN}🔎 {ip} adresine {start_port}-{end_port} portları arasında ({mode}) tarama başlatılıyor...\n")
results = {
'open': [],
'closed': [],
'blocked': [],
'warnings': []
}
threads = []
start_time = time.time()
for port in range(start_port, end_port + 1):
t = threading.Thread(target=scan_port, args=(ip, port, results, stealth))
threads.append(t)
t.start()
for t in threads:
t.join()
duration = round(time.time() - start_time, 2)
print(f"\n{Fore.YELLOW}🕒 Tarama Süresi: {duration} saniye")
if results['open']:
print(f"{Fore.GREEN}✅ Açık Portlar: {len(results['open'])}")
for port, service in results['open']:
print(f"{Fore.GREEN}[+] {port} - {service}")
else:
print(f"{Fore.RED}🚫 Açık port bulunamadı.")
if results['blocked']:
print(f"{Fore.MAGENTA}🛡️ Engellenmiş Portlar: {len(results['blocked'])} (Firewall olabilir)")
if results['warnings']:
print(f"\n{Fore.RED}‼️ Güvenlik Uyarıları:")
for warn in results['warnings']:
print(warn)
score = calculate_security_score(results)
print(f"\n{Fore.CYAN}🔐 Güvenlik Skoru: {score}/100")
def print_banner():
print(ascii_banner)
def port_scan_menu():
print_banner()
target = input("🌐 Hedef IP veya alan adı: ").strip()
ip = resolve_target(target)
if not ip:
print(f"{Fore.RED}❌ Geçersiz IP veya alan adı!")
return
try:
print("\n[1]. Normal (Hızlı ama tespit edilebilir)")
print("[2]. Gizli (Yavaş ve sessiz)")
mode_choice = input("🚦 Tarama modunu seçin (1/2): ").strip()
stealth = mode_choice == '2'
print("\n🔢 Port Aralığı Belirleyin:")
start_port = int(input(" ▶ Başlangıç portu (1-65535): "))
end_port = int(input(" ▶ Bitiş portu (1-65535): "))
if start_port < 1 or end_port > 65535 or start_port > end_port:
raise ValueError
except:
print(f"{Fore.RED}❌ Giriş hatalı! Lütfen doğru aralıklar girin.")
return
run_scan(ip, start_port, end_port, stealth)
def resolve_target(target):
try:
ip = socket.gethostbyname(target)
return ip
except:
return None
# Doğrudan çalıştırılabilir
if __name__ == "__main__":
port_scan_menu()



