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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
domainim — 조직 네트워크 스캐닝을 위한 빠르고 포괄적인 도구 | Kitploit
도구/GitHubGitHub/pptx704/domainim
OSINT (Open Source Intelligence)ReconnaissanceNetwork MappingPort ScanningDNS & Subdomain EnumerationInformation GatheringPenetration TestingDNS Analysis
GitHubpptx704/domainim

domainim

조직 네트워크 스캐닝을 위한 빠르고 포괄적인 도구

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

DOMAINIM

기능 • 사용법 • 설치 • 사용법 • 기여 • 추가 참고 사항

Domainim은 조직 네트워크 스캔을 위한 빠른 도메인 정찰 도구입니다. 이 도구는 OSINT, 무차별 대입, DNS 해석 등의 기술을 사용하여 조직의 구조에 대한 간략한 개요를 제공하는 것을 목표로 합니다.

기능

현재 기능 (v1.0.1)-

  • 서브도메인 열거 (2개 엔진 + 무차별 대입)
  • 사용자 친화적 출력
  • A 레코드 (IPv4) 해석

  • 가상 호스트명 열거

  • 역방향 DNS 조회

  • 와일드카드 서브도메인 감지 (무차별 대입용)

  • 기본 TCP 포트 스캔

  • 서브도메인을 입력으로 허용

  • 결과를 JSON 파일로 내보내기

일부 기능은 작업 중입니다. 자세한 내용은 계획된 기능을 참조하세요.

이 프로젝트는 Sublist3r에서 영감을 받았습니다. 포트 스캐너 모듈은 NimScan을 기반으로 크게 작성되었습니다.

설치

이 저장소를 소스에서 빌드할 수 있습니다-

  • 저장소를 클론합니다
root@kitploit:~
git clone [email protected]:pptx704/domainim
  • 바이너리를 빌드합니다
root@kitploit:~
nimble build
  • 바이너리를 실행합니다
root@kitploit:~
./domainim <domain> [--ports=<ports>]

또는 릴리스 페이지에서 바이너리를 다운로드할 수 있습니다. 바이너리는 Debian 기반 시스템에서만 테스트되었음을 유의하세요.

사용법

root@kitploit:~
./domainim <domain> [--ports=<ports> | -p:<ports>] [--wordlist=<filename> | l:<filename> [--rps=<int> | -r:<int>]] [--dns=<dns> | -d:<dns>] [--out=<filename> | -o:<filename>]
  • <domain>은 열거할 도메인입니다. 서브도메인도 가능합니다.
  • --ports | -p는 스캔할 포트를 문자열로 지정합니다. 다음 중 하나가 될 수 있습니다-
    • all - 모든 포트 스캔 (1-65535)
    • none - 포트 스캔 건너뛰기 (기본값)
    • t<n> - 상위 n개 포트 스캔 (nmap과 동일). 즉, t100은 상위 100개 포트를 스캔합니다. 최대값은 5000입니다. n이 5000보다 크면 5000으로 설정됩니다.
    • 단일 값 - 하나의 포트 스캔. 즉, 80은 80번 포트를 스캔합니다
    • 범위 값 - 포트 범위 스캔. 즉, 80-100은 80부터 100번 포트를 스캔합니다
    • 쉼표로 구분된 값 - 여러 포트 스캔. 즉, 80,443,8080은 80, 443, 8080번 포트를 스캔합니다
    • 조합 - 위의 조합으로 스캔. 즉, 80,443,8080-8090,t500은 80, 443, 8080~8090번 포트와 상위 500개 포트를 스캔합니다
  • --dns | -d는 DNS 서버의 주소입니다. 유효한 IPv4 주소여야 하며 선택적으로 포트 번호를 포함할 수 있습니다-
    • a.b.c.d - 포트 53에서 의 DNS 서버 사용

예시

  • ./domainim nmap.org --ports=all
  • ./domainim google.com --ports=none --dns=8.8.8.8#53
  • ./domainim pptx704.com --ports=t100 --wordlist=wordlist.txt --rps=1500
  • ./domainim pptx704.com --ports=t100 --wordlist=wordlist.txt --outfile=results.json
  • ./domainim mysite.com --ports=t50,5432,7000-9000 --dns=1.1.1.1

