기술 가이드

WikiLeaks: 새로운 ‘Grasshopper’ 유출 — CIA가 사용한 Windows 해킹 도구

5 min read 보안 업데이트됨 19 Oct 2025
WikiLeaks ‘Grasshopper’ 유출 — CIA의 Windows 해킹 도구
WikiLeaks ‘Grasshopper’ 유출 — CIA의 Windows 해킹 도구

CIA가 유출한 문서 이미지: Grasshopper 프레임워크 관련 스캔 페이지

개요

위키리크스는 Vault7 시리즈의 일환으로 CIA에 속한 것으로 추정되는 문서 27건을 추가 공개했다. 이 문서 집합 가운데 핵심은 ‘Grasshopper’라는 명칭의 커맨드라인 인터페이스(CLI) 기반 프레임워크로, 마이크로소프트 윈도우 운영체제를 표적 삼아 맞춤형 악성코드 페이로드(payload)를 조립·배포하도록 설계된 도구로 보인다.

간단 정의: Grasshopper — CIA가 개발한 것으로 보이는, 윈도우용 맞춤형 악성 설치파일을 조립하는 CLI 프레임워크.

주요 내용

  • Grasshopper는 사용자(요원)가 대상 운영체제와 설치된 안티바이러스 제품에 따라 자동으로 적합한 악성코드 구성요소를 선택해 조립한다.
  • 프레임워크는 여러 설치자(installer) 구성 요소를 연속적으로 호출해 페이로드를 조작하고, 최종적으로 지속성(persistence)을 확보하는 설치 파일을 만들도록 설계되었다.

“A Grasshopper executable contains one or more installers. An installer is a stack of one or more installer components. Grasshopper invokes each component of the stack in series to operate on a payload. The ultimate purpose of an installer is to persist a payload.”
— 문서 번역: “Grasshopper 실행 파일은 하나 이상 설치자를 포함한다. 설치자는 하나 이상 설치자 구성요소의 스택이다. Grasshopper는 스택의 각 구성요소를 순서대로 호출하여 페이로드를 조작한다. 설치자의 궁극적 목적은 페이로드의 지속성을 확보하는 것이다.”

위키리크스는 이 도구가 세계적 수준의 안티바이러스 제품들에도 탐지되지 않도록 설계됐다고 주장한다. 또한 문서들은 해당 프레임워크가 사용하기 쉽고, 감염된 윈도우 시스템에서 장기적으로 머무를 수 있도록 고안됐다고 설명한다.

“Grasshopper allows tools to be installed using a variety of persistence mechanisms and modified using a variety of extensions (like encryption).”
— 문서 번역: “Grasshopper는 다양한 지속성 메커니즘을 사용해 도구를 설치하고, 암호화 같은 다양한 확장으로 수정할 수 있다.”

기술적 상세

  • 설치자(installer)와 구성요소: Grasshopper 실행파일은 여러 설치자(Installer)를 포함할 수 있다. 각 설치자는 여러 구성요소의 스택으로 구성된다. 구성요소는 순차적으로 실행되어 페이로드를 암호화, 압축, 위장, 또는 설치 위치 변경 등 다양한 작업을 수행한다.
  • 지속성 메커니즘: 문서에 따르면 다양한 지속성 방법을 지원하며, 그중 하나는 ‘Stolen Goods’라는 이름으로 불린다. 이 메커니즘은 전 세계 사이버 범죄자들이 개발한 악성 코드의 기법을 채택·수정한 것이다.
  • 코드 재사용 및 변형: 문서에는 러시아계 해킹 그룹이 만든 것으로 알려진 ‘Carberp’ 코드를 차용해 대폭 수정했다는 설명이 있다. 원본 코드 중 극히 일부만 수정 없이 남아 있다고 기록되어 있다.

“The persistence method and parts of the installer were taken and modified to fit our needs. A vast majority of the original Carberp code that was used has been heavily modified. Very few pieces of the original code exist unmodified.”
— 문서 번역: “지속성 방법과 일부 설치자 부품은 우리의 필요에 맞게 가져와 수정했다. 사용된 원본 Carberp 코드의 대부분은 대대적으로 수정되었으며, 원본 코드가 수정되지 않은 채 남아 있는 부분은 극히 적다.”

공개된 시기와 연속된 배치들

위키리크스는 이전에도 여러 차례 CIA 관련 문서와 코드 베이스를 공개했다. 핵심 배치들:

  • Year Zero: CIA의 하드웨어·소프트웨어 공격 기법 일부를 드러낸 초기 배치.
  • Dark Matter: iPhone과 Mac을 표적화한 익스플로잇과 해킹 기법을 다룸.
  • Marble: CIA가 악성코드 기원을 은폐하기 위해 개발한 난독화/패커 프레임워크의 일부 소스 코드 공개.

