반응형

리눅스 서버 취약점 보안

 

취약점 점검항목: 11. 원격 로그인 또는 원격 쉘 등 사용 설정 유무

 

 

취약점 점검기준

  - 양호기준: r 계열 서비스가 비활성화 되어 있는 경우 양호합니다.
  - 취약기준: r 계열 서비스가 활성화 되어 있는 경우 취약합니다.

 

취약점 점검방법

  - sudo 권한이 있는 아이디 쉘 접속 후 루트 권한을 얻어서 작업하시길 바랍니다.
    $sudo su - 

 

  - LINUX: rsh, rlogin, rexec (shell, login, exec) 서비스 활성화 되어 있는 경우 취약합니다.

    #ls -alL /etc/xinetd.d/* | egrep "rsh|rlogin|rexec" | egrep -v "grep|klogin|kshell|kexec"

 

  - 최신버전 리눅스에서는 systemctl status로 확인 가능합니다.

    #systemctl status rsh.socket

    #systemctl status rlogin.socket

    #systemctl status rexe.socket

systemctl status rsh, rlogin, rexe.socket

 

  ※ rsh: TCP포트 512를 통해 리모트쉘. 컴퓨터 네트워크의 다른 컴퓨터에서 다른 사용자로 셸 명령을 실행할 수 있는 명령 줄 컴퓨터 프로그램 입니다.

      rlogin: TCP포트 513를 통해 통신 사용자가 네트워크를 통해 다른 호스트에 로그인할 수 있도록 해주는 프로그램 입니다.

      rexec: TCP포트 514를 통해 호스트에 지정된 리모트 시스템에서 지정된 명령을 실행하는 프로그램 입니다.

 

   - AIX
    #cat /etc/inetd.conf |grep rlogin (# 처리 되어 있으면 비활성화)

    #cat /etc/inetd.conf |grep rsh (# 처리 되어 있으면 비활성화)

 

  - HP-UX: r로 시작하는 필드 존재 시 취약합니다.
    #vi /etc/inetd.conf 

 

  - SunOS: r'command 서비스 활성화 되어 있는 경우 취약합니다.
    #svcs -a |grep rlogin

 

  - SunOS 5.10 이상 버전: r’command 관련 데몬 확인합니다.
    #inetadm | egrep “shell|rlogin|rexec”

 

 

취약점 조치방법

  - LINUX (xinetd일 경우)
    1. vi 편집기를 이용하여 /etc/xinetd.d/ 디렉터리 내 rlogin, rsh, rexec 파일을 연 후
    2. 아래와 같이 설정 (Disable = yes 설정)
    #vi /etc/xinetd.d/rlogin
    #vi /etc/xinetd.d/rsh
    #vi /etc/xinetd.d/rexec
service rlogin
{
  socket_type = stream
  wait = no
  user = nobody
  log_on_success += USERID
  log_on_failure += USERID
  server = /usr/sbin/in.fingerd
  disable = yes
}
    3. xinetd 서비스 재시작
     #service xinetd restart

 

  - LINUX (systemctl stop 및 disable 방법)

    #systemctl stop rsh.socket

    #systemctl disable rsh.socket
    #systemctl stop rlogin.socket

    #systemctl disable rlogin.socket

    #systemctl stop rexec.socket

    #systemctl disable rexec.socket

systemctl status rsh, rlogin, rexe.socket

 

  - AIX
    1. r 계열 서비스 활성화 여부 확인합니다.
    #cat /etc/inetd.conf |grep rlogin (# 처리 되어 있으면 비활성화)
    #cat /etc/inetd.conf |grep rsh (# 처리 되어 있으면 비활성화)

    2. /etc/hosts.equiv 파일은 TRUSTED 시스템을 등록합니다.
    3. .rhosts 파일은 사용자 별로 'r'command를 통해 접근이 가능하도록 설정할 수 있음($HOME/.rhosts) 

 

  - HP-UX
    1. r 계열 서비스 활성화 여부 확인 
    # vi /etc/inetdconf
    2. r로 시작하는 필드 주석처리 후 재가동
    # inetd -c

 

  - SunOS 
    1. r 계열 서비스 활성화 여부 확인 후 비활성화 조치
    #svcs -a |grep rlogin
    #svcadm disable svc:/network/login:rlogin

 

  - SunOS 5.10 이상 버전 
    1. r’command 관련 데몬 확인
     • svc:/network/login:rlogin
     • svc:/network/rexec:default
     • svc:/network/shell:kshell
    2. inetadm –d "중지하고자 하는 데몬" 명령으로 데몬 중지
    #inetadm -d svc:/network/login:rlogin
    #inetadm -d svc:/network/rexec:default
    #inetadm -d svc:/network/shell:kshell

 

 

리눅스(유닉스) 취약점 점검 전체보기

 

'리눅스(유닉스) 취약점 점검' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형
반응형

리눅스 서버 취약점 보안

 

