주요정보통신기반기설 기술적 취약점 분석 평가 방법 상세가이드/UNIX 서버 진단

2.9. SUID, SGID, 설정 파일점검 [U-13] (상) - 주요정보통신기반시설 기술적 취약점 분석 평가 방법 상세 가이드(2021)

재민스 2021. 11. 2. 21:49

가. 취약점 개요

    내용 : 불필요하거나 악의적인 파일에 SUID, SGID 설정 여부 점검

    목적 : 불필요한 SUID, SGID 설정 제거로 악의적인 사용자의 권한상승을 방지하기 위함

    보안 위협

-      SUID, SGID 파일의 접근권한이 적절하지 않을 경우 SUID, SGID 설정된 파일로 특정 명령어를 실행하여 root 권한 획득 가능함

    참고  

※ SUID: 설정된 파일 실행 시, 특정 작업 수행을 위하여 일시적으로 파일 소유자의 권한을 얻게 됨

※ SGID: 설정된 파일 실행 시, 특정 작업 수행을 위하여 일시적으로 파일 소유 그룹의 권한을 얻게 됨

불필요한 SUID/SGID 목록: 부록 참고

 

나. 점검방법

    대상 : SOLARIS, LINUX, AIX, HP-UX

    판단기준

-      양호 : 주요 실행파일의 권한에 SUIDSGID에 대한 설정이 부여되어 있지 않은 경우

-      취약 : 주요 실행파일의 권한에 SUIDSGID에 대한 설정이 부여되어 있는 경우

    점검 명령어

OS 점검 파일
SOLARIS, LINUX, AIX, HP-UX OS별 주요 실행파일에 대한 SUID/SGID 설정 여부 확인
 (※ 불필요한 SUID/SGID 목록: 부록 참고)
#ls –alL [check_file] | awk ‘{ print $1}’ | grep –i ‘s’
주요 파일에 불필요한 SUID/SGID 설정된   경우 아래의 보안설정방법에 따라 SUID/SGID를 제거함

 

다. 조치방법

    조치방법

    Step 1) 불필요한 SUID, SGID 파일 제거

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

    SOLARIS, LINUX, AIX, HP-UX

    Step 1) 제거 방법

        #chmod -s <file_name>

    Step 2) 주기적인 감사 방법

        #find / -user root -type f \( -perm -04000 -o -perm -02000 \) -xdev -exec ls –al {} \;

    Step 3) 반드시 사용이 필요한 경우 특정 그룹에서만 사용하도록 제한하는 방법

        일반 사용자의 Setuid 사용을 제한함 (임의의 그룹만 가능)

        #/usr/bin/chgrp <group_name> <setuid_file_name>

        #/usr/bin/chmod 4750 <setuid_file_name>

 

라. 조치시 영향

■    SUID 제거 시 OS 및 응용 프로그램 등 서비스 정상작동 유무 확인 필요