290. 프로세스·지속성 — 실행→지속성→C2 연계 분석

changseop lee·2026년 10월 7일

시스템 보안 · 취약점

목록 보기
290/450

시스템 보안 · 취약점 › F. 비정상 프로세스 · 지속성 징후 · 40/50편 (전체 290/450)
학습 단계: 프로세스·지속성 로그 분석
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

F영역의 핵심은 비정상 실행→지속성→C2를 하나의 체인으로 연결하는 것입니다. 개별 행위(프로세스 실행·cron 등록·외부 연결)는 각각 애매할 수 있지만, 세 단계가 한 세션·계보에 이어지면 명백한 거점 구축 공격입니다.

거점 구축 공격 체인 연계
 [실행]   비정상 프로세스 (F09~18)
    ↓ 같은 세션·계보
 [지속성] cron·systemd·키 (F19~28)
    ↓ 같은 세션
 [C2]     리버스셸·비컨 (F29~38)

 각 단독 = 애매 / 세 단계 연계 = 거점 구축 확정

연계 분석은 오탐을 크게 줄입니다. cron 하나, 외부 연결 하나는 정상일 수 있지만, 비정상 실행→지속성→C2 연쇄는 확정적입니다.

2. 왜 중요한가

  • 개별 단계는 정상 운영과 겹쳐 애매하지만, 연계되면 거점 구축이 확정됩니다.
  • 세 단계를 세션·계보로 묶으면 "실행된 것이 지속성·C2로 이어졌는가"를 판정합니다.
  • 연계는 E영역(유출)→F영역(거점)까지 확장해 전체 공격을 포착합니다.

3. 핵심 명령어 / 설정

연계신호확정도
실행+지속성프로세스→cron/systemd높음
지속성+C2지속성→외부 연결높음
실행+지속성+C23단 연쇄확정
유출+거점E→F높음
단독 단계개별 행위애매

4. 실습 (실습 예시)

# 실행→지속성→C2 연계 분석 (분석 방법)
SES=99
echo "실행:"; sudo ausearch -k proc_exec --session $SES -i 2>/dev/null | grep -cE 'exe=.*(/tmp/|/dev/shm/)'
echo "지속성:"; sudo ausearch -k persist --session $SES -i 2>/dev/null | grep -cE 'cron|systemd|authorized_keys'
echo "C2:"; sudo ausearch -k proc_exec --session $SES -i 2>/dev/null | grep -cE '/dev/tcp/|nc.*-e|connect.*(4444|외부)'
echo "→ 세 단계 모두 있으면 거점 구축 체인 확정"

5. 정상 상태

실행: 0  지속성: 0  C2: 0
→ 세 단계 모두 없음 → 정상

실행·지속성·C2가 모두 없거나 연계되지 않은, 체인이 완성되지 않은 정상 상태입니다.

6. 이상 상태

실행: 1(/tmp/.x)  지속성: 2(cron+systemd)  C2: 1(리버스셸)
→ 세 단계 모두 한 세션·계보에 연계 → 거점 구축 확정
  • 비정상 실행 1건 + 지속성 2건 + C2 1건이 한 세션·계보에 연계
  • 실행→지속성→C2 체인 완성 → 거점 구축 공격 확정
  • 개별로는 애매해도 연계로 확정 → 정탐(고확신)

7. 로그 분석 (분석 방법)

실행→지속성→C2 연계 흐름입니다(가상의 예시).

[실행] /tmp/.x (nginx→sh→.x, F09·11)
   ↓ 같은 세션·계보(ses=99)
[지속성] cron.d + systemd 등록 (F19·20)
   ↓ 같은 세션
[C2] bash→/dev/tcp/4444 (F29)
   ↓
[연계 판정] 3단 연쇄 → 거점 구축 확정(고확신)
 + E영역(유출)과 연계 시 전체 공격 체인
단독연계
실행 1건애매
cron 1건정상일 수도
실행+지속성+C2거점 확정

연계가 애매한 개별 행위를 확정적 거점 구축으로 묶습니다.

8. SOC 관제 포인트

  • F영역의 핵심은 실행→지속성→C2를 세션·계보로 연계해 거점 구축을 확정하는 것입니다.
  • 개별 단계는 애매하지만 3단 연쇄는 확정적이라 오탐을 크게 줄입니다.
  • E영역(유출)→F영역(거점)까지 확장해 전체 공격 체인을 포착합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_f,correlation,">
  <!-- 실행 + 지속성 + C2 3단 연계 -->
  <rule id="105390" level="15">
    <if_sid>105380</if_sid>
    <if_matched_sid>105270</if_matched_sid>
    <same_field>audit.session</same_field>
    <description>실행→지속성→C2 전체 체인 연계(거점 구축 확정)</description>
    <mitre><id>T1059</id><id>T1543</id><id>T1071</id></mitre>
  </rule>
</group>

세 단계 상관(level 15)은 최우선 경보입니다. same_field(session)·계보로 묶고, E영역 유출 룰과도 연계합니다.

10. 대응 방법

  1. 초기 확인 — 세션·계보 단위로 실행·지속성·C2 세 단계의 존재·연계를 확인합니다.
  2. 범위 확인 — 각 단계가 같은 세션·계보·시간 흐름으로 이어졌는지 확인합니다.
  3. 증거 확보 — 연계된 전체 이벤트와 제거 대상(지속성·C2)을 보존합니다.
  4. 차단/조치 — 체인 확정 정탐이면 전수 제거(실행·지속성·C2)·재침해 감시를 진행합니다.
  5. 재발 방지 — 실행→지속성→C2 세션·계보 연계 분석을 핵심 탐지로 운영합니다.

11. 핵심 정리

연계확정도
실행+지속성높음
지속성+C2높음
실행+지속성+C2확정
유출+거점(E→F)높음
면접 포인트"개별은 애매, 실행→지속성→C2 연계는 확정 — 연계가 오탐을 줄이는 핵심"

12. 다음 편 예고

다음 편 291. 프로세스·지속성 — 프로세스·지속성 로그의 정규화와 수집 에서는 프로세스·지속성 로그 정규화·수집을 다루는 프로세스·지속성 로그의 정규화와 수집을 다룹니다.


이전 편: 289. 프로세스·지속성 — 프로세스·지속성 타임라인 작성
📚 시리즈 전체 보기: 시스템 보안 · 취약점

profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글