최근 인터넷 사용이 급증함에 따라 사용자가 인터넷상에서 접할 수 있는 정보의 양 또한 급증하고 있다. 이러한 정보들은 사용자에게 여러 가지 목적으로 편리함과 유익함을 제공할 수 있지만 방대한 정보들이 무분별하게 제공될 경우 악의적인 의도를 품은 공격자에 의한 침해 사고로 이어질 가능성이 있다.


이처럼 인터넷상에 놓여있는 방대한 정보들을 사용자의 목적에 따라 필요 정보들만 모으는 행위를 정보 수집(Information Gathering)이라고 한다. 정보 수집은 대상의 URL만으로 도메인 네임(DNS), 호스트 네임, IP 주소, 사용자 이름, 환경 등을 알아내는 것이며 정의된 규칙이나 순서가 없으므로 사용자의 목적에 따라 다르게 정의될 수 있다.


일반적으로 모의 침투 프레임워크에서도 가장 중요한 단계 중 하나가 바로 정보 수집 단계이다. 정보 수집 단계는 정찰(Reconnaissance)과 스캐닝(Scanning) 등에 의해 이루어지며, 기술적인 요소는 많이 포함되지 않지만 가장 중요한 단계 중 하나이기 때문에 많은 시간이 투자될수록 다음 접근이 수월해진다. 정보를 수집할 때는 외부에 공개된 공격 대상에 대한 정보를 최대한 많이 수집하는 것이 좋다. 사소한 정보가 나중에 중요한 키(Key)가 될 수도 있기 때문이다.


반대로 이러한 정보들을 사용자에게 제공하는 담당자의 경우 불필요하고 민감한 정보들의 노출을 최소화하여 사전에 침해 사고를 예방해야 한다. 하지만 대다수의 경우 검색 엔진에 수집된 웹 페이지가 실제 웹 사이트에서 삭제가 되었더라도 캐시(Cache)에 저장된 페이지가 그대로 사용자에게 노출되고 있는 문제점이 존재한다. 이러한 문제점을 해결하기 위해서는 검색 엔진에 노출되고 있는 문서들을 파악해 불필요한 노출을 최소화하는 것이 좋다. 이번에 소개할 도구는 이처럼 민감한 정보들의 노출을 최소화하기 위해 사용되는 정보 수집 도구 중 하나인 ‘FOCA(Fingerprinting Organizations with Collected Archives)이다.


[그림 1] FOCA

