시스템 보안 · 취약점 › H. 방어 회피 · 흔적 삭제 징후 · 41/50편 (전체 391/450)
학습 단계: 방어 회피 로그 분석
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
복원된 로그·교차 검증 결과를 시간순으로 엮어 침투→활동→흔적 삭제의 전체 흐름을 재구성합니다. 방어 회피 사건의 타임라인은 "삭제 시점"을 기준으로 삭제 전 활동과 삭제 행위 자체를 분리해 봅니다.
흔적 삭제 타임라인 재구성
① 다중 소스 타임스탬프 정규화(UTC·시간대)
② 복원 로그 + 중앙 사본 병합
③ 삭제 시점 식별 → 전/후 분리
④ 삭제 전 활동(침투·실행) 복원
⑤ 삭제 행위 자체(무엇을·언제 지웠나) 기록
결과: 침투 → 활동 → 흔적 삭제 통합 타임라인
핵심은 "삭제 시점을 축으로 전후를 복원한다"입니다. 복원 데이터와 중앙 사본을 시간 정규화해 병합하면 공백이 메워집니다.
| 단계 | 작업 | 산출 |
|---|---|---|
| 정규화 | UTC·시간대 통일 | 일관 시각 |
| 병합 | 복원+중앙 결합 | 통합 로그 |
| 삭제 식별 | 삭제 시점 특정 | 기준축 |
| 전 복원 | 침투·활동 재구성 | 활동 흐름 |
| 삭제 기록 | 무엇·언제 삭제 | 회피 행위 |
# 흔적 삭제 타임라인 재구성 (분석 방법)
# 다중 소스 타임스탬프 정규화 후 병합(UTC 기준)
# (복원 auth.log + 중앙 사본 + auditd + wtmp를 시간순 정렬)
sudo ausearch -k log_delete,log_tamper -i --start recent 2>/dev/null | grep -E 'type=|time->' | tail
# 삭제 시점 식별(삭제 명령 실행 시각)
sudo ausearch -k proc_exec -i --start recent 2>/dev/null | grep -E '(rm|shred|truncate).*(log|history)' | tail
# 삭제 전 활동(복원 로그에서 삭제 시점 이전 조회)
echo "복원된 로그를 삭제 시점 기준으로 전/후 분리 분석"
$ (삭제 이벤트) (없음)
$ (타임라인) 연속·공백 없음
삭제 이벤트가 없고, 통합 타임라인에 복원이 필요한 공백이 없는 상태가 정상입니다.
통합 타임라인(재구성, 가상의 예시):
01:10 ssh 로그인(wtmp 복원, auth.log는 삭제됨)
01:25 /tmp/.x 실행(auditd)
01:40 데이터 수집(복원 로그)
02:00 rm auth.log; history -c(삭제 행위)
02:05 shred /var/log/syslog(삭제 행위)
→ 삭제 전 활동(침투·수집) + 삭제 행위 모두 복원
흔적 삭제 타임라인 재구성입니다(가상의 예시).
[원본] 침투→활동→삭제 (공격자가 삭제로 단절 시도)
↓ (재구성)
[분석가]
복원 로그 + 중앙 사본 + wtmp + auditd 병합
시간 정규화(UTC) → 단일 타임라인
삭제 시점(02:00) 기준 전/후 분리
전: 01:10 로그인 ~ 01:40 수집(복원)
후: 02:00 삭제 행위(기록)
↓
= 삭제로 끊긴 흐름을 복원·병합해 전모 재구성
| 구간 | 소스 | 복원 |
|---|---|---|
| 삭제 전 | 복원+중앙+wtmp | 활동 흐름 |
| 삭제 시점 | auditd·proc | 삭제 행위 |
| 삭제 후 | 중앙 | 이후 활동 |
정규화·병합·삭제축 분리가 타임라인 재구성의 핵심입니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_h,defense_evasion,">
<rule id="107400" level="13">
<if_sid>107000</if_sid>
<field name="audit.proctitle" type="pcre2">(rm|shred|truncate|history\s+-c).*(log|history|wtmp|auth)</field>
<description>흔적 삭제 행위(타임라인 재구성 기준 이벤트)</description>
<mitre><id>T1070</id><id>T1070.003</id></mitre>
</rule>
</group>
삭제 이벤트를 타임라인 기준축으로 잡고, 복원 로그·중앙 사본을 시간 정규화해 병합합니다. SIEM에서 호스트별 통합 타임라인을 생성해 전/후를 분리 분석합니다.
| 단계 | 작업 |
|---|---|
| 정규화 | UTC·시간대 통일 |
| 병합 | 복원+중앙 결합 |
| 삭제 식별 | 삭제 시점 특정 |
| 전 복원 | 침투·활동 재구성 |
| 면접 포인트 | "삭제 시점을 축으로 전/후 분리 — 복원+중앙 병합으로 전모 재구성" |
다음 편 392. 방어 회피·흔적 삭제 — 방어 회피 이벤트 상관분석 에서는 방어 회피 이벤트를 상관하는 방어 회피 이벤트 상관분석을 다룹니다.
이전 편: 390. 방어 회피·흔적 삭제 — 아티팩트 교차 검증과 상호 보강
📚 시리즈 전체 보기: 시스템 보안 · 취약점