모든 조사관이 실제로 순서대로 열어봐야 할 15가지 OSINT 도구
요약
효율적인 OSINT 조사를 위해 도구의 목록보다 작업 순서(order of operations)가 중요함을 강조합니다. 데이터 보존부터 파일 메타데이터 분석, 역이미지 검색으로 이어지는 6단계 워크플로우를 제시합니다.
핵심 포인트
- 도구의 개수보다 체계적인 조사 순서가 효율성을 결정함
- 조사 시작 전 주장을 정의하고 원본 데이터를 반드시 보존해야 함
- ExifTool을 활용해 파일 내부 메타데이터를 최우선으로 확인
- Google Lens, TinEye, Yandex 등 목적에 맞는 이미지 검색 도구 활용
더 많은 OSINT (Open Source Intelligence, 공개 출처 정보) 도구를 설치한다고 해서 조사가 해결되는 경우는 드뭅니다. 잘못된 단계에서 적절하지 않은 도구를 여는 것은 여전히 오후 시간을 낭비하게 만들 수 있습니다.
제가 가장 자주 보는 실수는 가능한 한 가장 광범위한 조사를 시작하는 것입니다. 누군가 사용자 이름(username)을 가지고 있으면 세 개의 사용자 이름 열거기(username enumerator)를 실행합니다. 누군가 도메인(domain)을 가지고 있으면 사이트 자체를 확인하기 전에 Shodan을 엽니다. 누군가 사진을 가지고 있으면 모든 역이미지 검색 엔진(reverse-image engine)에 업로드하고 결과가 없으면 막다른 길로 취급합니다.
유용한 단위는 도구의 목록이 아닙니다. 그것은 작업 순서(order of operations)입니다. 각 단계는 질문에 저렴하게 답하거나 다음 단계를 위한 더 나은 입력값(input)을 생성해야 합니다.
목록보다 순서가 더 중요합니다
저의 기본 워크플로우(workflow)는 6단계로 구성됩니다:
- 소스를 보존하고 주장(claim)을 정의합니다.
- 파일 내부에 무엇이 남아 있는지 읽습니다.
- 해당 아티팩트(artifact)가 이미 게시되었는지 확인합니다.
- 매칭에 실패할 경우 가시적인 증거를 읽습니다.
- 사용자 이름, 이메일, 도메인 및 인프라(infrastructure)로 피벗(pivot)합니다.
- 증거 체인(chain of evidence)을 보존합니다.
이 단계들은 의도적으로 비대칭적입니다. 사진은 4단계에서 멈출 수 있습니다. 도메인 조사는 5단계에서 시작될 수 있습니다. Maltego는 그래프로 그릴 수 있을 만큼 충분한 엔티티(entity)를 확보한 후에만 유용합니다. Hunchly는 그것이 필요하다고 생각하기 전에 사용하는 것이 유용합니다.
0단계: 검색하기 전에 보존하십시오
도구를 열기 전에, 당신이 입증하려는 주장을 적으십시오. “이것은 리스본처럼 보인다”는 “이 이미지는 Rua da Conceição에서 촬영되었다”라는 주장과 같지 않습니다. 두 번째 주장은 거리 수준의 증거와 훨씬 더 강력한 체인을 요구합니다.
원본 파일을 저장하고, 그것이 어디에서 왔는지 기록하며, 사건이 중요하다면 해시(hash)를 생성하고, 복사본으로 작업하십시오. 공개적으로 접근 가능한 데이터라고 해서 자동으로 게시하기에 적절한 것은 아닙니다. 아무도 감사(audit)할 수 없는 스크린샷 더미를 수집하기 전에, 누가 결론을 검토할 것인지 결정하십시오.
1단계: 파일에 먼저 물어보십시오
1. ExifTool은 이미지 및 미디어 파일에 대해 가장 먼저 사용되어야 합니다. 만약 GPS 정보가 남아 있다면, 이는 추론이 아닌 파일 증거를 확보한 것입니다. 카메라 모델, 촬영 시간, 편집 소프트웨어, 그리고 임베디드 썸네일(embedded thumbnails) 또한 해당 파일이 어떻게 이동했는지 설명해 줄 수 있습니다.
한계점: 스크린샷에는 카메라 GPS가 포함되지 않으며, 대부분의 소셜 플랫폼은 메타데이터를 삭제합니다. "EXIF 정보 없음"이 사진이 가짜라거나 추적 불가능하다는 증거는 아닙니다. 단지 하나의 경로가 차단되었음을 의미할 뿐입니다.
저는 어떤 JPEG 또는 PNG 파일에 여전히 좌표가 포함되어 있는지 확인해야 하는 일괄 분류 (batch triage) 작업 시, 작은 오프라인 파서 (offline parser)를 사용하기도 합니다. 중요한 속성은 로컬 실행 (local execution)입니다. 메타데이터 질문에 답하기 위해 소스 이미지가 기기를 떠나서는 안 됩니다.
2단계: 이미 존재하는지 확인하십시오
2. Google Lens, 3. TinEye, 그리고 4. Yandex Images는 기능이 겹치지만, 동일한 질문에 답하지는 않습니다.
Lens는 사물, 텍스트, 그리고 시각적으로 유사한 장면에 강점이 있습니다. TinEye는 정확한 복사본, 편집본, 그리고 게시 이력을 찾는 데 더 적합합니다. Yandex는 다른 도구들이 놓치는 지역적 일치 항목을 찾아낼 수 있습니다. 유용한 역검색 (reverse-search) 단계는 이 세 가지를 모두 확인하고, 크롭 (crop) 영역을 변경하며, 전체 프레임과 특징적인 세부 사항을 모두 검색하는 것입니다.
한계점: 결과가 0개인 화면을 보면 끝이라고 느껴질 수 있습니다. 하지만 그렇지 않습니다. 그것은 엔진이 자신의 인덱스 (index) 내에서 일치하는 항목을 찾지 못했다는 뜻일 뿐입니다. 해당 이미지가 진짜인지, 새로운 것인지, 비공개인지, 크롭되었는지, 혹은 단순히 인덱싱이 제대로 되지 않았는지에 대해서는 아무것도 말해주지 않습니다.
운영 참고 사항: 모든 업로드는 제3자에게 이미지를 제공하는 행위입니다. 이는 퍼블릭 도메인 (public-domain) 사건에서는 허용될 수 있지만, 소스 자료 (source material)의 경우에는 허용되지 않을 수 있습니다.
3단계: 프레임을 읽으십시오
**5. 시각적 단서 지리 위치 식별 (Visual-clue geolocation)**은 역검색이 끝나는 지점에서 시작됩니다. 복사본을 매칭하는 대신, 눈에 보이는 것들로부터 작업을 수행합니다: 문자 및 표지판, 도로 표시, 교통 방향, 번호판 모양, 건축물, 지형, 식생, 유틸리티, 날씨, 그리고 그림자 등이 대상입니다.
이 단계는 모든 단서를 관찰 (observation)과 추론 (inference)으로 분리해야 하기 때문에 속도가 더 느립니다. “연석이 검은색과 흰색으로 칠해져 있다”는 관찰입니다. “이곳은 아마도 싱가포르일 것이다”는 추론입니다. 이 둘을 섞으면 확신에 찬 이야기를 쓰기는 쉬워지지만, 그것을 반증 (falsify)하기는 어려워집니다.
실질적인 규칙은 세 가지의 독립적인 앵커 (anchors)입니다. 대중교통 로고, 언어 파편, 그리고 도로 디자인은 서로를 뒷받침할 수 있습니다. 하지만 하나의 표지판에서 유도된 세 가지 세부 사항은 그렇지 못합니다.
메타데이터 (metadata)가 사라지고 이미지가 인덱싱 (indexed)된 적도 없다면, 저는 추론 과정을 보여주는 사진 위치 찾기 도구를 후보 생성기로 사용한 다음, 제안된 장소를 독립적으로 검증합니다. 핀 (pin)보다는 단서 목록이 더 중요합니다.
이 단계가 멈추는 지점: 일반적인 실내, 평범한 숲, 과도한 필터, 야간 촬영, 그리고 읽을 수 있는 텍스트나 인프라 (infrastructure)가 없는 프레임입니다. “증거 불충분”은 유효한 결과입니다.
4단계: 주변 정체성으로부터의 피벗 (pivot)
사건에 사용자 이름 (username)이나 이메일이 포함되어 있다면, 다음 다섯 가지 도구가 차례를 얻습니다.
6. Sherlock는 빠른 사용자 이름 검색을 수행합니다. 7. Maigret는 더 넓은 범위를 탐색합니다. 8. WhatsMyName은 커버리지 (coverage)보다 신호 품질 (signal quality)이 더 중요할 때 유용합니다. 9. Holehe는 이메일이 지원되는 서비스에 등록되어 있는지 확인합니다. 10. Have I Been Pwned는 데이터 유출 노출 맥락을 제공합니다.
모든 사용자 이름 검색 결과는 확정된 사실 (finding)이 아니라 단서 (lead)로 취급하십시오. HTTP 200을 반환하는 사이트가 해당 계정이 대상의 소유임을 증명하지는 않습니다. 페이지를 열고 프로필 세부 정보, 날짜, 아바타 (avatars), 글쓰기 스타일, 그리고 연결된 정체성들을 비교하십시오.
이 단계는 조사가 노출될 가능성이 가장 높은 단계이기도 합니다. 사용자 이름 및 이메일 도구는 라이브 서비스에 쿼리 (query)를 보낼 수 있습니다. 일부 서비스는 요청을 로그 (log)에 남기거나, 속도 제한 (rate-limit)을 걸거나, 계정 소유자에게 알림을 보냅니다.
5단계: 인프라가 존재하는 경우에만 인프라 조사
11. theHarvester는 공개 이메일, 서브도메인 (subdomains), 그리고 호스트 (hosts)를 수집합니다. 12. Shodan은 노출된 서비스들을 인덱싱합니다. 13. Censys는 인증서 (certificates) 및 자산 피벗 (asset pivots)에 강력합니다.
이 도구들은 사건에 회사, 도메인 (domain), IP 주소 (IP address), 또는 인증서 (certificate)가 포함되어 있을 때 매우 유용합니다. 입력값이 오직 거리 사진뿐이라면 이 도구들은 무용지물입니다. 단순히 도구들이 익숙하다는 이유만으로 인프라 단계 (infrastructure stage)를 구축하지 마십시오.
함정: 방대한 결과 세트가 마치 진전이 있는 것처럼 보일 수 있습니다. 대부분의 작업은 여전히 엔티티 해상 (entity resolution), 범위 확인 (scope checking), 그리고 오래된 인프라 (stale infrastructure)를 제거하는 과정입니다.
6단계: 사건을 하나로 묶기
14. Maltego CE는 관계가 더 이상 몇 개의 브라우저 탭 안에 담기지 않을 때 가치를 발휘합니다. 약한 연결을 권위 있는 것처럼 보이게 만드는 용도가 아니라, 엔티티 (entities)와 출처 (provenance)를 표현하는 데 사용하십시오.
15. Hunchly는 조사 과정 중에 페이지를 캡처하고 타임스탬프 (timestamp)를 기록합니다. 이 점 때문에 이 목록에서 가장 화려하지 않은 도구이면서도 가장 중요한 도구 중 하나입니다. 페이지는 변합니다. 계정은 사라집니다. 나중에 재구성할 수 없는 결론은 증거가 아니라 단순한 메모일 뿐입니다.
간략한 비교
| 도구 | 최적의 입력값 | 반환 결과 | 일반적인 실패 사례 |
|---|---|---|---|
| ExifTool | 원본 파일 | 메타데이터 (Metadata) 및 GPS | 데이터 제거 후 아무것도 남지 않음 |
| ... |
결과를 방어 가능하게 유지하는 세 가지 습관
첫째, 해석하기 전에 관찰 내용을 기록하십시오. 장소를 언급하지 않고 원본 단서를 인용할 수 없다면, 당신은 아마도 추론 (inference)을 작성했을 가능성이 높습니다.
둘째, 반증 (falsification)을 시도하십시오. 유력한 후보를 선정하고, 존재해야 하지만 없는 무언가를 찾아보십시오. 파괴하려는 시도에서 살아남은 후보는 단순히 확인하려고만 했던 후보보다 더 강력합니다.
셋째, 사용한 도구와 버전을 기록하십시오. 검색 인덱스 (search indexes), 모델 (models), 그리고 데이터 세트 (datasets)는 변합니다. "Google에서 찾았다"는 편집자, 사고 검토 (incident review), 또는 법원 제출용으로는 충분히 재현 가능하지 않습니다.
FAQ
무료 OSINT 도구만으로 충분한가요?
워크플로우가 좁은 범위라면 보통은 충분합니다. 유료 제품은 커버리지 (coverage), 속도, 협업, 또는 독점적인 데이터 세트 (proprietary datasets)를 구매하는 것입니다. 유료 제품을 쓴다고 해서 신원과 출처 (provenance)를 검증해야 하는 필요성이 사라지는 것은 아닙니다.
AI 지리 위치 추적 (geolocation) 도구는 얼마나 정확한가요?
유용한 전 세계적 수치는 존재하지 않습니다. 정확도는 데이터셋 (dataset), 지리적 위치 (geography), 이미지 품질 (image quality), 그리고 해당 주장이 국가, 도시, 또는 거리 수준 중 어디에 해당하는지에 따라 달라집니다. 해당 수치가 무엇을 기준으로 측정되었는지 질문하고, 모든 후보를 하나의 가설 (hypothesis)로 취급하십시오.
OSINT 도구는 대상에게 알림을 보내나요?
그럴 수도 있습니다. 수동적 아카이브 (passive archives) 및 로컬 메타데이터 (local metadata) 도구들은 일반적으로 그렇지 않습니다. 사용자 이름 검색 (username sweeps), 이메일 등록 확인 (email-registration checks), 그리고 대상의 인프라 (infrastructure)에 접촉하는 모든 행위는 로그 (logs)에 남거나 보안 통제 장치를 트리거 (trigger)할 수 있습니다.
도구 모음 (toolkit)을 갖추는 것은 쉬운 부분입니다. 어려운 부분은 각 도구가 어떤 질문에 답할 수 있는지, 언제 사용할 차례인지, 그리고 어떤 증거가 당신이 가장 선호하는 후보가 틀렸음을 증명할 수 있는지를 아는 것입니다.
공지: 저는 위에 링크된 이미지 지리 위치 추적 (image-geolocation) 도구의 개발자입니다. 다른 도구들은 워크플로우 (workflow)의 서로 다른 단계에 위치하기 때문에 포함되었으며, 제휴 링크 (affiliate links)는 포함되어 있지 않습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기