OSINT 정보수집: 이메일 주소 찾기와 구글 도킹 완벽 가이드 1

 

 

OSINT와 정보수집의 중요성

OSINT(Open Source Intelligence)는 공개적으로 접근 가능한 정보를 체계적으로 수집하고 분석하는 기법입니다. 현대의 사이버보안 분야에서 OSINT는 침투 테스트, 보안 평가, 그리고 위협 인텔리전스의 핵심 요소로 자리잡고 있습니다.

이 글에서는 OSINT 과정 중 이메일 주소 수집, 구글 도킹(Google Dorking), 그리고 데이터 침해 확인 방법에 대해 상세히 알아보겠습니다.

1. OSINT 과정의 시작: 온사이트(On-site) 정보수집

기본 접근법

OSINT 과정은 직접 웹을 탐색하면서 대상과 관련된 정보를 찾는 것으로 시작됩니다.

출발점:

  • 기업명
  • 공식 웹사이트 URL
  • 기본적인 검색 결과

하지만 수작업만으로는 한계가 있기 때문에, 다양한 자동화 도구를 활용해야 합니다.

2. 이메일 주소 수집: goog-mail.py 활용법

스크립트 다운로드

칼리 리눅스에서 다음 명령어로 스크립트를 다운로드할 수 있습니다:

wget --user=student --password=student https://www.hackerhousebook.com/files/goog-mail.py

핵심 코드 분석

다운받은 파일의 핵심 코드를 살펴보면:

try:
    while page_counter < 50:
        results = 'http://groups.google.com/groups?q='+str(domain_name)+'&hl'
        request = urllib2.Request(results)
        request.add_header('User-Agent','Mozilla/4.0 (compatible; MSIE 5.5;')
        opener = urllib2.build_opener()
        text = opener.open(request).read()
        emails = (re.findall('([\w\.\-]+@'+domain_name+')',StripTags(text)))
        for email in emails:
            d[email]=1
            uniq_emails=d.keys()
        page_counter = page_counter +10
except IOError:
    print "Cannot connect to Google Groups."

작동 원리

  1. 웹 요청 생성: 주어진 도메인명을 검색하기 위한 요청을 google.com에 전송
  2. 검색 결과 처리: 구글의 검색 결과에서 이메일 주소 패턴을 찾아 추출
  3. 중복 제거: 발견된 이메일 주소들의 중복을 제거하여 정리

⚠️ 중요 참고사항: 이 스크립트는 2021년 작성되어 현재 구글의 웹 구조 변경으로 인해 작동하지 않습니다. 하지만 작동 원리를 이해하는 것이 중요합니다.

보안상 고려사항

수집된 이메일 주소는 다음과 같은 공격의 대상이 될 수 있습니다:

  • 사회공학 공격(Social Engineering)
  • 스피어 피싱(Spear Phishing)

3. 구글 도킹(Google Dorking): 고급 검색 기법

구글 도킹이란?

구글은 단순한 웹페이지 데이터베이스가 아닙니다. 검색어를 교묘하게 설정하여 구글이 민감한 정보를 노출하게 하는 기법을 구글 도킹 또는 구글 해킹이라고 합니다.

실전 예시

취약한 사이트와 데이터를 찾는 방법은 의외로 간단합니다:

inurl:/etc/passwd root:x:0:0:root:/root:/bin/bash

이 검색어는:

  • inurl:/etc/passwd: URL에 /etc/passwd가 포함된 웹페이지만 검색
  • 설정 미숙으로 passwd 파일이 노출된 리눅스/유닉스 호스트를 발견

4. 구글 해킹 데이터베이스(GHDB)

GHDB란?

Google Hacking Database는 구글 도킹에 사용할 수 있는 다양한 검색 쿼리들을 모아놓은 데이터베이스입니다.

실용적인 예시

site:github.com "BEGIN OPENSSH PRIVATE KEY"

이 검색어는:

  • GitHub에 실수로 업로드된 OpenSSH 개인키를 찾습니다
  • 이런 키가 노출되면 누구든지 해당 서버에 접속 가능해집니다

확장된 검색 범위

구글에만 의존할 필요는 없습니다:

  • 다른 검색 포털 활용
  • 고객사 홈페이지 직접 검색
  • 전문 검색 엔진 활용

5. Have I Been Pwned: 데이터 침해 확인

서비스 소개

Have I Been Pwned데이터 침해 사건으로 유출된 개인정보를 확인할 수 있는 서비스입니다.

주요 기능

  • 이메일 주소 검색: 해당 주소가 데이터 침해에 포함되었는지 확인
  • 침해 사건 정보: 어떤 사이트에서 언제 침해가 발생했는지 상세 정보 제공
  • 무료 서비스: 누구나 자신의 정보를 확인 가능

인간의 위험한 습관

가장 큰 위험은 동일한 ID와 패스워드를 여러 사이트에서 재사용하는 인간의 특성에 있습니다.

대응 방안:

  1. 노출된 패스워드 즉시 변경
  2. 모든 사이트에서 동일 패스워드 변경
  3. 고유한 패스워드 사용 원칙 적용

API 활용

대량의 이메일 주소를 확인해야 할 경우:

  • HIBP API 활용
  • 회사 임직원 정보 대량 검증
  • 자동화된 모니터링 구축

6. 윤리적 고려사항과 법적 주의사항

합법적 사용 원칙

  • 허가된 범위 내에서만 활용
  • 보안 테스팅 목적으로 제한
  • 개인정보 보호법 준수

금지 사항

  • 무단 침입 시도
  • 개인정보 악용
  • 불법적인 정보 수집

결론: OSINT의 책임감 있는 활용

OSINT 기법들은 보안 전문가에게는 강력한 도구이지만, 동시에 큰 책임이 따릅니다. 이러한 기법들을:

긍정적 활용:

  • 보안 취약점 발견
  • 침투 테스트 수행
  • 위협 인텔리전스 수집

주의해야 할 점:

  • 법적 경계 준수
  • 윤리적 기준 유지
  • 개인정보 보호

미래 전망: OSINT 기술은 계속 발전하고 있으며, 보안 전문가들은 항상 최신 동향을 파악하고 윤리적 기준을 유지하며 이러한 도구들을 활용해야 합니다.


면책 조항: 이 글에서 소개된 기법들은 교육 및 합법적인 보안 테스팅 목적으로만 사용되어야 합니다. 불법적인 활동에 사용할 경우 법적 책임이 따를 수 있습니다.