취약점 점검항목: 10. 패스워드 관리를 위한 시스템 파일을 root만 수정 권한 소유

 

 

취약점 점검기준

  - 양호기준: /etc/passwd 파일 권한이 644 이하인 경우, /etc/shadow 또는 /etc/security/passwd 파일 권한이 400 이하인 경우 안전합니다.
  - 취약기준: /etc/passwd 파일 권한이 644 이하인 경우, /etc/shadow 또는 /etc/security/passwd 파일 권한이 400 이하인 경우 취약합니다.

 

 

취약점 점검방법

  - sudo 권한이 있는 아이디 쉘 접속 후 루트 권한을 얻어서 작업하시길 바랍니다.
    $sudo su - 

 

   - LINUX: /etc/passwd, /etc/shadow 파일권한 확인하기

    #ls -l /etc/passwd

    #ls -l /etc/shadow

/etc/passwd, shadow 파일권한

 

- SunOS: /etc/passwd, /etc/shadow 파일권한 확인하기

    #ls -l /etc/passwd

    #ls -l /etc/shadow

 

  - AIX: /etc/passwd, /etc/security/password 파일권한 확인하기

    #ls -l /etc/passwd

    #ls -l /etc/security/passwd

 

   - HP-UX: /etc/passwd, /etc/shadow, #ls -l /tcb/files/auth 파일권한 확인하기

    #ls -l /etc/passwd

    #ls -l /etc/shadow

    #ls -l /tcb/files/auth

 

 

 

취약점 조치방법

  - chmod 명령어로 소유자를 root로 바꿔줌

    #chmod 644 /etc/password

    #chmod 400 /etc/shadow

 

 

리눅스(유닉스) 취약점 점검 전체보기

 

'리눅스(유닉스) 취약점 점검' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형
반응형

리눅스 서버 취약점 보안

 

취약점 점검항목: 9. 패스워드 관리 시스템 파일은 슈퍼관리자만 수정 권한 소유

 

 

취약점 점검기준

  - 양호기준: 소유자 설정이 root일 경우 안전합니다.
  - 취약기준: 소유자 설정이 root가 아닐 경우 취약합니다.

 

 

취약점 점검방법

  - sudo 권한이 있는 아이디 쉘 접속 후 루트 권한을 얻어서 작업하시길 바랍니다.
    $sudo su - 

 

   - LINUX: /etc/passwd, /etc/shadow 소유자 확인

    #ls -l /etc/passwd

    #ls -l /etc/shadow

/etc/passwd, shadow 소유자

 

   - SunOS: /etc/passwd, /etc/shadow 소유자 확인

    #ls -l /etc/passwd

    #ls -l /etc/shadow

 

  - AIX: /etc/passwd, /etc/security/password 소유자 확인

    #ls -l /etc/passwd

    #ls -l /etc/security/passwd

 

   - HP-UX: /etc/passwd, /etc/shadow, /tcb/files/auth 소유자 확인

    #ls -l /etc/passwd

    #ls -l /etc/shadow
    #ls -l /tcb/files/auth

 

 

 

 

취약점 조치방법

  - chown 명령어로 소유자를 root로 바꿔줌

    #chown root /etc/password

    #chown root /etc/shadow

 

  - 데미안, 우분투 계열은shadow파일 그룹이 shadow임

    #chown root:shadow /etc/shadow

    

 

리눅스(유닉스) 취약점 점검 전체보기

 

'리눅스(유닉스) 취약점 점검' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형
반응형

리눅스 서버 취약점 보안

 

취약점 점검항목: 8. 안전한 비밀번호 설정(9자리이상 숫자 영문자 특수문자 혼용 , 정기적 변경)

 

 

취약점 점검기준

  - 양호기준: 영문∙숫자∙특수문자가 혼합된 9자리 이상의 패스워드가 설정된 경우 양호합니다.
  - 취약기준: 영문∙숫자∙특수문자 혼합되지 않은 9자 미만의 패스워드가 설정된 경우 취약합니다.

 

 

취약점 점검방법

  - sudo 권한이 있는 아이디 쉘 접속 후 루트 권한을 얻어서 작업하시길 바랍니다.
    $sudo su - 

 

  - LINUX: /etc/login.defs 파일 안에 PASS_MAX_DAYS 90 이상, PASS_MIN_DAYS 1 미만, PASS_MIN_LEN 9 미만 설정일 경우 취약하게 됩니다.

    #cat /etc/login.defs | grep PASS

비밀번호 사용기간 및 문자수 /etc/login.defs 설정

 

  - LINUX(레드햇, centos): /etc/pam.d/system-auth 파일 안에 

  - LINUX(데미안, 우분투): /etc/pam.d/common-auth 파일 안에  dcredit=-1 ocredit=-1 udredit=-1 lcredit=-1 라인이 없으면 취약하게 됩니다.

    #cat /etc/pam.d/common-auth