도움말 메뉴는 ./domainim --help 또는 ./domainim -h로 접근할 수 있습니다.

root@kitploit:~
Usage:
    domainim <domain> [--ports=<ports> | -p:<ports>] [--wordlist=<filename> | l:<filename> [--rps=<int> | -r:<int>]] [--dns=<dns> | -d:<dns>] [--out=<filename> | -o:<filename>]
    domainim (-h | --help)

Options:
    -h, --help              이 화면을 표시합니다.
    -p, --ports             스캔할 포트. [기본값: `none`]
                            `all`, `none`, `t<n>`, 단일 값, 범위 값, 조합 가능
    -l, --wordlist          서브도메인 무차별 대입을 위한 단어 목록. 유효하지 않은 파일이면 무차별 대입이 건너뛰어집니다.
    -d, --dns               DNS 해석기의 IP와 포트. 유효한 IPv4여야 하며 선택적으로 포트 포함 [기본값: 시스템 기본값]
    -r, --rps               초당 DNS 쿼리 수 [기본값: 1024 req/s]
    -o, --out               출력이 저장될 JSON 파일. 파일 이름은 `.json`으로 끝나야 합니다.

Examples:
    domainim domainim.com -p:t500 -l:wordlist.txt --dns:1.1.1.1#53 --out=results.json
    domainim sub.domainim.com --ports=all --dns:8.8.8.8 -t:1500 -o:results.json

결과의 JSON 스키마는 다음과 같습니다-

root@kitploit:~
[
  {
    "subdomain": string,
    "data": [
      "ipv4": string,
      "vhosts": [string],
      "reverse_dns": string,
      "ports": [int]
    ]
  }
]

nmap.org에 대한 예시 JSON은 여기에서 확인할 수 있습니다.

기여

기여를 환영합니다. 풀 리퀘스트나 이슈를 자유롭게 열어주세요.

계획된 기능

  • TCP 포트 스캔
  • UDP 포트 스캔 지원
  • AAAA 레코드 (IPv6) 해석
  • 사용자 정의 DNS 서버
  • 단어 목록을 사용한 서브도메인 무차별 대입 추가
  • 강제 무차별 대입 (와일드카드 서브도메인이 발견되어도)
  • 서브도메인 열거를 위한 더 많은 엔진 추가
  • 파일 출력 (JSON)
  • 여러 도메인 열거
  • 디렉토리 및 파일 버스팅

기타

  • 오류 발생 시 상세 출력 업데이트 (v0.2.0)
  • 긴 작업에 대한 진행 표시줄 표시
  • 개별 포트 스캔 진행 표시줄 추가
  • 테스트 추가
  • 주석 및 독스트링 추가

추가 참고 사항

이 프로젝트는 아직 초기 단계에 있습니다. 제가 알고 있는 몇 가지 제한 사항이 있습니다.

현재 사용 중인 두 엔진(Sublist3r에서 엔진이라고 부르는 방식)에는 일종의 응답 제한이 있습니다. dnsdumpster는 최대 100개의 서브도메인을 가져올 수 있습니다. crt.sh는 결과가 너무 많으면 결과를 무작위화합니다. crt.sh의 또 다른 문제는 때때로 SQL 오류를 반환한다는 것입니다. 따라서 일부 도메인의 경우 실행할 때마다 결과가 다를 수 있습니다. 앞으로 더 많은 엔진(적어도 무차별 대입 엔진)을 추가할 계획입니다.

포트 스캐너에는 ping 응답 시간 + 750ms의 제한 시간만 있습니다. 이로 인해 위음성이 발생할 수 있습니다. domainim은 포트 스캔을 위한 것이 아니라 빠른 개요를 제공하기 위한 것이므로 이러한 경우는 허용됩니다. 그러나 제한 시간을 늘리는 플래그를 추가할 계획입니다. 같은 이유로 필터링된 포트는 표시되지 않습니다. 더 포괄적인 포트 스캔을 위해서는 Nmap을 사용하는 것이 좋습니다. Domainim은 또한 속도 제한(있는 경우)을 우회하지 않습니다.

