시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 9/50편 (전체 209/450)
학습 단계: 중요 파일 접근 이상
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

2단계는 중요 파일별 접근 탐지입니다. 첫 번째는 /etc/shadow입니다. shadow는 모든 계정의 비밀번호 해시를 담은 최고 민감 파일로, 읽기 접근 자체가 자격증명 탈취 시도입니다.

/etc/shadow 접근 위험
 정상: 000/640 권한 → root·shadow 그룹만, 인증 시 접근
 공격: cat/cp/dd로 shadow 읽기 → 해시 획득
       → 오프라인 크래킹(해시→평문 비밀번호)
       → 자격증명 탈취 → 측면 이동

읽기 접근 = 자격증명 탈취 시도(T1003.008)

shadow는 권한(D09 완화)과 접근(여기)을 함께 봐야 합니다. 완화 후 읽기가 전형적 공격 흐름입니다.

2. 왜 중요한가

  • shadow 읽기는 모든 계정 비밀번호 해시 노출 → 오프라인 크래킹으로 평문 획득 위험입니다.
  • 정상적으로는 인증 과정(서비스)만 접근하므로, 쉘 명령의 읽기는 명백한 이상입니다.
  • 권한 완화(D09) 후 읽기, 읽기 후 유출(E32) 연계가 전형적 공격 체인입니다.

3. 핵심 명령어 / 설정

접근 방법의미위험
cat/less shadow해시 직접 읽기매우 높음
cp shadow해시 복사(수집)매우 높음
dd/xxd우회 읽기높음
서비스 인증 접근정상정상
완화 후 읽기공격 체인매우 높음

4. 실습 (실습 예시)

# /etc/shadow 읽기 접근 탐지 (분석 방법)
# shadow 읽기 감사(사전 -w /etc/shadow -p r 필요)
sudo ausearch -k sensitive_read -i --start recent 2>/dev/null | grep -B1 'shadow' | grep -E 'comm=|auid=|success' | tail

# 비서비스 주체의 shadow 접근만
sudo ausearch -k sensitive_read -i --start recent 2>/dev/null | grep shadow | grep -vE 'comm="(unix_chkpwd|sshd|login|passwd)"'

5. 정상 상태

$ (shadow 접근)
comm="unix_chkpwd" success=yes /etc/shadow  (인증 검증 — 정상)

shadow 접근이 인증 검증 프로세스(unix_chkpwd·sshd)에 의해서만 발생하는, 서비스 정상 동작 상태입니다.

6. 이상 상태

$ (shadow 접근)
04:00 comm="cat" auid=devops success=yes /etc/shadow
04:00 comm="cp"  auid=devops /etc/shadow → /tmp/.s
  • cat으로 shadow 직접 읽기 → 해시 획득(크래킹 노출)
  • cp로 /tmp에 복사 → 수집(유출 준비)
  • 비인가 쉘의 shadow 읽기·복사 → 자격증명 탈취 → 정탐(최고 위험)

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

shadow 읽기 접근 흐름입니다(가상의 예시 로그).

type=SYSCALL syscall=openat success=yes auid=devops comm="cat" key="sensitive_read"
type=PATH name="/etc/shadow"
[이후] cp /etc/shadow /tmp/.s (수집) → curl 유출(E32)
필드해석
comm=cat쉘 읽기(비서비스)
name=shadow해시 파일
success=yes읽기 성공
이후 cp·curl수집·유출

shadow 읽기 → 복사(수집) → 유출의 자격증명 탈취 체인을 연계로 탐지합니다.

8. SOC 관제 포인트

  • /etc/shadow 읽기 접근은 자격증명(해시) 탈취의 직접 시도입니다.
  • 정상은 인증 서비스(unix_chkpwd·sshd)만 접근 — 쉘 명령 읽기는 명백한 이상입니다.
  • 권한 완화(D09)→읽기→유출(E32) 연계가 전형적 공격 체인입니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_e,sensitive_access,">
  <rule id="104080" level="13">
    <if_sid>104000</if_sid>
    <field name="audit.file" type="pcre2">/etc/(shadow|gshadow)$</field>
    <field name="audit.comm" type="pcre2">^(?!(unix_chkpwd|sshd|login|passwd|systemd))[a-z]+$</field>
    <description>비인증 주체의 /etc/shadow 읽기 접근(자격증명 탈취)</description>
    <mitre><id>T1003.008</id></mitre>
  </rule>
</group>

정상 인증 프로세스(unix_chkpwd·sshd)는 화이트리스트로 제외합니다. 읽기 후 복사·유출은 상관(E42)으로 연계합니다.

10. 대응 방법

  1. 초기 확인 — shadow를 읽은 주체·방법·시점과 서비스 여부를 확인합니다.
  2. 범위 확인 — 읽기 후 복사(수집)·유출(E32)로 이어졌는지 확인합니다.
  3. 증거 확보 — shadow 접근 이벤트와 연계 로그를 보존합니다.
  4. 차단/조치 — 자격증명 탈취 정탐이면 세션 종료·전 계정 비밀번호 교체를 진행합니다.
  5. 재발 방지 — shadow 읽기 접근 탐지를 운영합니다.

11. 핵심 정리

접근 방법위험
cat/less shadow해시 읽기(크래킹)
cp shadow해시 복사(수집)
dd/xxd우회 읽기
서비스 인증정상
면접 포인트"shadow 읽기는 자격증명 탈취 시도 — 정상은 인증 서비스만, 쉘 읽기는 이상"

12. 다음 편 예고

다음 편 210. 중요 정보 접근 — 계정 정보(passwd) 접근 탐지 에서는 계정 정보 접근을 다루는 계정 정보(passwd) 접근 탐지를 다룹니다.


이전 편: 208. 중요 정보 접근 — 중요 정보 접근 이상 징후의 판정 기준
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글