Gobuster DNS 스캔 결과에서 IP 주소 표시하기

Beginner
지금 연습하기

소개

Gobuster 는 URI(디렉토리 및 파일), DNS 서브도메인, Amazon S3 버킷 등을 무차별 대입 (brute-forcing) 하는 데 사용되는 강력한 도구입니다. 사이버 보안 및 침투 테스트 맥락에서 서브도메인을 발견하는 것은 정찰 단계의 중요한 단계입니다. 이러한 서브도메인과 관련된 IP 주소를 아는 것은 조직의 네트워크 인프라에 대한 귀중한 통찰력을 제공하여 잠재적인 공격 벡터 또는 잘못된 구성을 식별하는 데 도움이 될 수 있습니다.

이 랩에서는 Gobuster 를 사용하여 DNS 서브도메인 열거를 수행하는 방법을 안내합니다. 특히, 발견된 서브도메인과 함께 IP 주소를 표시하는 특정 플래그를 활용하여 대상 인프라를 효과적으로 매핑하는 능력을 향상시키는 방법을 배우게 됩니다.

기본 gobuster dns 스캔 실행

이 단계에서는 Gobuster 를 사용하여 기본 DNS 서브도메인 스캔을 수행합니다. 이 과정은 일반적으로 해당 IP 주소 없이 발견된 서브도메인만 나열하는 DNS 스캔의 기본 출력을 보여줍니다. 대상 도메인으로는 example.com을 사용하고 서브도메인에 대한 일반적인 단어 목록을 사용합니다.

먼저 Gobuster 가 설치되어 있는지 확인하십시오. 설치되어 있지 않다면 sudo apt install gobuster를 사용하여 설치할 수 있습니다.

이제 터미널에서 다음 명령을 실행합니다.

gobuster dns -d example.com -w /usr/share/wordlists/dirb/common.txt -q
  • gobuster dns: DNS 서브도메인 스캔을 수행하겠다는 것을 지정합니다.
  • -d example.com: example.com을 대상 도메인으로 설정합니다.
  • -w /usr/share/wordlists/dirb/common.txt: 서브도메인 무차별 대입에 사용할 단어 목록을 지정합니다. 이것은 많은 Linux 배포판에서 사용할 수 있는 일반적인 단어 목록입니다.
  • -q: 배너 및 진행률 출력을 억제하고 결과만 표시합니다.

example.com에 대해 찾은 서브도메인 목록이 표시됩니다. 서브도메인 이름만 표시되는 것을 확인하십시오.

Found: www.example.com
Found: mail.example.com
Found: ftp.example.com
Found: blog.example.com
Found: dev.example.com

-i 플래그로 스캔 다시 실행

이 단계에서는 Gobuster DNS 스캔을 다시 실행하지만, 이번에는 -i 플래그를 포함합니다. -i 플래그는 Gobuster 에 발견된 각 서브도메인과 관련된 IP 주소를 표시하도록 지시합니다. 이는 대상 인프라에 대한 보다 완전한 그림을 얻는 데 중요합니다.

터미널에서 다음 명령을 실행합니다.

gobuster dns -d example.com -w /usr/share/wordlists/dirb/common.txt -i -q

이전 명령과의 유일한 차이점은 -i 플래그가 추가되었다는 것입니다.

출력을 주의 깊게 관찰하십시오. 이제 발견된 각 서브도메인 옆에 IP 주소가 나열된 것을 볼 수 있습니다.

Found: www.example.com (93.184.216.34)
Found: mail.example.com (93.184.216.34)
Found: ftp.example.com (93.184.216.34)
Found: blog.example.com (93.184.216.34)
Found: dev.example.com (93.184.216.34)

여기에 표시된 IP 주소는 example.com에 대한 것이며, 일반적으로 시연 목적으로 모든 서브도메인에 대해 단일 IP 를 가리킵니다. 실제 시나리오에서는 다른 서브도메인에 대해 다른 IP 주소를 볼 수 있으며, 이는 다른 서버 또는 서비스를 나타냅니다.

-i 플래그 사용 전후 출력 비교

이 단계에서는 이전 두 Gobuster 명령의 출력을 시각적으로 비교합니다. 이 비교는 정찰 과정에서 -i 플래그가 만드는 중요한 차이점을 강조할 것입니다.

1 단계 ( -i 없음) 의 출력을 다시 확인합니다.

Found: www.example.com
Found: mail.example.com
Found: ftp.example.com
Found: blog.example.com
Found: dev.example.com

그리고 2 단계 ( -i 사용) 의 출력입니다.

Found: www.example.com (93.184.216.34)
Found: mail.example.com (93.184.216.34)
Found: ftp.example.com (93.184.216.34)
Found: blog.example.com (93.184.216.34)
Found: dev.example.com (93.184.216.34)

핵심적인 차이점은 -i 플래그를 사용할 때 각 서브도메인 옆에 (IP_ADDRESS)가 표시된다는 것입니다. 이 추가 정보는 기본 인프라를 이해하는 데 중요합니다. IP 주소가 없으면 서브도메인의 이름만 알 수 있습니다. IP 주소가 있으면 해당 서브도메인이 확인되는 위치를 알 수 있으며, 이는 특정 서버, 클라우드 서비스 또는 네트워크의 다른 부분을 가리킬 수 있습니다.

이 비교는 간단한 플래그가 정찰 노력의 유용성을 어떻게 크게 향상시킬 수 있는지 보여줍니다.

각 서브도메인과 관련된 IP 주소 식별

