시스템 보안 · 취약점 › H. 방어 회피 · 흔적 삭제 징후 · 23/50편 (전체 373/450)
학습 단계: 보안 기능 무력화·은닉
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
EDR·백신(엔드포인트 보안)은 실시간으로 악성 행위를 탐지·차단합니다. 공격자는 이를 프로세스 종료·서비스 무력화·설정 변조·우회(언훅)해 실시간 방어를 뚫습니다. Linux 환경의 EDR·안티멀웨어(falco·clamav·상용 EDR)가 대상입니다.
EDR·백신 우회·종료 패턴
프로세스 종료: kill -9 <EDR 프로세스>
서비스 무력화: systemctl stop/mask <EDR 서비스>
설정 변조: 제외 경로 추가(공격 파일을 스캔 제외)
커널 모듈 언로드: EDR 커널 모듈 제거(은닉 연계)
우회: LD_PRELOAD·언훅으로 EDR 후킹 무력화
탐지: EDR 프로세스 종료·서비스 변경·제외 경로 추가·모듈 언로드
핵심은 "엔드포인트 보안을 끄거나 피하는 행위"입니다. 특히 스캔 제외 경로 추가는 공격 파일을 보안 제품 눈 밖에 두는 은밀한 수법입니다.
| 우회 | 방식 | 특징 |
|---|---|---|
| 프로세스 종료 | kill -9 | 즉시 무력화 |
| 서비스 무력화 | stop/mask | 재시작 차단 |
| 스캔 제외 | 제외 경로 추가 | 은밀 |
| 모듈 언로드 | rmmod | 커널 수준 |
| 언훅 | LD_PRELOAD | 후킹 회피 |
# EDR·백신 우회·종료 탐지 (분석 방법)
# EDR/백신 프로세스 종료·서비스 변경
sudo ausearch -k sec_disable,proc_exec -i --start recent 2>/dev/null | grep -E 'kill.*(falco|clamd|edr|crowdstrike|sentinel)|systemctl.*(stop|mask).*(falco|clamav|edr)' | tail
# 스캔 제외 경로 추가(설정 변조)
sudo ausearch -k sec_disable -i --start recent 2>/dev/null | grep -iE 'exclude|whitelist|scan' | tail
# EDR 커널 모듈 언로드
sudo ausearch -k proc_exec -i --start recent 2>/dev/null | grep -E 'rmmod|modprobe\s+-r' | tail
$ (EDR 조작) (없음)
$ (스캔 제외) (없음 또는 승인된 제외)
$ (모듈 언로드) (없음)
EDR·백신 프로세스·서비스가 유지되고, 비정상 스캔 제외·모듈 언로드가 없는 상태가 정상입니다.
$ (EDR 조작)
proctitle="kill -9 <falco_pid>" (EDR 프로세스 강제 종료)
proctitle="systemctl mask falco" (재시작 차단)
$ (스캔 제외)
clamd.conf에 ExcludePath /tmp/.payload 추가(공격 파일 제외)
$ (모듈 언로드) rmmod falco (커널 모듈 제거)
EDR·백신 우회 분석입니다(가상의 예시).
[공격 준비] 악성 페이로드 /tmp/.payload 실행 예정
EDR가 실행 시 차단 예상
↓ (우회 선택)
① kill -9 falco (프로세스 종료) — 눈에 띔
② 또는 ExcludePath /tmp 추가 (스캔 제외) — 은밀
③ 또는 systemctl mask (재시작 차단)
↕ (탐지)
[중앙 EDR 콘솔]
· 에이전트 하트비트 끊김/비정상 종료 경보
· 설정 변경(제외 경로) 감사
↓
= EDR를 끄거나 피하는 행위 자체가 신호 → 정탐
| 우회 | 중앙 탐지 |
|---|---|
| 프로세스 종료 | 하트비트 끊김 |
| 서비스 mask | 상태 변경 |
| 스캔 제외 | 설정 감사 |
중앙 EDR 콘솔·설정 감사가 우회 탐지의 핵심입니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_h,defense_evasion,">
<rule id="107220" level="14">
<if_sid>107000</if_sid>
<field name="audit.proctitle" type="pcre2">(kill|pkill).*(falco|clamd|edr|crowdstrike|sentinel|wdavdaemon)|systemctl\s+(stop|mask|disable)\s+.*(falco|clamav|edr)|ExcludePath|rmmod\s+.*(falco|edr)</field>
<description>EDR·백신 우회·종료(실시간 엔드포인트 방어 무력화)</description>
<mitre><id>T1562.001</id></mitre>
</rule>
</group>
중앙 EDR 콘솔에서 에이전트 비정상 종료·하트비트 끊김을 핵심 경보로 설정합니다. 스캔 제외 경로 변경은 설정 감사로 탐지합니다.
| 우회 | 방식 |
|---|---|
| 프로세스 종료 | kill -9 |
| 서비스 무력화 | stop/mask |
| 스캔 제외 | 제외 경로 추가 |
| 모듈 언로드 | rmmod |
| 면접 포인트 | "EDR 우회는 종료뿐 아니라 스캔 제외도 — 중앙 콘솔 하트비트로 포착" |
다음 편 374. 방어 회피·흔적 삭제 — 커널 모듈·루트킷 기반 은닉 탐지 에서는 커널 모듈·루트킷 기반 은닉을 다루는 커널 모듈·루트킷 기반 은닉 탐지를 다룹니다.
이전 편: 372. 방어 회피·흔적 삭제 — auditd 규칙 삭제·무력화 탐지
📚 시리즈 전체 보기: 시스템 보안 · 취약점