시스템 보안 · 취약점 › F. 비정상 프로세스 · 지속성 징후 · 44/50편 (전체 294/450)
학습 단계: SOC 탐지 연계
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
6단계는 SOC 탐지 구현입니다. 첫 번째는 Wazuh입니다. F영역 전편의 개별 룰(105000번대)을 하나의 Wazuh 탐지 스택으로 묶어, execve·지속성 watch·FIM·rootcheck·계보 상관을 통합 구성합니다.
Wazuh 프로세스·지속성 탐지 스택
[입력] execve 감사 + 지속성 watch + FIM + rootcheck
[룰] 105000(기반) → 105010~105360(개별) → 105410(계보 상관)
[연계] MITRE(T1059/T1543/T1071/T1014)
[출력] alert → dashboard / 대응(F47)
계층: 기반 → 개별 탐지 → 계보·연계 상관 → 경보
Wazuh는 execve·FIM·rootcheck를 통합하고, 계보(ppid_comm) 기반 상관으로 F영역 전체 탐지를 한 플랫폼에서 구현합니다.
| 구성 요소 | 역할 | 편 |
|---|---|---|
| execve 감사 | 프로세스 실행·계보 | F03 |
| 지속성 watch | 거점 변경 | F03 |
| FIM | 파일·바이너리 변조 | F04·46 |
| rootcheck | rootkit·은닉 | F34 |
| 계보 상관 룰 | 공격 체인 | F42 |
# Wazuh 프로세스·지속성 탐지 구성 (분석 방법)
# 1) execve·지속성 감사 수집(ossec.conf audit)
# 2) FIM 지속성 위치·바이너리 감시(whodata)
# 3) rootcheck 활성화(rootkit·은닉 점검)
# 4) 커스텀 룰 배치 후 검증
sudo /var/ossec/bin/wazuh-logtest # 룰 매칭 검증(필수)
sudo tail -f /var/ossec/logs/alerts/alerts.json | grep 1050
$ (wazuh-logtest, 정상 서비스 실행)
Rule: 105000 (level 5) -> '프로세스 실행·지속성 감사' (기반 룰만)
→ 정상 서비스 실행은 저레벨 기반 룰만, 경보 없음
정상 서비스 실행이 기반 룰(저레벨)만 매칭하고 개별·상관 룰에 안 걸리는, 오탐 없는 상태가 정상입니다.
$ (wazuh-logtest, /tmp/.x by nginx→sh)
Rule: 105080 (level 12) -> '비표준 경로 실행'
Rule: 105040 (level 13) -> '웹서버의 셸 생성(웹셸)'
Rule: 105410 (level 15) -> '프로세스·지속성·C2 상관'
→ 개별+계보+상관 룰 매칭, 최고 레벨 경보
Wazuh 프로세스·지속성 탐지 스택 흐름입니다(가상의 예시).
[execve] /tmp/.x (nginx→sh, proc_exec)
↓ (agent 수집·계보 파싱)
[기반 룰 105000] 실행 포착(level 5)
↓
[개별 룰 105080·105040] 비표준·웹셸 계보(level 12·13)
↓ (계보·세션 상관)
[상관 룰 105410] 거점 구축 확정(level 15)
↓
[경보] dashboard + 대응(F47)
| 계층 | 룰 | 역할 |
|---|---|---|
| 기반 | 105000 | 포착 |
| 개별 | 105xxx | 유형·계보 |
| 상관 | 105410·105420 | 거점 확정 |
계층형 룰이 정상은 통과시키고 거점 구축만 고레벨로 확정합니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_f,wazuh,">
<!-- F영역 탐지 스택 요약: 기반 → 개별 → 계보 상관 -->
<!-- 105000(기반) / 105010~105360(개별) / 105410·105420(계보 상관) -->
<rule id="105430" level="12">
<if_group>syssec_f</if_group>
<field name="audit.key" type="pcre2">proc_exec|persist</field>
<options>no_full_log</options>
<description>프로세스·지속성 Wazuh 통합 탐지(그룹 집계용)</description>
<mitre><id>T1059</id></mitre>
</rule>
</group>
개별 룰을 유지하고 이 집계 룰은 대시보드·통계용으로 씁니다. 모든 룰 변경 후 wazuh-logtest 필수입니다.
| 구성 요소 | 역할 |
|---|---|
| execve 감사 | 실행·계보 |
| 지속성 watch·FIM | 거점·변조 |
| rootcheck | rootkit·은닉 |
| 계보 상관 룰 | 공격 체인 |
| 면접 포인트 | "Wazuh는 execve·FIM·rootcheck 통합 계층형 — 계보 상관이 핵심, logtest 필수" |
다음 편 295. 프로세스·지속성 — ELK/SIEM 기반 프로세스·지속성 탐지와 정탐·오탐 판단 에서는 ELK/SIEM 기반 탐지와 정탐·오탐 판단을 다루는 ELK/SIEM 기반 프로세스·지속성 탐지와 정탐·오탐 판단을 다룹니다.
이전 편: 293. 프로세스·지속성 — 프로세스 계보 기반 공격 체인 재구성
📚 시리즈 전체 보기: 시스템 보안 · 취약점