다운로드 홈페이지 (https://www.elevenpaths.com/labstools/foca/)

FOCA는 스페인 기업의 Eleven Paths사에서 제작된 도구이며, 버전은 PRO 버전과 FREE 버전이 있다. PRO 버전은 상용 버전이었으나 현재는 모두 제작사의 홈페이지를 통해 다운로드 후 무료로 사용할 수 있다.


FOCA는 대상의 URL 정보만으로 서브도메인, 관련된 페이지나 정보를 자동으로 수집하고, 사용자가 수집된 정보들을 한눈에 파악하기 쉽도록 정리해준다. FOCA의 기본적인 동작 원리는 입력된 URL 정보로 검색엔진에서 사용하는 연산자를 이용하여 서브도메인을 탐색하고 크롤링(Crawling)을 통해 페이지의 정보나 문서 등 다양한 파일을 수집하여 메타데이터를 분석한다. 또한, FOCA는 포렌식(Forensics) 도구에 필수적인 파일로부터 메타데이터를 추출하는 기능과 추출된 메타데이터를 이용한 타임라인 생성 기능을 제공하고 있어 포렌식 도구로 사용하기에도 적절하다.


FOCA는 프로젝트 단위로 분류하여 동작하며 검색을 시작하기 위해서는 제일 먼저 새로운 프로젝트를 생성해야 한다. 아래[그림 2]와 같이 프로젝트명, 웹 사이트 도메인, 문서를 저장할 경로, 기타 메모 등을 입력하고 [Create] 버튼을 눌러 새로운 프로젝트를 생성할 수 있다. 프로젝트를 새로 생성하게 되면 ‘Project saved successfully!’ 메시지의 알림 창이 나타나며, 이는 성공적으로 프로젝트를 생성하였음을 뜻한다.


[그림 2] 새로운 Project 생성


대상 URL 정보를 입력하고 프로젝트를 새로 생성한 뒤 Search를 시작할 수 있다. [그림 3]과 같이 왼쪽 트리 메뉴 상단에 [Network] 탭으로 이동하여 적절한 옵션을 설정한 뒤 적용 후에 [Start] 버튼을 누르게 되면 정상적으로 검색이 시작된다. 옵션 설정 탭에서는 Web Search(Google, Bing), DNS Search, Dictionary Search, IP Bing, PTR Scan, Shodan & Robtex 등의 검색 옵션을 지정할 수 있다. 기본적으로 옵션은 모두 체크되어 있으며, 체크를 해제해 필요한 정보만을 획득하여 시간을 단축할 수도 있다. 본 테스트에서는 대상 URL을 구글(www.google.com)로 설정하여 진행하였다.


 

[그림 3] Search Option 설정 및 시작


검색 시작 버튼을 클릭해 검색을 시작하게 되면 왼쪽 트리 메뉴에 [Network], [Domains], [Roles], [Vulnerabilities], [Metadata] 등의 정보를 확인할 수 있다. 검색이 정상적으로 진행되고 있는 경우 각 메뉴에 [+] 표시가 나타나며, 해당 버튼을 클릭해 수집된 정보들을 확인할 수 있다. 메뉴에 따라 여러 가지 유용한 정보들이 수집되며 각 메뉴에 대한 설명은 아래[ 1]와 같다.


메뉴

설명

Network

대상 도메인에 대한 각 서버의 정보를 담고 있음

Domains

대상 도메인의 서브 도메인 정보를 담고 있음

Roles

Active Directory, DNS, Finger, Firewall, FTP, HTTP, HTTPS, Instant Messaging, IPS, Kerberos, LDAP, LoadBalancer, Mail, Proxy, Remote Desktop, SSH, Telnet, VPN, VoIP, WAF, Whois 등 사용 중인 서비스에 대한 정보를 담고 있음.

Vulnerabilities

Backups, Directory Listing, DNS Active Cache, DS_Store, GHDB, PHP Code Execution, Insecure Methods, IIS Short Name, Juicy files, Multiple choices, SQLi, Svn, Listing, Leaks, Proxy, Users, Zone Transfer, Heart Bleed 등 존재하는 취약점에 대한 정보를 담고 있음

Metadata

수집된 파일(Documents)을 확인할 수 있으며 Users, Folders, Printers, Software, Emails, OS, Passwords, Servers 등의 생성된 Metadata 정보를 담고 있음

       [1] FOCA 트리 메뉴 설명

 

 

[그림 4] 대상 웹 사이트에 포함되는 문서 수집 결과


대상에 대한 파일 검색이 완료된 이후에는 검색에서 수집된 파일들을 직접 다운로드할 수 있다. 이를 통해 기업의 미관리 자산이나 기밀정보 등이 유출될 수 있으며, 개인의 경우 개인 정보 또는 공개하고 싶지 않은 정보들이 외부로 노출되는 상황이 발생할 수 있다.



이렇듯 외부에 공개되는 정보들에 대해서는 항상 신경을 써야 한다. 아무런 의심 없이 올린 정보들이 타인에 의해 수집되고 있을 가능성도 배제할 수 없다. 웹 관리자뿐만 아니라 정보(문서)를 업로드하는 업로더 또한 정보들이 외부로 새어 나가고 있지 않은지를 확인하여 악의적인 의도를 가지고 정보를 수집하는 공격자로부터 중요 정보들을 지켜내야 할 것이다.

블로그 이미지

Diano.

http://www.diano.kr / 이사하는중 /

,