Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/crypt0s/fakedns
Web SecurityNetwork SecurityPenetration TestingDNS FuzzingRed TeamingDNS Analysis
GitHubcrypt0s/fakedns

FakeDns

정규 표현식 기반의 Python MITM DNS 서버로, DNS 리바인딩 공격을 지원합니다.

저장소 보기
5811454년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

FakeDns

업데이트 4/14/2020 - Python 2 지원이 제거되고 코드가 Python3로 전환되었습니다.

이제 라운드로빈 및 개선된 옵션을 제공합니다!

버그: @crypt0s - 트위터

[email protected] - 이메일

파이썬 정규 표현식 기반 DNS 서버입니다!

root@kitploit:~
USAGE:
./fakedns.py [-h] -c Config path [-i interface IP address] [--rebind]

dns.conf는 다음과 같이 설정해야 합니다:

root@kitploit:~
[RECORD TYPE CODE] [python regular expression] [answer] [rebind answer]

응답 값은 IP 주소 또는 문자열 self일 수 있습니다. self 문법 설탕은 현재 시스템의 로컬 IP 주소(예: 192.168.1.100)로 변환됩니다.

일치하는 항목이 없으면 DNS 서버는 로컬 머신에 설정된 DNS 서버를 사용하여 요청을 해석하려고 시도하고, 요청한 사용자를 대신하여 해당 서버로 요청을 프록시합니다.

지원되는 요청 유형

root@kitploit:~
- A
- TXT
- AAAA
- PTR
- SOA

개발 중인 요청 유형

root@kitploit:~
- MX
- CNAME

기타

root@kitploit:~
- Supports DNS Rebinding
- Supports round-robin

라운드로빈

라운드로빈 규칙이 구현되어 있습니다. 클라이언트가 일치하는 규칙을 요청할 때마다 FakeDNS는 규칙에 제공된 IP 목록에서 다음 IP를 제공합니다.
IP 목록은 쉼표로 구분됩니다.

예를 들어:

root@kitploit:~
A robin.net 1.2.3.4,1.1.1.1,2.2.2.2

robin.net에 대한 라운드로빈 규칙으로, 1.2.3.4, 1.1.1.1, 2.2.2.2를 가리키는 응답을 제공하며, 클라이언트가 robin.net 항목을 요청할 때마다 해당 순서로 반복합니다.

참고: 이러한 IP는 응답에서 클라이언트에게 목록으로 포함되지 않습니다. 클라이언트는 응답에서 하나의 IP만 받습니다(나중에 변경될 수 있음).

DNS 리바인딩

FakeDNS는 리바인딩 규칙을 지원합니다. 기본적으로 서버는 클라이언트로부터 도메인에 대한 요청을 임계값(기본값 1회)까지 수락한 다음 IP 주소를 다른 주소로 변경합니다.

예를 들어:

root@kitploit:~
A rebind.net 1.1.1.1 10%4.5.6.7

즉, rebind.net에 대한 A 레코드가 처음 10번의 시도 동안 1.1.1.1로 응답한다는 뜻입니다. 이미 10번의 요청을 한 클라이언트의 11번째 요청부터 FakeDNS는 두 번째 IP인 4.5.6.7을 제공하기 시작합니다.

여기에서 주소 목록을 사용할 수 있으며 FakeDNS는 "일반" 규칙에서와 마찬가지로 해당 주소들을 라운드로빈 방식으로 제공합니다.

Docker에서 FakeDNS 테스트

(추가 단계 없이 localhost에서만)

저는 Docker에서 FakeDNS를 테스트하고 개발하는 데 많은 성공을 거두었습니다. 최신 Ubuntu 설치에는 이미 포트 53에서 실행되는 자체 DNS 서비스가 있기 때문에 네이티브로 실행하는 것보다 Docker가 더 쉽기 때문입니다.

사용해 보려면 다음 단계를 따라 큰 어려움 없이 사용할 수 있습니다:

FakeDns 디렉터리 안에 있다고 가정할 때: sudo docker run --interactive --tty --volume \pwd`:/opt/FakeDns -p 5353:53/udp python:3.8 /opt/FakeDns/fakedns.py -c /opt/FakeDns/dns.conf.example. 테스트하려면 nslookup -port=5353 testrule.test 127.0.0.1을 실행하면 첫 번째 요청에서 1.1.1.1`을 반환해야 합니다.

또는 docker-compose를 사용하려면 docker-compose up을 실행하고 위와 동일한 테스트를 수행하면 됩니다.

도구 다운로드