메타스플로잇(Metasploit)은 시스템, 네트워크, 애플리케이션의 보안 취약점을 발견하고, 이를 실제로 공격(Exploit)하여 보안 위협을 검증하는 오픈소스 기반의 통합 모의 해킹(Penetration Testing) 프레임워크입니다. 현재 보안 기업인 Rapid7에서 유지보수하고 있으며, 정보 보안 전문가와 해커 모두가 가장 널리 사용하는 업계 표준 도구 중 하나입니다.
단순히 취약점이 "존재할 수 있다"고 알려주는 취약점 스캐너(예: Nessus)와 달리, 메타스플로잇은 해당 취약점을 통해 실제 시스템 권한을 탈취할 수 있는지(오탐 여부)를 직접 증명하는 데 목적이 있습니다.
핵심 구성 요소 (Architecture)
메타스플로잇은 다양한 공격 코드를 레고 블록처럼 조립하여 사용할 수 있는 모듈화된 구조를 가집니다.

| 모듈 이름 | 역할 | 비유 및 구체적 설명 |
| Exploit (익스플로잇) | 돌파구 마련 | 대상 시스템의 취약점(버그, 설계 결함 등)을 이용해 시스템 내부로 진입하는 공격 코드입니다. (예: 자물쇠를 부수는 도구) |
| Payload (페이로드) | 목적 달성 | Exploit이 성공하여 시스템에 구멍이 뚫렸을 때, 그 구멍을 통해 대상 시스템에 주입되어 실행되는 악성 코드입니다. (예: 시스템 쉘 획득, 관리자 권한 탈취용 코드) |
| Auxiliary (옥실리어리) | 사전 조사 및 보조 | 직접적인 시스템 장악(Exploit)은 하지 않지만, 정보 수집, 포트 스캐닝, 로그인 무작위 대입(Brute-force), 퍼징(Fuzzing) 등을 수행하는 정보 수집 모듈입니다. |
| Encoder (인코더) | 탐지 우회 | 생성된 Payload를 백신(Anti-Virus)이나 침입 탐지 시스템(IDS/IPS)이 탐지하지 못하도록 코드를 난독화하고 형태를 변형하는 역할을 합니다. |
| Post (포스트) | 후속 작업 | 시스템 장악(Payload 실행) 이후에 대상 시스템에서 수행하는 정보 탈취, 권한 상승, 백도어 설치, 로그 삭제 등의 사후 작업 모듈입니다. |
모의 해킹 수행 절차 (Workflow)
메타스플로잇을 이용한 공격은 일반적으로 다음과 같은 순서로 진행됩니다.
- 정보 수집 (Reconnaissance): Auxiliary 모듈이나 Nmap 등을 연동하여 타겟 시스템의 OS 버전, 열린 포트, 구동 중인 서비스 버전을 확인합니다.
- 취약점 및 Exploit 선택: 수집된 정보를 바탕으로 타겟에 존재하는 취약점을 파악하고, 이에 맞는 Exploit 모듈을 선택합니다. (예: Windows SMB 취약점인 MS17-010 선택)
- Payload 선택 및 설정: 취약점 공격 성공 후 실행할 Payload를 설정합니다. 가장 대표적인 강력한 페이로드로 Meterpreter(메모리 상에서만 동작하여 탐지가 어려운 고급 쉘)가 있습니다.
- 공격 실행 (Exploit): 설정된 타겟 IP(RHOSTS)를 향해 공격 명령(exploit)을 전송합니다.
- 권한 획득 및 후속 조치 (Post-Exploitation): 공격이 성공하면 시스템 제어권(쉘)을 획득하며, 이후 Post 모듈을 이용해 추가적인 정보(해시된 패스워드 등)를 추출하거나 다른 내부 시스템으로 공격을 확장(Pivoting)합니다.
'보안' 카테고리의 다른 글
| [보안점검도구] SpotBugs: 자바(Java) 정적 코드 분석 도구 (0) | 2026.02.22 |
|---|---|
| [보안점검도구] OWASP ZAP (Zed Attack Proxy) (0) | 2026.02.22 |
| [보안점검도구] John the Ripper(존 더 리퍼) (0) | 2026.02.22 |
| [보안점검도구] 트립와이어(Tripwire) (0) | 2026.02.22 |
| [보안점검도구]TCP Wrapper(TCP 래퍼) (0) | 2026.02.22 |