본문 바로가기
공부/KISA

root 계정 su 제한 - KISA 주요정보통신기반시설 기술적 취약점 분석ㆍ평가 방법상세가이드

by Skogkatt의 개인 블로그 2020. 8. 4.
반응형

https://www.kisa.or.kr/public/laws/laws3.jsp

 

기술안내서 가이드 < 관련법령·기술안내서 < 자료실 : 한국인터넷진흥원

기술안내서 가이드 한국인터넷진흥원 기술안내서 가이드 입니다. 게시판 목록 보기 기술안내서 가이드 표 대분류 소분류 기술안내서 가이드 대상 수준 인터넷 진흥 및 이용 활성화 인터넷 진흥

www.kisa.or.kr


보안 가이드라인 - UNIX 서버 - 계정관리(선택사항) - root 계정 su 제한

취약점 개요

점검 내용

  • 시스템 사용자 계정 그룹 설정 파일(예 /etc/group)에 su 관련 그룹이 존재하는지 점검
  • su 명령어가 su 관련 그룹에서만 허용되도록 설정되어 있는지 점검

점검 목적

  • su 관련 그룹만 su 명령어 사용 권한이 부여되어 있는지 점검하여 su 그룹에 포함되지 않은 일반 사용자의 su 명령 사용을 원천적으로 차단하는지 확인하기 위함

보안 위협

  • su 명령어를 모든 사용자가 사용하도록 설정되어 있는 경우 root 계정 권한을 얻기 위해 패스워드 무작위 대입 공격(Brute Force Affack)이나 패스워드 추측 공격(Password Guessing)을 시도하여 root 계정 패스워드가 유출될 위협이 있음

점검대상 및 판단기준

대상

  • SOLARIS, LINUX, AIX, HP-UX 등

판단기준

양호
  • su 명령어를 특정 그룹에 속한 사용자만 사용하도록 제한되어 있는 경우
취약
  • su 명령어를 모든 사용자가 사용하도록 설정되어 있는 경우

조치방법

일반 사용자의 su 명령어 사용 제한
  • Step 1) Group 생성(생성할 그룹 요청, 일반적으로 wheel 사용)
  • Step 2) su 명령어  그룹을 su 명령어 허용할 그룹으로 변경
  • Step 3) su 명령어 권한 변경(4750)
  • Step 4) su 명령어 사용이 필요한 계정을 새로 생성한 그룹에 추가(추가할 계정 요청)

LINUX의 경우, PAM(Pluggable Authentiation Module)을 이용한 설정 가능

PAM(Pluggable Authentication Module): 사용자 인증하고 그 사용자의 서비스에 대한 액세스를 제어하는 모듈화 된 방법을 말하며, PAM은 관리자가 응용프로그램들의 사용자 인증 방법을 선택할 수 있도록 해줌


점검 및 조치 사례

OS별 점검 파일 위치 및 점검 방법

SOLARIS, LINUX, HP-UX, AIX
  • Step 1) "wheel" 그룹 (su 명령어 사용 그룹) 및 그룹 내 구성원 존재 여부 확인)
        #cat /etc/group
        wheel:x:10:root, admin
  • Step 2) wheel 그룹이 su 명령어를 사용할 수 있는지 설정 여부 확인

[SOLARIS]
-   #ls -al /usr/bin/su
    #chgrp security su
    #chmod 4750 su

[AIX] - #cat /etc/security/user ---> default의 "sugroup-staff" 설정 확인

[HP-UX] - #vi /etc/security ---> SU_ROOT_GROUP=wheel 설정 확인

  • Step 3) 파일 권한 확인
        #ls -l /usr/bin/su
        -rwsr-x--- /usr/bin/su (파일 권한이 4750인 경우 양호)
LINUX PAM 모듈 이용 시
  • Step 1) "wheell" 그룹 (su 명령어 사용 그룹) 및 그룹 내 구성원 존재 여부 확인
        #cat /etc/group
        wheel:x:10:root, admin=
  • Step 2) 허용 그룹 (su 명령어 사용 그룹) 설정 여부 확인
        #cat /etc/pam.d/su
        auth required /lib/security/pam_wheel.so debug
        group=wheel 또는, auth required
        /lib/security/$ISA/pam_wheel.so use_id

위에 설정이 적용되지 않는 경우아래의 보안설정방법에 따라 설정을 변경함

SOLARIS, LINUX, HP-UX
  • Step 1) wheel group 생성 (wheel 그룹이 존재하지 않는 경우)
        #groupadd wheel
  • Step 2) su 명령어 그룹 변경
        #chgrp wheel /usr/bin/su
  • Step 3) su 명령어 사용권한 변경
        #chmod 4750 /usr/bin/su
  • Step 4) wheel 그룹에 su 명령 허용 계정 등록
        #usermod -G wheel <user_name> 또는 직접 /etc/group 파일을 수정하여 필요한 계정 등록 wheel:x:10: -> wheel:x:10:root,admin
AIX
  • Step 1) wheel group 생성(wheel 그룹이 존재하지 않는 경우)
        #mkgroup wheel
  • Step 2) su 명령어 그룹 변경
        #chgroup wheel /usr/bin/su
  • Step 3) su 명령어 사용권한 변경
        #chmod 4750 /usr/bin/su
  • Step 4) wheel 그룹에 su 명령 허용 계정 등록
        #chgroup users=<user_name> wheel
        예) chgroup users=admin wheel
LINUX PAM 모듈을 이용한 설정 방법
  • Step 1) "/etc/pam.d/su" 파일을 아래와 같이 설정(주석 제거)
        auth sufficient /lib/security/pam_rootok.so
        auth required /lib/security/pam_wheel.so debug group=wheel
        또는,
        auth sufficient /lib/security/$ISA/pam_rootok.so
        auth required /lib/security/$ISA/pam_wheel.so use_uid
  • Step 2) wheel 그룹에 su 명령어를 사용할 사용자 추가
        #usermod -G wheel <user_name>
        또는,
        직접 "/etc/group" 파일을 수정하여 필요한 계정 추가
        wheel:x:10: -> wheel:x:10:root,admin
반응형

댓글