위키리크스는 Grasshopper 도구들이 2012년부터 2015년 사이에 사용되었을 가능성이 있다고 명시하지만, 이 도구가 실제로 어떻게, 어느 정도로 사용됐는지는 문서만으로는 불명확하다.

보안 영향 및 권장 조치

중요: 이 문건은 공격자가 사용하는 설계와 기법을 이해하는 데 도움이 된다. 공개된 내용은 방어자의 탐지·대응 능력을 개선하는 근거가 된다.

권장 조치:

  • 엔드포인트 탐지 강화: 안티바이러스 서명을 넘는 행위 기반 탐지(behavioral EDR)를 도입하세요.
  • 파일 무결성 검사: 중요한 시스템의 실행 파일과 설정 파일에 대해 무결성 모니터링을 설정하세요.
  • 취약점 관리: 운영체제와 소프트웨어의 취약점 패치 주기를 단축하세요.
  • 의심스러운 설치자 검사: 인바운드 설치 프로그램의 서명, 출처, 행위(예: 레지스트리 수정, 서비스 설치)를 검사하세요.
  • 포렌식 준비: 메모리 덤프, 네트워크 흐름 기록, 이벤트 로그 보존 정책을 수립하세요.

대안적 관점과 한계

  • 탐지 한계: 문서의 존재 자체가 특정 구현체가 항상 탐지되지 않는다는 보장을 주진 않는다. 공격자는 여러 버전과 변형을 만들 수 있다.
  • 오용 가능성: 공개 자료는 방어에 유용하지만, 악의적 이용자에게도 기술적 힌트를 제공할 수 있다.
  • 불확실성: 문서가 진짜인지, 완전한 맥락을 담고 있는지는 추가 검증이 필요하다.

역할별 체크리스트

  • IT 관리자:

    • 엔드포인트 보안 솔루션의 최신 규칙 적용
    • 소프트웨어 화이트리스트 적용 범위 검토
    • 관리자 계정 사용 로그 감사
  • 보안 운영팀(SOC):

    • EDR 경보 룰에 ‘설치자 스택‘과 유사 행위 패턴 추가
    • 의심 파일의 샌드박스 분석 프로세스 강화
    • 메모리·네트워크 포렌식 수집 기준 마련
  • 정책·컴플라이언스 담당자:

    • 내부 보안 정책에 지속성 기법(예: 서비스, 스케줄러, 드라이버) 모니터링 명시
    • 제3자 소프트웨어 공급망 검증 절차 점검

간단 용어집

  • 페이로드: 공격자가 의도한 악성 기능을 수행하는 코드 또는 데이터.
  • 지속성(persistence): 시스템 재부팅 등 이후에도 악성코드가 살아남아 실행되도록 하는 기법.
  • 설치자(installer): 시스템에 악성코드를 설치하거나 지속성을 확보하는 실행 단위.
  • Carberp: 과거 발견된 금융정보 탈취형 악성코드의 이름(문서에서 재사용된 코드 출처로 언급됨).

사실상 박스: 핵심 포인트

  • 공개 문서 건수: 27건(위키리크스 발표 기준).
  • 추정 사용 기간: 문서상 2012–2015 사이에 사용된 것으로 표기됨.
  • 주요 기능: 맞춤형 악성 설치자 조립, 다양한 지속성 메커니즘, 확장(예: 암호화) 지원.

요약

위키리크스가 공개한 Grasshopper 문서는 고도로 모듈화된 악성코드 조립·설치 도구의 설계도를 보여준다. 공개 내용은 방어 측면에서 유용한 단서를 제공하지만, 문서 자체만으로 모든 실사용 시나리오를 단정하긴 어렵다. 조직은 이를 계기로 엔드포인트 방어와 포렌식 준비를 강화해야 한다.

중요: 문서에 담긴 기법은 이미 알려진 악성코드 기법과 겹치는 부분이 많다. 따라서 기존의 모범사례(패치·로그 보존·EDR·화이트리스트)를 재점검하는 것이 가장 현실적인 우선순위다.

요약 끝.

공유하기: X/Twitter Facebook LinkedIn Telegram
저자
편집

유사한 자료

Windows 0xc000001d 오류 원인과 해결 가이드
Windows 오류

Windows 0xc000001d 오류 원인과 해결 가이드

macOS '최근 위치' 목록 삭제 및 제한 방법
macOS 팁

macOS '최근 위치' 목록 삭제 및 제한 방법

Windows 10 오류 0x80070057·0xa0000400 및 Cortana 복구
Windows

Windows 10 오류 0x80070057·0xa0000400 및 Cortana 복구

문제 있는 Windows 업데이트 안전하게 제거하는 방법
윈도우

문제 있는 Windows 업데이트 안전하게 제거하는 방법

브라우저 탭 정리 가이드 — Firefox·Chrome
브라우저 생산성

브라우저 탭 정리 가이드 — Firefox·Chrome

FOUND.000 폴더 완전 가이드
Windows

FOUND.000 폴더 완전 가이드