179. 권한 변경 이상 — sudoers 규칙 변경 탐지

changseop lee·2026년 10월 7일

시스템 보안 · 취약점

목록 보기
179/450

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

선행 학습

1. 개념

4단계는 sudo·PAM·capability 등 권한 체계 자체의 변경을 다룹니다. 첫 번째는 sudoers 규칙 변경입니다. /etc/sudoers에 규칙을 추가하면 특정 사용자가 sudo로 root 명령을 실행할 수 있어, 영구적 상승 경로가 됩니다.

sudoers 규칙 변경 위험
 사용자 추가:    devops ALL=(ALL) ALL → devops가 sudo root
 NOPASSWD 추가:  devops ALL=(ALL) NOPASSWD: ALL → 비번 없이 (D31)
 명령 확대:       제한 규칙 → ALL로 확대
 위험 명령 허용:  특정 사용자에 /bin/bash 등

변경 방법: visudo(정상) vs 직접 편집·추가(의심)

B영역 37편이 "sudo 실행 이상"이라면, 여기서는 그 권한을 만드는 규칙 변경 자체를 탐지합니다.

2. 왜 중요한가

  • sudoers 규칙 추가는 재방문 없이 언제든 상승할 수 있는 영구 경로입니다.
  • 정상 변경은 visudo(문법 검증)로 하므로, 직접 편집·append는 의심 신호입니다.
  • 규칙 변경은 FIM(내용)과 접근 이벤트(perm_critical 와치)를 함께 봐야 합니다.

3. 핵심 명령어 / 설정

sudoers 변경효과위험
사용자 ALL 추가sudo root높음
NOPASSWD 추가비번 없는 상승매우 높음(D31)
명령 범위 확대상승 범위↑높음
include 추가sudoers.d 연계높음(D30)
visudo 정상 변경검증된 변경정상

4. 실습 (실습 예시)

# sudoers 규칙 변경 탐지 (분석 방법)
# sudoers 접근/변경 이벤트(와치)
sudo ausearch -k perm_critical,sudoers_change -i --start recent 2>/dev/null | grep -E '/etc/sudoers' | tail

# 현재 sudoers 규칙 중 위험 패턴(분석용 — 실제 자격 부여 금지)
sudo grep -nE 'ALL=\(ALL\).*ALL|NOPASSWD' /etc/sudoers 2>/dev/null

5. 정상 상태

$ (sudoers 변경)
14:10 auid=admin1 comm="visudo" /etc/sudoers (정상 편집)
$ (위험 패턴)
%wheel ALL=(ALL) ALL   (정상 그룹 규칙)

관리자가 visudo로 wheel 그룹 규칙을 유지·변경하는 것은 정상입니다(문법 검증 동반).

6. 이상 상태

$ (sudoers 변경)
03:30 auid=devops comm="vi" /etc/sudoers (직접 편집)
$ (위험 패턴)
devops ALL=(ALL) NOPASSWD: ALL   (신규 추가)
  • visudo가 아닌 직접 편집(vi) → 문법 검증 우회, 은밀 변경
  • devops에 NOPASSWD: ALL 추가 → 비번 없이 영구 상승(D31)
  • 비관리 계정 자기 규칙 추가 → 정탐(고위험)

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

sudoers 규칙 변경 흐름입니다(가상의 예시 로그).

type=SYSCALL ... comm="vi" auid=devops key="perm_critical"
type=PATH ... name="/etc/sudoers" nametype=NORMAL
[FIM] /etc/sudoers 내용 변경: + devops ALL=(ALL) NOPASSWD: ALL
[이후] sudo 실행(B영역 37) → root
흔적해석
comm=vi(not visudo)검증 우회 편집
대상 /etc/sudoers권한 규칙
FIM 추가 규칙devops 상승
이후 sudo상승 실행

접근(와치)+내용 변경(FIM)+이후 sudo 실행을 연계해 규칙 변경 상승을 포착합니다.

8. SOC 관제 포인트

  • sudoers 규칙 변경은 영구적 sudo 상승 경로를 만듭니다.
  • visudo가 아닌 직접 편집, NOPASSWD·사용자 추가가 핵심 위험입니다.
  • 접근(와치)+내용(FIM)+이후 sudo 실행(B37)을 연계로 탐지합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_d,sudoers_change,">
  <rule id="103270" level="13">
    <if_sid>103020</if_sid>
    <field name="audit.path" type="pcre2">/etc/sudoers$</field>
    <field name="audit.proctitle" type="pcre2">^(?!.*visudo)(vi|vim|nano|sed|tee|echo|cat)</field>
    <description>visudo 외 도구로 sudoers 직접 변경</description>
    <mitre><id>T1548.003</id></mitre>
  </rule>
</group>

sudoers 내용 변경은 FIM으로 병행 탐지하고, 추가된 규칙 문자열(NOPASSWD 등)은 D31에서 상세 탐지합니다.

10. 대응 방법

  1. 초기 확인 — sudoers를 변경한 도구(visudo 여부)·주체·시점을 확인합니다.
  2. 범위 확인 — 추가·수정된 규칙 내용(FIM)과 이후 sudo 실행을 확인합니다.
  3. 증거 확보 — sudoers 접근/변경 이벤트와 파일 내용(원본 대조)을 보존합니다.
  4. 차단/조치 — 비인가 규칙 제거·원복·세션 종료·상승 여부 조사를 진행합니다.
  5. 재발 방지 — sudoers 규칙 변경 탐지(와치+FIM)를 운영합니다.

11. 핵심 정리

변경위험
사용자 ALL 추가sudo root
NOPASSWD 추가비번 없는 상승
직접 편집(not visudo)검증 우회
include 추가sudoers.d 연계
면접 포인트"sudoers는 visudo로만 변경이 정상 — 직접 편집·NOPASSWD 추가는 영구 상승"

12. 다음 편 예고

다음 편 180. 권한 변경 이상 — sudoers.d 신규 규칙 탐지 에서는 sudoers.d 신규 규칙을 다루는 sudoers.d 신규 규칙 탐지를 다룹니다.


이전 편: 178. 권한 변경 이상 — 소유권·특수권한 변경 이상 종합 분석
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글