특수문자, 대소문자, 숫자 혼용 사용 확인하기

 

  - SunOS: /etc/default/passwd 파일 안에 NAMECHECK=no, MINALPHA=1 미만, MINSPECIAL=1 미만, MINDIGIT=1 미만 설정일 경우 취약하게 됩니다.
    #vi /etc/default/passwd

    

  - HP-UX: /etc/default/security 파일 안에  PASSWORD_MIN_UPPER_CASE_CHARS=1 미만, PASSWORD_MIN_LOWER_CASE_CHARS=1 미만, PASSWORD_MIN_DIGIT_CHARS=1 미만, PASSWORD_MIN_SPECIAL_CHARS=1 미만 설정일 경우 취약하게 됩니다.
    #vi /etc/default/security

 

  - AIX: /etc/security/user 파일 안에 minalpha=1 미만, minother=1 미만 설정일 경우 취약하게 됩니다.

    #vi /etc/security/user

 

 

 

 

취약점 조치방법

  - LINUX: /etc/login.defs 파일 안에 PASS_MAX_DAYS 90 이상, PASS_MIN_DAYS 1 미만, PASS_MIN_LEN 9 미만으로 수정 또는 신규입력 합니다.

    #vi /etc/login.defs 

 

  - LINUX: libpam-pwquality 필수 설치 (패스워드 설정 강화를 위한 pam 모듈)

    #apt-get -y install libpam-pwquality  

pam pwquality 설치

 

  - LINUX: pam-pwquality.so 파일이 존재하는지 find로 찾아보기

    #find / -name pam-pwquality.so

find pam-pwquality.so

 

  - /etc/security/pwquality.conf 파일안에 dcredit=-1 ocredit=-1 udredit=-1 lcredit=-1 수정 또는 신규입력

    #vi /etc/security/pwquality.conf

숫자, 대문자, 소문자, 특수문자 강제 입력

 

  - LINUX(레드햇, centos): /etc/pam.d/system-auth, /etc/pam.d/password-auth,파일 안에 

  - LINUX(데미안, 우분투): /etc/pam.d/common-auth, /etc/pam.d/common-password 파일 안에 

  - password required pam-pwquality.so enforce_for_root 삽입

  - password required pam-pwquality.so retry=3 삽입

    #vi /etc/pam.d/common-auth

/etc/pam.d/common-auth 에 pam_pwquality.so 추가

 

    #vi /etc/pam.d/common-password

/etc/pam.d/common-password 에 pam_pwquality.so 추가

 

- SunOS: /etc/default/passwd 파일 설정 

    #vi /etc/default/passwd

    NAMECHECK=yes

    MINALPHA=1 이상

    MINSPECIAL=1 이상

    MINDIGIT=1 이상 

 

  - HP-UX: /etc/default/security 파일 설정

    #vi /etc/default/security
    PASSWORD_MIN_UPPER_CASE_CHARS=1 이상
    PASSWORD_MIN_LOWER_CASE_CHARS=1 이상
    PASSWORD_MIN_DIGIT_CHARS=1 이상
    PASSWORD_MIN_SPECIAL_CHARS=1 이상

  - AIX: /etc/security/user] 파일 설정

    #vi /etc/security/user
    minalpha=1 이상
    minother=1 이상

 

 

리눅스(유닉스) 취약점 점검 전체보기

 

'리눅스(유닉스) 취약점 점검' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형
반응형

리눅스 서버 취약점 보안

취약점 점검항목: 7. 네트워크 서비스 데몬 권한 755 초과 여부 설정 확인

 

 

취약점 점검기준

  - 양호기준: (inetd) xinetd 파일에 Group, Others의 쓰기권한이 없는 경우 양호합니다.
  - 취약기준: (inetd) xinetd 파일에 Group, Others의 쓰기권한이 있는 경우 취약합니다.

 

 

취약점 점검방법

  - sudo 권한이 있는 아이디 쉘 접속 후 루트 권한을 얻어서 작업하시길 바랍니다.
    $sudo su -

 

  - LINUX: ls -alL /usr/sbin/xinetd 조회하여 Group, Others의 쓰기권한이 있는지 확인합니다.

    # ls -alL /usr/sbin/xinetd

/usr/sbin/xinetd 조회


  - HP-UX, SunOS, AIX: ls -alL /usr/sbin/inetd 조회하여 Group, Others의 쓰기권한이 있는지 확인합니다.

    # ls -alL /usr/sbin/inetd

 

 

 

취약점 조치방법

  - LINUX: ls -alL /usr/sbin/xinetd 조회하여 Group, Others의 쓰기권한이 있다면 권한 변경하여 쓰기 권한 제거

     #chmod 755 /usr/sbin/xinetd

     

  - HP-UX, SunOS, AIX: ls -alL /usr/sbin/inetd 조회하여 Group, Others의 쓰기권한이 있다면 권한 변경하여 쓰기 권한 제거

     #chmod 755 /usr/sbin/inetd

 

 

리눅스(유닉스) 취약점 점검 전체보기

 

'리눅스(유닉스) 취약점 점검' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형