372. 방어 회피·흔적 삭제 — auditd 규칙 삭제·무력화 탐지

changseop lee·7일 전

시스템 보안 · 취약점

목록 보기
372/450

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

선행 학습

1. 개념

H12가 auditd 전체 중지라면, 여기서는 더 은밀한 규칙 단위 삭제·무력화를 다룹니다. 공격자는 auditd는 켜둔 채 자신의 활동을 감사하는 특정 규칙만 제거해, 전체 중지보다 눈에 띄지 않게 선택적으로 탐지를 회피합니다.

auditd 규칙 선택 무력화 패턴
 특정 규칙 삭제: auditctl -d <규칙> (개별 제거)
 규칙 파일 변조: /etc/audit/rules.d/*.rules 수정
 재적재 차단: augenrules 미실행·설정 변조
 키 변경: 탐지 키(-k) 변경으로 룰 매칭 회피
 특징: 서비스는 유지 — 일부 탐지만 사라짐

탐지: 규칙 수 급감·특정 키 이벤트 소멸·rules 파일 변경

핵심은 "감사는 켜져 있는데 특정 탐지만 사라지는 것"입니다. 규칙 개수 변화·특정 키 이벤트의 갑작스러운 소멸이 선택적 무력화 신호입니다.

2. 왜 중요한가

  • 규칙 단위 무력화는 전체 중지보다 은밀해 선택적으로 탐지를 회피합니다.
  • 특정 키(-k) 규칙 삭제로 그 영역 탐지만 사라져 다른 감사는 정상처럼 보입니다.
  • 규칙 개수·특정 키 이벤트 추이 모니터링이 선택적 무력화 탐지의 핵심입니다.

3. 핵심 명령어 / 설정

무력화방식특징
개별 규칙 삭제auditctl -d선택적
규칙 파일 변조rules.d 수정영구
재적재 차단augenrules 미실행설정 괴리
키 변경-k 변경매칭 회피
서비스 유지—은밀

4. 실습 (실습 예시)

# auditd 규칙 선택 무력화 탐지 (분석 방법)
# 규칙 삭제·변경 명령
sudo ausearch -k audit_tamper,proc_exec -i --start recent 2>/dev/null | grep -E 'auditctl\s+-d|rules.d|augenrules' | tail
# 현재 규칙 수 vs 기준선(급감 여부)
sudo auditctl -l 2>/dev/null | wc -l
# 특정 키 이벤트의 최근 소멸 여부
for k in proc_exec cred_access lateral; do echo "$k: $(sudo ausearch -k $k --start today 2>/dev/null | grep -c type=)"; done

5. 정상 상태

$ (규칙 변경) (없음)
$ (규칙 수) 기준선과 동일
$ (키별 이벤트) 각 키 정상 발생

규칙 변경이 없고 규칙 수가 기준선과 같으며, 모든 탐지 키에서 이벤트가 정상 발생하는 상태가 정상입니다.

6. 이상 상태

$ (규칙 변경)
proctitle="auditctl -d always,exit -F arch=b64 -S execve -k proc_exec"
→ proc_exec(실행 감사) 규칙만 삭제
$ (규칙 수) 42 → 38 (4개 감소)
$ (키별 이벤트) proc_exec: 0 (갑자기 소멸, 다른 키는 정상)
  • proc_exec 규칙만 삭제 → 실행 감사만 선택적 무력화
  • 규칙 수 감소 + 특정 키 이벤트 소멸 → 선택적 회피
  • 감사는 켜져 있으나 특정 탐지만 사라짐 → 은밀한 방어 회피 → 정탐

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

auditd 규칙 선택 무력화 분석입니다(가상의 예시).

[공격 예정] 다수 명령 실행(execve 감사에 걸림)
   ↓ (선택적 회피)
auditctl -d ... -k proc_exec (실행 감사 규칙만 삭제)
   → auditd는 가동 중, 다른 감사는 정상
   → 하지만 execve 이벤트만 사라짐
      ↕ (탐지)
[모니터링]
 · 규칙 개수 42→38 급감
 · proc_exec 키 이벤트 갑자기 0
 · rules.d 파일 변경 감지(FIM)
   ↓
= "일부 탐지만 사라짐"을 규칙·키 추이로 포착 → 정탐
신호의미
규칙 수 급감선택 삭제
특정 키 소멸영역 무력화
rules.d 변경영구 변조

규칙·키 이벤트 추이 모니터링이 선택적 무력화 탐지의 핵심입니다.

8. SOC 관제 포인트

  • auditd 규칙 선택 무력화는 서비스는 유지한 채 특정 규칙만 제거하는 은밀한 회피입니다.
  • 특정 키(-k) 규칙 삭제로 그 영역 탐지만 사라져 전체 중지보다 눈에 안 띕니다.
  • 규칙 개수 급감·특정 키 이벤트 소멸·rules.d 변경이 핵심 신호입니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_h,defense_evasion,">
  <rule id="107210" level="13">
    <if_sid>107000</if_sid>
    <field name="audit.proctitle" type="pcre2">auditctl\s+-d|/etc/audit/rules</field>
    <description>auditd 감사 규칙 개별 삭제·변조(선택적 탐지 회피)</description>
    <mitre><id>T1562.001</id><id>T1562.006</id></mitre>
  </rule>
</group>

규칙 개수·키별 이벤트량을 중앙에서 추이 모니터링합니다. rules.d 파일을 FIM 감시해 영구 변조를 탐지합니다.

10. 대응 방법

  1. 초기 확인 — auditd 규칙 삭제·변경 명령과 규칙 수 추이를 확인합니다.
  2. 범위 확인 — 특정 키 규칙 삭제·키별 이벤트 소멸·rules.d 변경을 확인합니다.
  3. 증거 확보 — 규칙 변경 이벤트·규칙 스냅샷·키별 이벤트량을 보존합니다.
  4. 차단/조치 — 선택적 무력화 정탐이면 규칙 복구·무력화된 영역의 은폐 활동 분석을 진행합니다.
  5. 재발 방지 — auditd 규칙 선택 무력화 탐지를 운영합니다.

11. 핵심 정리

무력화방식
개별 규칙 삭제auditctl -d
규칙 파일 변조rules.d 수정
재적재 차단augenrules 미실행
키 변경-k 변경
면접 포인트"규칙 단위 무력화는 은밀 — 서비스 유지하며 특정 키 탐지만 소멸"

12. 다음 편 예고

다음 편 373. 방어 회피·흔적 삭제 — EDR·백신 우회·종료 탐지 에서는 EDR·백신 우회·종료를 다루는 EDR·백신 우회·종료 탐지를 다룹니다.


이전 편: 371. 방어 회피·흔적 삭제 — SELinux·AppArmor 비활성화 탐지
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글