시스템 보안 · 취약점 › F. 비정상 프로세스 · 지속성 징후 · 1/50편 (전체 251/450)
학습 단계: 프로세스·지속성 기본 개념
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
F영역 「비정상 프로세스·지속성 징후」를 시작합니다. 공격자는 침투(C)·상승(D)·유출(E) 이후, 재부팅·재접속 후에도 거점을 유지하려고 비정상 프로세스를 실행하고 지속성(persistence)을 심습니다. 이 단계 탐지가 장기 침해를 끊는 핵심입니다.
공격 단계와 F영역의 위치
정찰(C)→상승(D)→유출(E)→[프로세스·지속성(F)]→내부확장(G)
↑ 장기 거점 유지
F영역 흐름
비정상 프로세스 → 악성 실행·위장·은닉
지속성(persist) → cron·systemd·키·모듈
백도어·C2 → 원격 제어·통신
A~E가 "침투~유출"이라면, F는 "장기 거점 유지"를 탐지합니다. 지속성을 제거하지 못하면 침해가 반복됩니다.
| 단계 | 행위 | 탐지 영역 |
|---|---|---|
| 비정상 프로세스 | 악성·위장·은닉 실행 | F09~18 |
| 지속성 | cron·systemd·키·모듈 | F19~28 |
| 백도어·C2 | 리버스셸·비컨·웹셸 | F29~38 |
| 분석 | 계보·타임라인·상관 | F39~43 |
| 관제 | Wazuh·ELK·Sysmon | F44~48 |
# 프로세스·지속성 감사 기반 (분석 방법)
# execve(프로세스 실행) 감사 등록
sudo auditctl -a always,exit -F arch=b64 -S execve -k proc_exec
# 지속성 위치 watch
sudo auditctl -w /etc/cron.d -p wa -k persist
sudo auditctl -w /etc/systemd/system -p wa -k persist
sudo ausearch -k proc_exec,persist -i --start recent 2>/dev/null | tail
$ (프로세스·지속성 이벤트)
(정상: 알려진 서비스·관리 프로세스, 지속성 변경은 패키지·배포 맥락)
실행 프로세스가 알려진 서비스·관리 작업뿐이고, 지속성 위치 변경이 패키지·배포 맥락과 일치하는 상태가 정상입니다.
$ (프로세스·지속성 이벤트)
04:10 comm="sh" /tmp/.x (비표준 경로 실행)
04:11 cron.d/0hourly 변경 (지속성 등록)
04:12 nc → 외부 4444 (C2 연결)
F영역 전체 탐지 흐름입니다(가상의 예시).
[E영역 유출] 데이터 탈취
↓
[비정상 프로세스] /tmp/.x 실행 (proc_exec)
↓
[지속성] cron.d·systemd 등록 (persist)
↓
[백도어·C2] 리버스셸·비컨 (외부 통신)
↓
[탐지] 각 단계 + 실행→지속성→C2 상관(F40·42)
| 단계 | 흔적 |
|---|---|
| 비정상 실행 | execve 감사 |
| 지속성 | 등록 위치 변경 |
| C2 | 외부 통신 |
세 단계를 세션·계보로 연계하면 장기 거점 구축이 드러납니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_f,process,">
<!-- F영역 기반 룰: 프로세스 실행·지속성 감사 포착 -->
<rule id="105000" level="5">
<decoded_as>auditd</decoded_as>
<field name="audit.key" type="pcre2">proc_exec|persist</field>
<description>프로세스 실행·지속성 감사 이벤트(기반)</description>
<mitre><id>T1057</id></mitre>
</rule>
</group>
105000은 F영역 기반 룰입니다. 개별 탐지(105010~)가 이를 상속해 유형별로 세분화합니다. Wazuh 룰 범위: F영역 105000번대.
| 단계 | 탐지 |
|---|---|
| 비정상 프로세스 | 악성·위장·은닉(F09~18) |
| 지속성 | cron·systemd·키·모듈(F19~28) |
| 백도어·C2 | 리버스셸·비컨·웹셸(F29~38) |
| 분석·관제 | 계보·상관·Wazuh/ELK(F39~48) |
| 면접 포인트 | "F영역은 장기 거점 유지 탐지 — 지속성 제거 없으면 침해 반복" |
다음 편 252. 프로세스·지속성 — 프로세스 기본 구조와 정상 상태 이해 에서는 프로세스 기본 구조를 다루는 프로세스 기본 구조와 정상 상태 이해를 다룹니다.
이전 편: 250. 중요 정보 접근 — 중요 정보 접근 로그 분석 종합 정리
📚 시리즈 전체 보기: 시스템 보안 · 취약점