vhostname이 인쇄되는 방식이 반복을 불러일으키는 것처럼 보일 수 있습니다.

다음과 같이 인쇄하는 것이 더 나을 수 있습니다-

root@kitploit:~
ack.nmap.org, issues.nmap.org, nmap.org, research.nmap.org, scannme.nmap.org, svn.nmap.org, www.nmap.org
  ↳ 45.33.49.119
    ↳ Reverse DNS: ack.nmap.org. 

하지만 이전 테스트에서 모든 IP가 동일한 vhostname 집합을 공유하지 않는 경우도 발견했습니다. 그래서 이 방식을 유지하기로 결정했습니다.

DNS 서버에는 일종의 속도 제한이 있을 수 있습니다. 그래서 쿼리당 IPv4 해석에 무작위 지연(0300ms)을 추가했습니다. 이는 DNS 서버가 모든 쿼리를 한 번에 받지 않고 보다 자연스러운 방식으로 받도록 하기 위함입니다. 무차별 대입 방식의 경우 기본값은 01000ms이지만 --rps | -t 플래그를 사용하여 변경할 수 있습니다.

특히 저를 괴롭히는 한 가지 제한 사항은 DNS 해석기가 도메인의 모든 IP를 반환하지 않는다는 것입니다. 따라서 모든(또는 대부분의) IP를 얻으려면 여러 쿼리를 수행해야 합니다. 그러나 도메인에 몇 개의 IP가 있는지 알 수 있는 방법은 없습니다. 아직 이에 대한 해결책을 생각해내지 못했습니다. 또한 nim-ndns는 CNAME 레코드를 지원하지 않습니다. 따라서 도메인에 CNAME 레코드가 있으면 해석되지 않습니다. 이에 대해 작성자의 응답을 기다리고 있습니다.

현재는 가능한 와일드카드 서브도메인이 발견되면 무차별 대입이 건너뛰어집니다. 그 이유는 도메인에 와일드카드 서브도메인이 있으면 무차별 대입 시 가능한 모든 서브도메인의 IPv4가 해석되기 때문입니다. 그러나 이렇게 하면 유효한 서브도메인도 건너뛰어집니다(예: scanme.nmap.org는 와일드카드 값이 아님에도 건너뛰어집니다). 나중에 --force-brute | -fb 플래그를 추가하여 강제 무차별 대입을 가능하게 할 예정입니다.

서브도메인 입력에 대한 VHost 열거에도 비슷한 문제가 있습니다. 주어진 서브도메인으로 끝나는 URL이 반환되므로 비슷한 도메인의 서브도메인은 고려되지 않습니다. 예를 들어 ack.nmap.org에 대해 scannme.nmap.org는 인쇄되지 않지만 something.ack.nmap.org는 인쇄될 수 있습니다. nmap.org의 모든 서브도메인을 검색할 수 있지만 이는 서브도메인을 입력으로 사용하는 목적을 무색하게 만듭니다.

라이선스

MIT 라이선스. 전체 텍스트는 LICENSE를 참조하세요.

도구 다운로드
a.b.c.d
  • a.b.c.d#n - 포트 e에서 a.b.c.d의 DNS 서버 사용
  • --wordlist | -l - 단어 목록 파일의 경로입니다. 서브도메인 무차별 대입에 사용됩니다. 파일이 유효하지 않으면 무차별 대입이 건너뛰어집니다. SecLists에서 단어 목록을 얻을 수 있습니다. 릴리스 페이지에도 단어 목록이 제공됩니다.
  • --rps | -r - 무차별 대입 중 초당 요청 수입니다. 기본값은 1024 req/s입니다. DNS 쿼리는 배치로 이루어지며 이전 배치가 완료된 후에만 다음 배치가 전송됩니다. 쿼리가 속도 제한을 받을 수 있으므로 값을 높여도 항상 더 빠른 결과를 보장하지는 않습니다.
  • --out | -o - 출력 파일의 경로입니다. 출력은 JSON 형식으로 저장됩니다. 파일 이름은 .json으로 끝나야 합니다.