시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 3/50편 (전체 203/450)
학습 단계: 접근 로그 기본 개념
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
E영역 탐지의 기반은 파일 접근(읽기) 감사입니다. 권한 변경(D영역)은 쓰기 감사였다면, 여기서는 읽기(-p r) 감사로 "누가 중요 정보를 읽었는가"를 기록합니다.
접근 감사 구성(auditd)
파일 watch: -w /etc/shadow -p r -k sensitive_read
-p r = 읽기(read) 접근 감사
syscall: open/openat/read 감사 규칙
키 체계: sensitive_read(중요파일), data_access(DB·대량)
exfil(유출 연계)
주의: 읽기 감사는 이벤트가 많음 → 대상 선별(E02) 필수
읽기 감사는 매우 많은 이벤트를 만들므로, E02에서 식별한 중요 정보로 대상을 좁혀 구성하는 것이 핵심입니다.
| 감사 대상 | 규칙 | 키 |
|---|---|---|
| 중요 파일 | -w <file> -p r | sensitive_read |
| 자격증명 | -w <cred> -p r | cred_access |
| DB·데이터 | -w <datadir> -p r | data_access |
| 홈·개인 | 선택적 watch | home_access |
| 유출 연계 | execve(tar·curl) | exfil |
# 파일 접근 감사 구성 (분석 방법)
# 중요 파일 읽기 감사 규칙(/etc/audit/rules.d/sensitive.rules)
sudo tee /etc/audit/rules.d/sensitive.rules >/dev/null <<'RULES'
-w /etc/shadow -p r -k sensitive_read
-w /etc/ssh -p r -k sensitive_read
-w /etc/myapp/db.conf -p r -k cred_access
-w /var/lib/mysql -p r -k data_access
RULES
sudo augenrules --load 2>/dev/null; sudo auditctl -l | grep -E 'sensitive|cred|data'
$ (감사 규칙 확인)
-w /etc/shadow -p r -k sensitive_read
-w /etc/myapp/db.conf -p r -k cred_access
→ 중요 정보 읽기 감사가 활성화된 상태
식별된 중요 정보에 대한 읽기 감사 규칙이 로드되고, 접근 이벤트가 키별로 기록되는 상태가 정상입니다.
$ (감사 규칙 확인) (없음 — 규칙 미설정)
$ sudo ausearch -k sensitive_read
<no matches>
접근 감사 기반 구성 흐름입니다(가상의 예시).
[식별 E02] 중요 정보 목록
↓
[규칙 작성] -w <file> -p r -k <key>
↓
[로드] augenrules --load / auditctl
↓
[이벤트] open/read 시 감사 로그 기록
↓
[탐지] 키 기반 룰(104000번대)
| 키 | 대상 |
|---|---|
| sensitive_read | 인증·중요 파일 |
| cred_access | 자격증명 |
| data_access | DB·데이터 |
| exfil | 유출 연계 |
키 체계가 접근 유형을 구분해 탐지·분석을 체계화합니다.
-p r watch)입니다.<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_e,sensitive_access,">
<rule id="104020" level="6">
<if_sid>104000</if_sid>
<field name="audit.key" type="pcre2">sensitive_read|cred_access|data_access</field>
<description>중요 정보 접근 감사 키 매칭(기반)</description>
<mitre><id>T1005</id></mitre>
</rule>
</group>
감사 규칙 로드 후 wazuh-logtest로 키 파싱을 검증합니다. 읽기 감사량이 많으면 대상을 더 좁힙니다.
| 감사 대상 | 키 |
|---|---|
| 중요 파일 | sensitive_read |
| 자격증명 | cred_access |
| DB·데이터 | data_access |
| 유출 연계 | exfil |
| 면접 포인트 | "E영역은 읽기(-p r) 감사가 기반 — 대상 선별로 이벤트 폭증 관리" |
다음 편 204. 중요 정보 접근 — 중요 정보 접근 정상 기준선 만들기 에서는 접근의 정상 기준선을 다루는 중요 정보 접근 정상 기준선 만들기를 다룹니다.
이전 편: 202. 중요 정보 접근 — 중요 정보(민감 데이터)의 분류와 식별
📚 시리즈 전체 보기: 시스템 보안 · 취약점