시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 25/50편 (전체 225/450)
학습 단계: DB·대량 데이터 접근 이상
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
공격자는 여러 소스에서 수집한 데이터를 한 곳(staging 디렉터리)에 모은 뒤 압축·유출합니다. staging은 접근(E09~24)과 유출(E32~)을 잇는 중간 단계로, 여기서 차단하면 유출을 막을 수 있습니다.
데이터 staging 패턴
집결 위치: /tmp, /dev/shm, /var/tmp, 숨김 디렉터리
모으기: cp 여러 파일 → /tmp/.stage/
압축: tar czf /tmp/data.tgz /tmp/.stage/
분할: split -b 10M (크기 제한 우회, E36)
특징: 평소 비어있는 경로에 다양한 소스 파일 집결
staging 디렉터리는 평소 비어있는 임시 경로(/tmp·/dev/shm)에 다양한 소스의 파일이 모이는 것이 특징입니다.
| staging 신호 | 의미 | 위험 |
|---|---|---|
| 임시 경로 파일 집결 | 데이터 수집 | 높음 |
| 다양한 소스 복사 | 광범위 수집 | 높음 |
| tar/zip 압축 | 유출 준비 | 높음 |
| split 분할 | 크기 제한 우회 | 높음 |
| 숨김 디렉터리 | 은닉 | 높음 |
# 데이터 staging 탐지 (분석 방법)
# 임시 경로로의 다중 복사(집결)
sudo ausearch -k data_access,exfil -i --start recent 2>/dev/null | grep -E '/tmp/|/dev/shm/|/var/tmp/' | grep 'comm="cp"' | tail
# staging 디렉터리의 압축·분할
sudo ausearch -k exfil -i --start recent 2>/dev/null | grep -E 'comm="(tar|gzip|zip|split)"' | grep -E '/tmp/|/dev/shm/'
# 현재 임시 경로의 아카이브
find /tmp /dev/shm /var/tmp -type f \( -name '*.tar*' -o -name '*.zip' -o -name '*.gz' \) 2>/dev/null
$ (임시 경로 집결) (없음)
$ (압축·분할) (없음)
$ (임시 아카이브) (없음)
임시 경로에 데이터 집결·압축·아카이브가 없는, staging 활동이 없는 상태가 정상입니다.
$ (임시 경로 집결)
04:00 cp /etc/shadow /tmp/.s/ 04:00 cp database.yml /tmp/.s/
04:01 cp -r /home/alice/docs /tmp/.s/
$ (압축·분할)
04:02 tar czf /tmp/.s/all.tgz /tmp/.s/ 04:03 split -b 10M all.tgz
데이터 staging 흐름입니다(가상의 예시 로그).
[집결] cp 여러 소스 → /tmp/.s/ (shadow·DB·문서)
↓
[압축] tar czf /tmp/.s/all.tgz (단일 파일화)
↓
[분할] split -b 10M (전송·크기 제한 우회, E36)
↓
[유출] 외부 전송(E32) — staging에서 차단하면 방지
| 단계 | 흔적 |
|---|---|
| 집결 | 임시 경로 다중 cp |
| 압축 | tar/zip |
| 분할 | split |
| 유출 | 전송 |
staging(집결·압축) 탐지 시점이 유출 전 마지막 차단 기회입니다.
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_e,data_staging,">
<!-- 임시 경로에 중요 정보 접근 후 압축(staging) -->
<rule id="104240" level="12">
<if_sid>104000</if_sid>
<field name="audit.comm" type="pcre2">^(tar|gzip|zip|7z|split)$</field>
<field name="audit.proctitle" type="pcre2">(/tmp/|/dev/shm/|/var/tmp/)</field>
<description>임시 경로 데이터 집결·압축(staging — 유출 준비)</description>
<mitre><id>T1074.001</id><id>T1560.001</id></mitre>
</rule>
</group>
접근(E09~24) → staging(여기) → 유출(E32)을 세션 상관해 공격 진행을 포착합니다. staging에서 차단이 최선입니다.
| staging 신호 | 의미 |
|---|---|
| 임시 경로 집결 | 데이터 수집 |
| 다양한 소스 복사 | 광범위 수집 |
| tar/zip 압축 | 유출 준비 |
| split 분할 | 크기 제한 우회 |
| 면접 포인트 | "staging은 유출 전 마지막 차단 기회 — 임시 경로 집결·압축이 신호" |
다음 편 226. 중요 정보 접근 — 비정상 시간대·주체의 데이터 접근 탐지 에서는 비정상 시간대·주체의 접근을 다루는 비정상 시간대·주체의 데이터 접근 탐지를 다룹니다.
이전 편: 224. 중요 정보 접근 — 민감 테이블·컬럼 접근 탐지
📚 시리즈 전체 보기: 시스템 보안 · 취약점