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

1.14. 사용자 shell 점검 [U-53] (하) - 주요정보통신기반시설 기술적 취약점 분석 평가 방법 상세 가이드(2021)

재민스 2021. 11. 5. 14:30

가. 취약점 개요

    내용 : 로그인이 불필요한 계정(adm, sys, daemon )에 쉘 부여 여부 점검

    목적 : 로그인이 불필요한 계정에 쉘 설정을 제거하여, 로그인이 필요하지 않은 계정을 통한 시스템 명령어를 실행하지 못하게 하기 위함

    보안 위협

-      로그인이 불필요한 계정은 일반적으로 OS 설치 시 기본적으로 생성되는 계정으로 쉘이 설정되어 있을 경우, 공격자는 기본 계정들을 이용하여 시스템에 명령어를 실행 할 수 있음

    참고  

(Shell) : 대화형 사용자 인터페이스로써, 운영체제(OS) 가장 외곽계층에 존재하여 사용자의 명령어를 이해하고 실행함

 

나. 점검방법

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

    판단기준

-      양호 : 로그인이 필요하지 않은 계정에 /bin/false(/sbin/nologin) 쉘이 부여되어 있는 경우

-      취약 : 로그인이 필요하지 않은 계정에 /bin/false(/sbin/nologin) 쉘이 부여되지 않은 경우

    점검 명령어

OS 점검 파일
SOLARIS, LINUX,
HP-UX, AIX
#cat /etc/passwd | egrep “^daemon|^bin|^sys|^adm|^listen|^nobody|^nobody4|^
noaccess|^diag|^operator|^games|^gopher” | grep –v
“admin”

시스템에 불필요한 계정을 확인한 후 /bin/false(nologin) 쉘이 부여되어 있지 않은 경우 아래의 보안설정방법에 따라 설정을 변경함   (※ 불필요한 계정은 시스템 용도에 따라 차이가 있음)

 

다. 조치방법

    조치방법 : 로그인이 필요하지 않은 계정에 대해 /bin/false(/sbin/nologin) 쉘 부여

    SOLARIS, LINUX, AIX, HP-UX

    Step 1) vi 편집기를 이용하여 “/etc/passwd” 파일 열기

    Step 2) 로그인 쉘 부분인 계정 맨 마지막에 /bin/false(/sbin/nologin) 부여 및 변경

        (수정 ) daemon:x:1:1::/:/sbin/ksh

        (수정 ) daemon:x:1:1::/:/bin/false 또는, daemon:x:1:1::/:/sbin/nologin

 

일반적으로 로그인이 불필요한 계정 (※ 계정 설명: 부록 참조)
daemon, bin, sys, adm, listen, nobody, nobody4, noaccess, diag, listen, operator, games, gopher 일반적으로 UID 100 이하 60000 이상의 시스템 계정 해당

 

 

라. 조치시 영향

    일반적인 경우 영향 없음

    모호한 경우 “/etc/shadow” 파일에서 해당 계정에 패스워드 존재 여부로 확인