[U-13] Linux SUID SGID Sticky bit 찾기 - 특수 권한 점검


[U-13] 점검 항목입니다.
아래 명령어 하나로 우리 서버가 양호인지 취약인지 바로 판단할 수 있습니다.

조치가 필요하면 어떻게 고치는지, 점검 결과서에는 뭘 첨부해야 하는지까지 순서대로 정리했습니다.




1. 확인 명령어

sudo find / -xdev -type f \( -perm -4000 -o -perm -2000 \) -ls
sudo find / -xdev -type d -perm -1000 -ls

실제 출력은 서버 구성에 따라 달라질 수 있습니다.




2. 양호·취약 판단

구분내용
양호주요 실행파일의 권한에 SUID와 SGID에 대한 설정이 부여되어 있지 않은 경우
취약주요 실행파일의 권한에 SUID와 SGID에 대한 설정이 부여되어 있는 경우

확인 명령 결과를 위 기준과 비교해 바로 판단하세요.
취약이면 3번으로 이동합니다.




3. 취약이면 이렇게 조치

Step 1) 불필요한 SUID, SGID 파일 제거 Step 2) 아래의 목록 이외에 애플리케이션에서 생성한 파일이나, 사용자가 임의 로 생성한 파일 등 의 심스럽거나 특이한 파일의 발견 시 SUID 제거 필요

실제 조치 명령어 (배포판에 따라 경로·명령이 다를 수 있으니 실행 전 파일을 백업하세요. <계정명>처럼 꺾쇠로 표시된 부분은 실제 값으로 바꿔서 실행합니다):

sudo find / -xdev \( -perm -4000 -o -perm -2000 \) -type f 2>/dev/null
sudo chmod u-s,g-s <불필요한 파일경로>   # 용도 확인 후 제거
적용 전 확인
passwd 같은 정상 파일도 검색됩니다.
특수 권한을 일괄 제거하지 마세요.

조치 후 영향:
표준 배포판에 없는 불필요한 SUID/SGID만 제거하는 작업이라, su·passwd 등 필수 SUID를 건드리지 않으면 영향이 없습니다.
제거 전 파일 용도를 꼭 확인하세요.




4. 점검 결과 첨부(증적) 만들기

점검 결과보고서에는 보통 아래를 함께 첨부합니다.

1) 명령어 + 출력 화면

아래처럼 호스트명과 시각을 함께 붙여서 실행하면, 캡처 한 장에 호스트명·시각·결과가 함께 남습니다.

date; hostname; sudo find / -xdev -type f \( -perm -4000 -o -perm -2000 \) -ls

2) 설정 근거

관련 설정 파일 관련 확인 결과를 별도로 캡처합니다.

3) 판정 한 줄

"양호" 또는 "취약"과 이유를 캡처 아래 적어, 점검 결과표(작성상태)와 매칭되게 합니다.

취약 → 조치한 경우라면, 조치 전/후 캡처를 각각 남기세요.
변경 이력을 증빙하는 데 필요합니다.




5. 참고: 왜 점검하는 항목인가

SUID가 걸린 파일은 실행하는 순간 소유자(대개 root) 권한을 빌려오므로, 불필요한 SUID 파일은 그 취약점을 통해 root 권한을 얻는 통로가 됩니다.




6. 핵심 요약

U-13 SUID, SGID, Sticky bit 설정 파일 점검
① 위 명령어로 확인 → ② 기준과 비교해 양호/취약 판단 → ③ 취약이면 조치 후 재확인 → ④ 명령어+결과+판정을 캡처해 결과서에 첨부

참고자료: 주요정보통신기반시설 기술적 취약점 분석·평가 방법 상세가이드, Unix 서버, U-13; PDF 37–38쪽 (인쇄 29–30쪽)

Post a Comment

다음 이전