이 단계에서는 이전 단계에서 발견된 서브도메인과 관련된 IP 주소를 구체적으로 식별하고 기록합니다. example.com의 경우 모든 서브도메인에 대해 동일한 IP 가 표시될 수 있지만, 실제 시나리오에서는 잠재적으로 다른 IP 주소를 식별하는 작업이 포함될 것입니다.

2 단계 명령의 출력에서:

Found: www.example.com (93.184.216.34)
Found: mail.example.com (93.184.216.34)
Found: ftp.example.com (93.184.216.34)
Found: blog.example.com (93.184.216.34)
Found: dev.example.com (93.184.216.34)

example.com의 경우 나열된 모든 서브도메인이 IP 주소 93.184.216.34로 확인되는 것을 볼 수 있습니다.

실제 정찰 시나리오에서 다른 도메인을 스캔하는 경우 다음과 같은 결과를 얻을 수 있습니다.

  • sub1.target.com192.168.1.10으로 확인
  • sub2.target.com192.168.1.11로 확인
  • cdn.target.com203.0.113.50 (CDN IP) 으로 확인
  • admin.target.com10.0.0.5 (내부 IP, 노출된 경우) 로 확인

이러한 고유한 IP 를 식별하는 것은 다음과 같은 데 도움이 됩니다.

  • 서버 지문 인식 (Server Fingerprinting): 다른 IP 는 다른 서버, 운영 체제 또는 웹 서버 소프트웨어를 나타낼 수 있습니다.
  • 클라우드 서비스 식별: 알려진 클라우드 제공업체 (AWS, Azure, GCP) 의 IP 는 특정 클라우드 서비스 사용을 드러낼 수 있습니다.
  • 네트워크 세분화 (Network Segmentation): 다른 IP 범위는 조직 내의 다른 네트워크 세그먼트 또는 부서를 시사할 수 있습니다.

이 단계는 서브도메인을 찾는 것뿐만 아니라 해당 서브도메인의 네트워크 위치를 이해하는 것의 중요성을 강조합니다.

이것이 인프라 매핑에 어떻게 도움이 되는지 이해하기

이 마지막 단계에서는 DNS 스캔 결과에 IP 주소를 표시하는 것의 더 넓은 의미, 특히 정찰 중 인프라 매핑에 어떻게 도움이 되는지 이해하게 됩니다.

인프라 매핑은 대상의 네트워크 및 시스템에 대한 상세한 다이어그램 또는 이해를 생성하는 프로세스입니다. 서브도메인 열거와 IP 주소 확인을 결합하면 여러 가지 이점을 얻을 수 있습니다.

  1. 호스팅 제공업체 식별: 다른 IP 범위는 종종 다른 호스팅 제공업체 (예: AWS, Google Cloud, DigitalOcean) 에 속합니다. 이를 알면 조직 인프라의 다른 부분이 어디에 호스팅되는지 이해하는 데 도움이 될 수 있습니다.
  2. 숨겨진 서비스 검색: 때로는 서브도메인이 메인 웹사이트에서 직접 연결되지 않은 내부 또는 덜 알려진 서비스로 연결될 수 있습니다. 해당 IP 를 확인하면 동일한 서버, 다른 서버 또는 다른 네트워크 세그먼트에 있는지 확인할 수 있습니다.
  3. 공격 표면 (Attack Surfaces) 파악: 여러 서브도메인이 동일한 IP 로 확인되는 경우, 여러 서비스를 호스팅하는 단일 서버를 나타낼 수 있으며 잠재적으로 공격 벡터를 통합할 수 있습니다. 반대로, 고유한 IP 는 분산된 서비스를 시사하며, 각 서비스는 자체적인 잠재적 취약점을 가집니다.
  4. WAF/CDN 우회: 메인 도메인이 웹 애플리케이션 방화벽 (WAF) 또는 콘텐츠 전송 네트워크 (CDN) 뒤에 있는 경우, 원본 IP(실제 서버 IP) 로 확인되는 서브도메인을 찾으면 WAF/CDN을 우회하여 서버와 직접 상호 작용할 수 있습니다.
  5. 네트워크 세분화 분석 (Network Segmentation Analysis): 다른 IP 주소 블록은 조직 내의 다른 부서, 지리적 위치 또는 네트워크 세그먼트를 나타낼 수 있습니다. 이는 대상의 내부 네트워크 구조를 이해하는 데 도움이 됩니다.

Gobuster 에 -i 플래그를 사용함으로써 단순한 서브도메인 목록을 귀중한 인프라 정보 조각으로 변환하여 정찰 능력을 크게 향상시킵니다. 이 정보는 포트 스캔, 취약점 분석 및 표적 공격과 같은 후속 침투 테스트 단계를 계획하는 데 중요합니다.

요약

이 실습에서는 Gobuster 를 사용하여 DNS 서브도메인 열거를 효과적으로 수행하는 방법과, 더 중요하게는 발견된 각 서브도메인에 대한 관련 IP 주소를 표시하는 방법을 배웠습니다. 기본적인 Gobuster DNS 스캔을 수행하고 기본 출력을 관찰한 다음, IP 주소를 포함하기 위해 -i 플래그를 사용하여 스캔을 다시 실행했습니다. 비교를 통해 이 플래그가 만드는 중요한 차이점을 이해했습니다. 마지막으로, 이러한 IP 주소를 식별하는 것이 사이버 보안에서 포괄적인 인프라 매핑 및 정찰에 얼마나 중요한지 탐구했습니다. 이 기술은 대상의 네트워크 환경에 대한 더 깊은 통찰력을 얻고 잠재적인 공격 표면을 식별하는 데 매우 중요합니다.