시스템 보안 · 취약점 › H. 방어 회피 · 흔적 삭제 징후 · 6/50편 (전체 356/450)
학습 단계: 방어 회피 기본 개념
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
로그 무결성(log integrity)은 로그가 생성 후 변조되지 않았음을 보장하는 것입니다. 공격자가 로그를 선택적으로 지우거나 내용을 바꾸는 변조를 탐지하려면, 무결성 검증 메커니즘이 필요합니다.
로그 무결성 보장·변조 탐지
① 중앙 수집: 생성 즉시 외부로 전송(로컬 변조 무력화)
② 해시·서명: 로그 파일 해시 체인·디지털 서명
③ 순서·연속성: 로그 번호·시퀀스 끊김 탐지
④ append-only: 추가만 가능(수정·삭제 불가) 설정
⑤ FIM: 로그 파일 변경 감시
변조 신호: 시퀀스 끊김·해시 불일치·중앙 vs 로컬 차이
핵심은 "로컬 로그는 믿을 수 없다"입니다. 생성 즉시 중앙 전송·해시 체인·append-only로 변조를 방지·탐지합니다.
| 메커니즘 | 역할 | 변조 신호 |
|---|---|---|
| 중앙 수집 | 외부 보존 | 중앙 vs 로컬 차이 |
| 해시 체인 | 무결성 검증 | 해시 불일치 |
| 순서 검증 | 연속성 | 시퀀스 끊김 |
| append-only | 수정 방지 | 설정 해제 |
| FIM | 변경 감시 | 비정상 변경 |
# 로그 무결성·변조 탐지 (분석 방법)
# append-only 속성 확인(로그 파일)
lsattr /var/log/secure /var/log/audit/audit.log 2>/dev/null | grep -E 'a'
# 중앙 vs 로컬 로그 라인 수 비교(변조 탐지)
echo "로컬 로그 라인 수와 중앙 수집 서버의 동일 호스트 로그 라인 수 비교"
# 로그 시퀀스 끊김(감사 로그 이벤트 번호)
sudo ausearch --start recent 2>/dev/null | grep -oE 'node=.* type=' | head
$ lsattr /var/log/audit/audit.log → ----a-------- (append-only 설정)
$ (중앙 vs 로컬) 일치
로그에 append-only 속성이 설정되고, 중앙 수집본과 로컬 로그가 일치하는 상태(변조 없음)가 정상입니다.
$ lsattr /var/log/secure → ------------- (append-only 해제됨)
$ (중앙 vs 로컬)
로컬 로그: 09:10~09:30 구간 누락
중앙 로그: 09:10~09:30 로그인 기록 존재
→ 로컬에서 선택적 삭제(변조)
로그 무결성 검증 흐름입니다(가상의 예시).
[로그 생성] web01 secure 로그
├→ 로컬 저장(변조 가능)
└→ 중앙 즉시 전송(변조 불가)
↓ (사후 비교)
[변조 탐지] 로컬 09:10~09:30 누락
중앙 동일 구간 존재
↓
= 선택적 삭제(변조) 확정 → 중앙본으로 복원
| 검증 | 변조 발견 |
|---|---|
| 중앙 vs 로컬 | 구간 누락 |
| 해시 체인 | 불일치 |
| 순서 | 끊김 |
중앙 수집 + 교차 비교가 변조 탐지의 핵심입니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_h,defense_evasion,">
<rule id="107050" level="13">
<if_sid>107000</if_sid>
<field name="audit.proctitle" type="pcre2">chattr\s+-a|lsattr</field>
<description>로그 파일 append-only 속성 해제(변조 준비)</description>
<mitre><id>T1070</id><id>T1565</id></mitre>
</rule>
</group>
중앙 수집본과 로컬 로그를 주기 비교해 변조를 탐지합니다. append-only 해제(chattr -a)는 변조 준비 신호로 경보합니다.
| 메커니즘 | 역할 |
|---|---|
| 중앙 수집 | 외부 보존 |
| 해시 체인 | 무결성 검증 |
| 순서 검증 | 연속성 |
| append-only | 수정 방지 |
| 면접 포인트 | "로컬 로그는 못 믿는다 — 중앙 vs 로컬 차이가 변조의 직접 증거" |
다음 편 357. 방어 회피·흔적 삭제 — 탐지 우회 기법의 분류 에서는 탐지 우회 기법의 분류를 다루는 탐지 우회 기법의 분류를 다룹니다.
이전 편: 355. 방어 회피·흔적 삭제 — 안티포렌식(anti-forensics)의 원리
📚 시리즈 전체 보기: 시스템 보안 · 취약점