OSINT 자산 정보 수집 (Asset Enumeration) 및 자동화 툴 활용
자산 정보 수집 (Asset Enumeration)
자산 정보 수집 단계는 타겟 기관이나 기업이 인터넷에 연결해 둔 호스트들을 식별하고 맵핑하는 과정이다. 모의해킹 수행 시 타겟의 이름만 주어졌을 때, 해당 기업이 운영하는 워크스테이션, 서버, 클라우드 등 외부 노출 자산을 찾아내는 것이 이 단계의 핵심이다.
주로 수집하는 정보와 방법은 다음과 같다.
- 도메인 및 서브도메인 정보 수집
- IP 주소 범위(IP Range) 대역 확인 및 스캔 (WHOIS, ASN 등 활용)
- 자산 검색 엔진 및 취약점 스캐너 활용 (Shodan, Censys 등)
1. FQDN과 도메인 정보 수집
FQDN(Fully Qualified Domain Name, 전체 주소 도메인 이름)은 인터넷상에서 특정 호스트의 정확한 위치를 가리키는 절대 주소이다. www.example.com에서 www가 호스트 이름, example.com이 도메인 이름이며 이를 합친 것이 FQDN이다. 단순히 메인 도메인뿐만 아니라 dev, mail, vpn 등 다양한 서브도메인을 찾아 FQDN을 완성하면, 숨겨진 공격 표면(Attack Surface)을 식별할 수 있다.
서브도메인을 찾는 대표적인 방법은 다음과 같다.
- 검색 엔진: 검색 엔진에 기업명을 검색하여 연관된 도메인을 찾는다.
- TLS/SSL 인증서: 인증서 발급 내역(Certificate Transparency)을 조회하여 관련 도메인을 찾는다.
- 브루트포싱(Brute-forcing): 자주 쓰이는 단어(vpn, dev 등)를 대입하여 응답하는 서브도메인을 찾는다. 단, 이 방식은 대상 서버에 직접 패킷을 보내므로 사이버 공격으로 간주될 수 있으며, 사전 인가되지 않은 대상에게는 절대 사용해서는 안 된다.
2. IP 주소 범위 (IP Ranges) 식별
역사가 길거나 규모가 큰 기업은 고유한 공인 IP 주소 대역을 할당받아 사용하는 경우가 많다. 반면 규모가 작거나 최신 인프라를 사용하는 기업은 별도의 IP 할당 없이 AWS, GCP 같은 클라우드 환경을 사용하기도 한다.
전통적인 공인 IP 대역은 WHOIS 검색이나 ASN(Autonomous System Number) 조회를 통해 쉽게 파악할 수 있다. 글로벌 타겟은 APNIC 등을 사용하지만, 한국 타겟의 경우 KISA(한국인터넷진흥원) WHOIS를 활용해 국내 전용 IP 대역을 더욱 정확히 추적할 수 있다.
# 글로벌 타겟 IP 대역 조회
whois -h whois.apnic.net Microsoft
# 한국(KISA) WHOIS 서버를 통해 특정 기업의 IP 할당 내역 조회
whois -h whois.kisa.or.kr "타겟기업명"
위와 같이 조회하면 특정 기업에 할당된 IP 대역 정보를 확인할 수 있다. 반환되는 결과가 길기 때문에, 필요한 IP 범위 블록(inetnum 등)만 파싱하여 분석에 활용한다.
3. OSINT 자동화 및 분석 도구들
정보를 일일이 수동으로 검색하는 것은 매우 비효율적이다. 따라서 모의해킹 실무에서는 다양한 자동화 및 검색 툴을 활용하여 방대한 데이터를 빠르게 수집하고 연관성을 분석한다.
아래는 OSINT 수집에서 핵심적으로 사용되는 대표적인 도구들이다.
1. Amass (서브도메인 및 자산 매핑)
OWASP에서 주도하는 오픈소스 프로젝트인 Amass는 DNS 인프라 정보와 서브도메인을 깊이 있게 추적하는 강력한 도구이다. -passive 옵션을 사용하면 타겟 서버에 직접 패킷을 보내지 않고, 오직 외부에 공개된 데이터만 긁어모아 스텔스하게 서브도메인을 수집한다.
2. theHarvester (이메일 및 호스트 수집)
theHarvester는 수십 개의 검색 엔진과 OSINT 소스를 결합해 서브도메인뿐만 아니라 이메일 주소, 직원 이름 등을 한 번에 수집하는 도구이다. 유료 API 키를 연동하면 터미널 내에서 자동으로 방대한 파싱과 수집을 진행할 수 있다.
3. Shodan
구글이 웹페이지 ‘텍스트’를 인덱싱한다면, Shodan은 인터넷에 연결된 기기 자체(서버, 웹캠, 라우터 등)를 스캔하고 인덱싱한다. 특정 IP가 어떤 포트와 소프트웨어 버전을 돌리고 있는지 검색할 수 있다.
5. Maltego
수집된 방대한 정보(도메인, IP, 이메일 등)들을 점(Node)과 선(Edge)으로 이루어진 거대한 그래프 형태로 시각화해 주는 분석 도구이다. 데이터 사이의 연관 관계를 파악하여 타겟 인프라 지도를 그리는 데 필수적이다.
결과 분석: 메인 도메인에서 수십 개의 서브도메인 노드가 나뭇가지처럼 뻗어 나오는 것을 시각적으로 확인할 수 있다. 여기서 다시 특정 서브도메인을 우클릭해 IP로 변환(To IP Address)하며 지도를 확장해 나간다.
4. 레드팀 관점의 심화 OSINT 수집 및 활용
단순한 도메인과 IP를 넘어, 모의해킹의 ‘초기 침투(Initial Access)’ 성공률을 높이기 위해 레드팀은 다음과 같은 심화된 정보까지 싹쓸이한다.
클라우드 자산(Cloud Assets) 스캐닝
최근 많은 기업들이 온프레미스(On-Premise)에서 클라우드로 인프라를 이전함에 따라, 설정 오류로 퍼블릭하게 열려있는 클라우드 저장소가 주 타겟이 된다. 글로벌하게는 AWS S3 Buckets, Azure Blobs가 타겟이 되며, 국내 환경이라면 NCP(네이버 클라우드), NHN Cloud 등 국내 클라우드 서비스의 노출된 스토리지를 집중적으로 스캔한다. 기업명이나 서비스명으로 버킷 이름을 유추하여 접근을 시도하면 암호화되지 않은 백업 파일이나 소스코드가 통째로 발견되기도 한다.
소스코드 및 퍼블릭 코드 저장소 분석
개발자들의 실수로 민감한 정보가 퍼블릭 저장소에 올라가는 경우가 빈번하다.
- Github, Gitlab, Bitbucket: 타겟 기업의 도메인이나 전용 API 주소를 검색어로 넣어 하드코딩된 AWS API Key, 데이터베이스 비밀번호, 내부망 IP 등을 찾아낸다.
- Git Dorking:
“example.com” “password”혹은“example.com” “API_KEY”와 같은 키워드를 Github 검색에 활용한다.
크리덴셜 및 다크웹(Dark Web) 유출 정보
직원들의 부주의나 과거 타 사이트 해킹으로 인해 이미 외부에 유출된 비밀번호(Credential)를 수집하여 ‘크리덴셜 스터핑(Credential Stuffing)’ 공격에 활용한다. 특히 타겟 기업 임직원이 업무용 계정에 네이버(@naver.com)나 다음(@daum.net) 등 개인 포털 메일을 혼용하다가 다크웹에 유출된 경우가 많은데, 이 유출된 평문 비밀번호 패턴을 추적하여 사내망 접속에 재활용하는 공격이 매우 치명적이다.
- Hunter.io / Clearbit: 타겟 기업이 사용하는 이메일 형식(
이름.성@회사.com등)과 실제 직원들의 이메일 리스트를 대량으로 수집한다. - Dehashed / HaveIBeenPwned: 수집한 이메일 주소를 기반으로, 과거에 유출된 이력이 있는지, 평문 비밀번호가 무엇인지 다크웹 및 덤프 사이트 데이터를 통해 알아낸다.
웨이백 머신(Wayback Machine)과 과거 흔적
현재는 보안 패치로 닫혀있거나 삭제된 페이지라도, 인터넷 아카이브에는 고스란히 남아있을 수 있다.
- Archive.org: 타겟 사이트의 과거 구조를 탐색하여 현재는 링크가 사라졌지만 여전히 접근 가능한 숨겨진 관리자 페이지, 구버전 API 엔드포인트 등을 찾아낸다.
이와 같은 심화 OSINT를 통해 모은 단서들은, 타겟 시스템에 방화벽 알람 하나 울리지 않고도 결정적인 취약점을 찾아내는 레드팀의 강력한 무기가 된다.
댓글 남기기