
CVE-2026-11106에 대한 개념 증명(PoC)으로, 무제한 DNS AXFR 영역 전송을 악용하여 도메인 레코드를 열거하고, 내부 호스트를 노출하며, 민감한 TXT 데이터를 유출합니다.
# 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()
잘못 구성된 DNS 서버는 모든 IP 주소에서 AXFR 영역 전송 요청을 허용합니다. 이로 인해 공격자가 모든 도메인 레코드를 열거하여 내부 IP 주소, 서비스 이름, 민감한 TXT 레코드를 노출할 수 있습니다.
pip install dnslib dns
sudo python dns_server_sim.py # needs root for port 53
python exploit_axfr.py