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

2.1. root홈, 패스 디렉터리 권한 및 패스 설정 [U-05] (상) - 주요정보통신기반시설 기술적 취약점 분석 평가 방법 상세 가이드(2021)

재민스 2021. 11. 1. 21:44

가. 취약점 개요

    내용

-      root 계정의 PATH 환경변수에 “.”이(마침표) 포함되어 있는지 점검

    목적

-      비인가자가 불법적으로 생성한 디렉터리 및 명령어를 우선으로 실행되지 않도록 설정하기 위해 환경변수 점검이 필요함

    보안 위협

-      root 계정의 PATH(환경변수)에 정상적인 관리자 명령어(: ls, mv, cp)의 디렉터리 경로 보다 현재 디렉터리를 지칭하는 “.” 표시가 우선하면 현재 디렉터리에 변조된 명령어를 삽입하여 관리자 명령어 입력 시 악의적인 기능이 실행 될 수 있음

    참고

-      환경변수: 프로세스가 컴퓨터에서 동작하는 방식에 영향을 미치는 동적인 값들의 집합으로 Path 환경변수는 실행파일을 찾는 경로에 대한 변수임

-

나. 점검방법

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

    판단기준

-      양호 : PATH 환경변수에 “.” 이 맨 앞이나 중간에 포함되지 않은 경우

-      취약 : PATH 환경변수에 “.” 이 맨 앞이나 중간에 포함되어 있는 경우

    점검 명령어

OS 점검 파일
SOLARIS, LINUX, AIX, HP-UX #echo $PATH
/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin/X11:
/usr/local/bin:/usr/bin:/usr/X11R6/bin:/root/bin
위와 같이 출력되는 PATH 변수 내에 “.” 또는, ::” 포함 여부 확인

    환경 설정 파일

SHELL에 따라 참조되는 환경 설정파일
/bin/sh /etc/profile, $HOME/.profile
/bin/csh $HOME/.cshrc, $HOME/.login, /etc/.login
/bin/ksh /etc/profile, $HOME/.profile, $HOME/kshrc
/bin/bash /etc/profile, $HOME/.bash_profile
홈 디렉터리에 설정된 값이 가장 늦게 적용되어 최종 PATH로 설정됨

 

 

다. 조치방법

 

    조치방법

-      root 계정의 환경변수 설정파일(/.profile, /.cshrc” 등)과 “/etc/profile” 등에서 PATH 환경변수에 포함되어 있는 현재 디렉터리를 나타내는 “.”을 PATH 환경변수의 마지막으로 이동

※ “/etc/profile, root 계정의 환경변수 파일, 일반계정의 환경변수 파일을 순차적으로 검색하여 확인

    SOLARIS, LINUX, AIX, HP-UX

    Step 1)  vi 편집기를 이용하여 root 계정의 설정파일(~/.profile /etc/profile) 열기

        #vi /etc/profile

    Step 2)  아래와 같이 수정

        (수정 전) PATH=.:$PATH:$HOME/bin

        (수정 후) PATH=$PATH:$HOME/bin:.

    ※ 환경변수 파일은 OS별로 약간씩 다를 수 있음

 

라. 조치시 영향

    일반적인 경우 영향 없음