367. 방어 회피·흔적 삭제 — 파일 무결성 모니터링 우회 탐지

changseop lee·7일 전

시스템 보안 · 취약점

목록 보기
367/450

시스템 보안 · 취약점 › H. 방어 회피 · 흔적 삭제 징후 · 17/50편 (전체 367/450)
학습 단계: 로그 삭제·변조
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

FIM(File Integrity Monitoring)은 중요 파일의 변경을 감시하는 핵심 방어입니다. 공격자는 FIM 감시를 회피(감시 밖 경로 사용)하거나 무력화(FIM 중지·기준 DB 변조)해 파일 변조를 숨깁니다.

FIM 우회·무력화 패턴
 감시 밖 경로: FIM이 안 보는 디렉터리 사용(/dev/shm 등)
 FIM 중지: aide/wazuh FIM 데몬 중지
 기준 DB 변조: aide --init으로 악성 상태를 "정상"으로 재등록
 스캔 창 악용: FIM 스캔 간격 사이에 변조 후 원복
 속성 악용: 변경 후 ctime 등 최대한 위장

탐지: FIM 중지·기준 DB 재생성·감시 밖 실행 파일

핵심은 "FIM을 피하거나 끄거나 속이는 행위"입니다. 특히 기준 DB 재생성(aide --init)은 악성 상태를 정상으로 둔갑시키는 위험 행위입니다.

2. 왜 중요한가

  • FIM은 파일 변조 탐지의 핵심이라, 우회·무력화되면 변조가 전부 숨겨집니다.
  • 기준 DB 재생성은 악성 변경을 "새 정상"으로 등록해 이후 탐지를 무력화합니다.
  • FIM 감시 밖 경로(/dev/shm)·스캔 창 악용은 감시를 회피하는 수법입니다.

3. 핵심 명령어 / 설정

우회방식위험
감시 밖 경로/dev/shm·비감시 디렉터리회피
FIM 중지aide/wazuh 데몬 중지무력화
기준 DB 변조aide --init 재생성악성=정상
스캔 창 악용스캔 간 변조·원복회피
정상 갱신승인 변경 후 재초기화정상

4. 실습 (실습 예시)

# FIM 우회·무력화 탐지 (분석 방법)
# FIM 데몬(aide/wazuh) 중지·기준 DB 재생성
sudo ausearch -k proc_exec -i --start recent 2>/dev/null | grep -E 'aide.*--init|aide.*--update|systemctl.*(stop|disable).*(aide|wazuh)' | tail
# aide 기준 DB 변경 시각(비정상 재생성)
stat /var/lib/aide/aide.db.gz 2>/dev/null | grep Modify
# FIM 감시 밖 경로의 실행 파일
sudo find /dev/shm /var/tmp -type f -perm -u+x 2>/dev/null | head

5. 정상 상태

$ (FIM 중지·DB 재생성) (없음 또는 승인 변경 후 정상 재초기화)
$ (감시 밖 실행 파일) (없음)

FIM 데몬이 가동되고 기준 DB가 승인 변경 시에만 갱신되며, 감시 밖 경로에 실행 파일이 없는 상태가 정상입니다.

6. 이상 상태

$ (FIM 중지·DB 재생성)
proctitle="aide --init" (악성 변경 후 기준 DB 재생성)
systemctl stop wazuh-modulesd (FIM 중지)
$ (감시 밖 실행 파일)
/dev/shm/.payload (FIM 비감시 경로 실행 파일)
  • aide --init으로 악성 상태를 새 기준으로 등록 → 이후 변조 탐지 무력화
  • FIM 데몬 중지 → 파일 변경 감시 차단
  • /dev/shm 실행 파일 → FIM 감시 밖 회피
  • FIM 우회·무력화 → 파일 변조 은폐 → 정탐

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

FIM 우회·무력화 분석입니다(가상의 예시).

[공격자] /usr/bin/ssh 변조(백도어) 시도
   FIM이 감시 중 → 변조 시 경보 예상
   ↓ (우회 선택)
① aide --init → 변조된 ssh를 "정상 기준"으로 재등록
② 또는 systemctl stop (FIM 중지)
③ 또는 /dev/shm/.x (감시 밖 경로 사용)
      ↕ (메타 탐지)
[탐지] FIM 데몬 중지·기준 DB 비정상 재생성 자체를 감사
   ↓
= FIM을 끄거나 재초기화하는 행위 자체가 신호 → 정탐
우회메타 탐지
기준 DB 재생성aide --init 감사
FIM 중지데몬 상태
감시 밖 경로실행 파일 스캔

FIM 조작 행위 자체를 감사하는 것이 우회 탐지의 핵심입니다.

8. SOC 관제 포인트

  • FIM 우회·무력화는 파일 무결성 감시를 피하거나 끄거나 속여 변조를 숨깁니다.
  • 기준 DB 재생성(aide --init)은 악성 상태를 새 정상으로 등록하는 위험 행위입니다.
  • FIM 데몬 상태·기준 DB 재생성·감시 밖 실행 파일을 메타 감사로 탐지합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_h,defense_evasion,">
  <rule id="107160" level="13">
    <if_sid>107000</if_sid>
    <field name="audit.proctitle" type="pcre2">aide\s+.*(--init|--update)|systemctl\s+(stop|disable)\s+.*(aide|wazuh|ossec)</field>
    <description>FIM 무력화·기준 DB 재생성(파일 변조 은폐)</description>
    <mitre><id>T1562.001</id><id>T1070</id></mitre>
  </rule>
</group>

FIM 데몬 상태·기준 DB 변경을 중앙에서 모니터링합니다. 기준 DB 재생성은 승인 절차와 대조해 비정상 재초기화를 탐지합니다.

10. 대응 방법

  1. 초기 확인 — FIM 데몬 상태·기준 DB 재생성·감시 밖 경로를 확인합니다.
  2. 범위 확인 — aide --init·FIM 중지·스캔 창 악용·감시 밖 실행을 확인합니다.
  3. 증거 확보 — FIM 조작 이벤트·기준 DB 변경 시각·중앙 FIM 상태를 보존합니다.
  4. 차단/조치 — FIM 우회 정탐이면 기준 DB 재검증·감시 밖 파일 조사·변조 복원을 진행합니다.
  5. 재발 방지 — FIM 우회·무력화 탐지를 운영합니다.

11. 핵심 정리

우회방식
감시 밖 경로/dev/shm·비감시
FIM 중지데몬 중지
기준 DB 변조aide --init
스캔 창 악용스캔 간 변조·원복
면접 포인트"FIM 우회는 기준 DB 재생성이 핵심 — 악성을 새 정상으로 등록, 조작 행위를 감사"

12. 다음 편 예고

다음 편 368. 방어 회피·흔적 삭제 — 로그 삭제·변조 종합 분석 에서는 로그 삭제·변조를 종합하는 로그 삭제·변조 종합 분석을 다룹니다.


이전 편: 366. 방어 회피·흔적 삭제 — 타임스탬프 변조(timestomping) 탐지
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글