157. 권한 변경 이상 — chown·chgrp 동작 원리와 로그 흔적

changseop lee·2026년 10월 7일

시스템 보안 · 취약점

목록 보기
157/450

시스템 보안 · 취약점 › D. 권한 변경 이상 징후 · 7/50편 (전체 157/450)
학습 단계: 권한 모델·기본 개념
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

chown/chgrp은 파일의 소유자·그룹을 바꿉니다. 권한 비트(chmod)와 함께 접근 통제의 다른 축입니다. 소유자를 바꾸면 그 사용자가 파일을 완전히 통제하게 되어, 중요 파일 탈취·권한 획득 경로가 됩니다.

chown 동작
 chown user file          → 소유자 변경
 chown user:group file    → 소유자+그룹
 chgrp group file         → 그룹만
 chown -R user dir        → 재귀(디렉터리 전체)

auditd 기록
 syscall: chown(92)/fchown(93)/lchown(94)/fchownat(260)
 proctitle: chown 명령줄
 PATH: ouid/ogid(이전 소유자/그룹)

PATH의 ouid/ogid가 변경 전 소유자를 보여줘, before/after 분석이 가능합니다.

2. 왜 중요한가

  • 중요 파일(설정·키)의 소유자를 자기 계정으로 바꾸면, 공격자가 그 파일을 자유롭게 변조할 수 있습니다(쓰기 권한 없이도 소유자로서).
  • /etc/passwd·/etc/shadow 소유권 탈취는 계정 조작(B영역) 경로가 됩니다.
  • chown -R로 디렉터리 전체 소유권을 바꾸면 대규모 탈취가 됩니다.

3. 핵심 명령어 / 설정

chown 입력의미위험
chown user 중요파일소유권 탈취높음
chown root:root 악성파일정상 위장중간
chgrp 특권그룹 file그룹 권한 획득중간
chown -R user dir재귀 탈취높음
PATH ouid이전 소유자분석 기준

4. 실습 (실습 예시)

# chown 로그 해석 (분석 방법)
sudo ausearch -k perm_change -i --start recent 2>/dev/null | grep -A3 'comm="chown"' | grep -E 'proctitle|ouid|name=' | tail

# 중요 파일 소유권 변경 식별
sudo ausearch -k perm_change -i --start recent 2>/dev/null | grep -E 'chown.*(/etc/passwd|/etc/shadow|/etc/sudoers|\.ssh)'

5. 정상 상태

$ (chown proctitle)
proctitle=chown apache:apache /var/www/html/uploads

관리자가 배포·서비스 구성으로 적절한 서비스 계정에 소유권을 주는 것은 정상입니다(웹루트를 apache에).

6. 이상 상태

$ (chown proctitle)
proctitle=chown devops /etc/passwd            (중요 파일 탈취)
proctitle=chown -R devops /var/backup          (백업 재귀 탈취)
  • /etc/passwd를 devops 소유로 → 계정 파일 변조 가능(B영역 계정 조작)
  • /var/backup 재귀 소유권 탈취 → 백업 데이터 통제(E영역 중요 정보)
  • 소유권 변경으로 쓰기 권한 없이도 파일 통제 획득

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

chown 로그 해석 예시입니다(가상의 예시 로그).

type=SYSCALL ... syscall=260 success=yes auid=devops uid=0 comm="chown" key="perm_change"
type=PATH ... name="/etc/passwd" nametype=NORMAL ouid=0 ogid=0
type=PROCTITLE ... proctitle=chown devops /etc/passwd
필드해석
proctitlechown devops(새 소유자)
PATH ouid=0이전 소유자: root
변경root → devops(탈취)
auid=devops행위자

ouid(이전)와 proctitle(이후)로 "root→devops" 탈취를 확정합니다.

8. SOC 관제 포인트

  • chown 로그는 PATH ouid(이전)+proctitle(이후) 로 소유권 before/after를 읽습니다.
  • 중요 파일(passwd·shadow·키)·백업의 소유권 변경, 재귀(-R) 탈취를 위험으로 봅니다.
  • 소유권 변경은 쓰기 권한 없이도 파일 통제를 주므로 chmod와 함께 감시합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_d,perm_change,">
  <rule id="103050" level="11">
    <if_sid>103000</if_sid>
    <field name="audit.proctitle" type="pcre2">chown.*(/etc/passwd|/etc/shadow|/etc/sudoers|\.ssh|/etc/ssh)</field>
    <description>중요 파일 소유권 변경(탈취 가능성)</description>
    <mitre><id>T1222.002</id></mitre>
  </rule>
</group>

중요 파일 소유권 변경은 높은 레벨로 둡니다. D19·21(소유자/소유권 탈취)에서 상세 탐지합니다.

10. 대응 방법

  1. 초기 확인 — chown 로그의 proctitle(이후)·PATH ouid(이전)로 소유권 변경과 위험을 확인합니다.
  2. 범위 확인 — 중요 파일·백업 소유권 변경의 대상·주체·세션을 확인합니다.
  3. 증거 확보 — chown audit 로그와 대상 파일 현재 소유자를 보존합니다.
  4. 차단/조치 — 비인가 변경이면 소유권 원복(root 복원)·세션 종료를 진행합니다.
  5. 재발 방지 — 중요 파일 소유권 변경 탐지를 운영합니다.

11. 핵심 정리

입력위험
chown user 중요파일소유권 탈취
chgrp 특권그룹그룹 권한
chown -R재귀 탈취
PATH ouid이전 소유자(분석)
면접 포인트"소유권 변경은 쓰기 권한 없이도 파일 통제를 준다"

12. 다음 편 예고

다음 편 158. 권한 변경 이상 — 권한 변경 이상 징후의 판정 기준 에서는 권한 변경 이상을 판정하는 권한 변경 이상 징후의 판정 기준을 다룹니다.


이전 편: 156. 권한 변경 이상 — chmod 동작 원리와 로그 흔적
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글