SUID / SGID / Sticky Bit 권한 상승 Cheat Sheet

agnusdei·2025년 6월 8일

CTF

목록 보기
20/185

🧠 SUID / SGID / Sticky Bit 권한 상승 Cheat Sheet


✅ 퍼미션 구조 요약

[특수비트][사용자][그룹][기타]
   ↑        ↑      ↑     ↑
 SUID     rwx    rwx    rwx

예시: -rwsr-xr-x → SUID 설정된 실행 파일


🔐 1. SUID (Set User ID)

항목내용
✅ 역할실행 시, 파일 소유자 권한으로 실행됨 (보통 root)
⚠️ 주요 위험일반 사용자가 root 권한 명령어 실행 가능
📁 퍼미션 예시-rwsr-xr-x, 숫자: 4xxx
💡 실전 예/usr/bin/passwd (root 소유 + SUID)
🔍 확인 명령어find / -perm -4000 -type f 2>/dev/null
🎯 OSCP 포인트루트 SUID 바이너리에서 쉘 실행 가능 시 → root shell 획득 가능

👥 2. SGID (Set Group ID)

항목내용
✅ 역할실행 시, 파일 소유 그룹 권한으로 실행됨
📁 디렉토리에서의 역할디렉토리에 설정 시, 생성되는 파일/폴더가 같은 그룹 소유로 생성됨
📁 퍼미션 예시파일: -rwxr-sr-x, 디렉토리: drwxrwsr-x, 숫자: 2xxx
🔍 확인 명령어 (파일)find / -perm -2000 -type f 2>/dev/null
🔍 확인 명령어 (디렉토리)find / -perm -2000 -type d 2>/dev/null
💡 활용 포인트공격보단 공용 디렉토리 관리용으로 많이 사용됨

🧷 3. Sticky Bit

항목내용
✅ 역할디렉토리 내 파일 소유자만 삭제 가능하게 제한함
📁 퍼미션 예시drwxrwxrwt, 숫자: 1xxx
💡 일반 예시/tmp 디렉토리 → 누구나 파일 생성 가능하지만, 남의 파일은 삭제 불가
🔍 확인 명령어ls -ld /tmp 또는 find / -perm -1000 -type d 2>/dev/null
⚠️ 실전 포인트공격 대상은 아님 → symlink, race condition 공격 시 참고됨

🔢 특수 비트 숫자 요약

특수 비트설명퍼미션 숫자 예시
SUID사용자 권한으로 실행4xxx
SGID그룹 권한으로 실행2xxx
Sticky Bit디렉토리 내 삭제 제한1xxx
조합 가능 예시SUID+SGID=6xxx, 모두=7xxx 등6xxx, 7xxx

🛠️ 실전 확인 명령어 모음

# 🔍 SUID 바이너리 검색
find / -perm -4000 -type f 2>/dev/null

# 🔍 SGID 바이너리 검색
find / -perm -2000 -type f 2>/dev/null

# 🔍 Sticky Bit 디렉토리 검색
find / -perm -1000 -type d 2>/dev/null

🧒 어린이 요약 버전

“특수한 숫자 하나가 앞에 붙으면, 이건 특별한 파일이야!”

  • 4는 사용자 권한 따라간다SUID
  • 2는 그룹 권한 따라간다SGID
  • 1은 남의 파일 못 지운다Sticky Bit

📌 다음 단계 추천

SUID 권한 상승 실습 예제가 필요하다면 아래를 요청해보세요:

  • python, nmap, bash, perl, find 권한 상승 실습 예제
  • GTFOBins 기반 SUID 바이너리 분석법
  • /tmp 디렉토리를 활용한 race condition, symlink 공격 실습

profile
DevSecOps, Pentest, Cloud(OpenStack), Develop, Data Engineering, AI-Agent

0개의 댓글