
Proof-of-concept per CVE-2026-11106 che sfrutta i trasferimenti di zona DNS AXFR senza restrizioni per enumerare i record di dominio, esporre host interni e divulgare dati TXT sensibili.
# dns_server_sim.py - Simulated DNS server allowing AXFR
from dnslib import DNSRecord, QTYPE, RR, TXT, A
import socketserver, socket
class DNSHandler(socketserver.BaseRequestHandler):
def handle(self):
data, sock = self.request
request = DNSRecord.parse(data)
reply = request.reply()
qname = request.q.qname
if request.q.qtype == QTYPE.AXFR:
# Vulnerability: allows zone transfer from any client
reply.add_answer(RR(qname, QTYPE.TXT, rdata=TXT("secret=admin:password123")))
reply.add_answer(RR(qname, QTYPE.A, rdata=A("192.168.1.1")))
sock.sendto(reply.pack(), self.client_address)
server = socketserver.ThreadingUDPServer(('0.0.0.0', 53), DNSHandler)
print("DNS server on :53")
server.serve_forever()
Un server DNS configurato in modo errato consente richieste di trasferimento di zona AXFR da qualsiasi indirizzo IP. Ciò consente a un attaccante di enumerare tutti i record del dominio, esponendo indirizzi IP interni, nomi dei servizi e record TXT sensibili.
pip install dnslib dns
sudo python dns_server_sim.py # needs root for port 53
python exploit_axfr.py