참고 참고

참고 - EBS-backed Linux AMI 생성

처리 방법

  1. EC2 생성
  • AMI ID : ami-0d4bbf30d9907be82
  1. EIP 할당 및 접속
  • 취약점 조치
  1. AMI 이미지 생성

[1번]

■ 기준: /etc/pam.d/system-auth(common-auth) 파일에 아래와 같은 설정이 있으면 양호 ■ : (auth required /lib/security/pam_tally.so deny=5 unlock_time=120 no_magic_root) ■ : (account required /lib/security/pam_tally.so no_magic_root reset) ■ 현황

☞ /etc/pam.d/system-auth 파일 설정(auth, account)

User changes will be destroyed the next time authconfig is run.

auth required pam_env.so auth sufficient pam_unix.so try_first_pass nullok auth required pam_deny.so account required pam_unix.so password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= password sufficient pam_unix.so try_first_pass use_authtok nullok sha512 shadow

[2번]

■ 기준1: /etc/pam.d/su 파일 설정이 아래와 같을 경우 양호 ■ 기준2: 아래 설정이 없거나, 주석 처리가 되어 있을 경우 양호 ■ 기준3: su 명령 파일의 권한이 4750 이고 특정 그룹만 사용 할 수 있도록 제한 되어있으면 양호 ■ : (auth required /lib/security/pam_wheel.so debug group=wheel) 또는 ■ : (auth required /lib/security/$ISA/pam_wheel.so use_uid) ■ 현황

① /etc/pam.d/su 파일 설정

#auth required pam_wheel.so use_uid

② su 파일권한

-rwsr-xr-x 1 root root 32032 Apr 14 2022 /bin/su

③ su 명령그룹

  • su명령 그룹(명령파일): root:x:0:

Result=M/T

[3번]

“■ 기준: 패스워드 최소 길이가 8자 이상으로 설정되어 있으면 양호 ■ : (PASS_MIN_LEN 8 이상이면 양호) ■ 현황

◈Debian 현재 패스워드 정책 확인 Last password change : Dec 22, 2009 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : -1 Maximum number of days between password change : -1 Number of days of warning before password expires : -1

/etc/pam.d/common-password 파일 내용 (Debian 계열)

/etc/pam.d/common-password 파일이 없습니다.

Result=Disabled:Null

[4번]

■ 기준: 패스워드 최대 사용기간이 180일 이하로 설정되어 있으면 양호 ■ : (PASS_MAX_DAYS 180 이하이면 양호) ■ 현황

◈Debian 현재 패스워드 정책 확인 Last password change : Dec 22, 2009 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : -1 Maximum number of days between password change : -1 Number of days of warning before password expires : -1 PASS_MAX_DAYS 99999

Result=99999

[5번]

■ 기준: 패스워드 최소 사용기간이 1일로 설정되어 있으면 양호 ■ : (PASS_MIN_DAYS 1 이상이면 양호) ■ 현황

PASS_MIN_DAYS 0

Result=0

[6번]

■ 기준: /etc/profile 에서 TMOUT=600 또는 /etc/csh.login 에서 autologout=10으로 설정되어 있으면 양호 ■ : (1) sh, ksh, bash 쉘의 경우 /etc/profile 파일 설정을 적용받음 ■ : (2) csh, tcsh 쉘의 경우 /etc/csh.cshrc 또는 /etc/csh.login 파일 설정을 적용받음 ■ 현황

☞ 현재 로그인 계정 TMOUT

TMOUT 이 설정되어 있지 않습니다.

☞ TMOUT 설정 확인

① /etc/profile 파일

TMOUT 이 설정되어 있지 않습니다.

② /etc/csh.login 파일

autologout 이 설정되어 있지 않습니다.

③ /etc/csh.cshrc 파일

autologout 이 설정되어 있지 않습니다.

Result=M/T

[7번]

■ 기준: 불필요한 SUID/SGID 설정이 존재하지 않을 경우 양호 ■ 현황

주요정보통신기반시설 가이드 부록 기준 불필요한 SUID,SGID,Sticky Bit 설정 파일

-rwsr-xr-x 1 root root 41712 Aug 1 2018 /usr/bin/newgrp -rwsr-xr-x 1 root root 36176 Sep 24 2020 /usr/sbin/unix_chkpwd

SUID,SGID,Sticky bit 설정 파일 (상위 10개)

-r-xr-sr-x 1 root tty 15264 Aug 1 2018 /usr/bin/wall -rwsr-xr-x 1 root root 64160 Aug 1 2018 /usr/bin/chage -rwsr-xr-x 1 root root 78128 Aug 1 2018 /usr/bin/gpasswd -rwsr-xr-x 1 root root 41712 Aug 1 2018 /usr/bin/newgrp -rwsr-xr-x 1 root root 35952 Apr 14 2022 /usr/bin/mount -rwsr-xr-x 1 root root 57504 Jan 16 2020 /usr/bin/crontab -rwsr-xr-x 1 root root 32032 Apr 14 2022 /usr/bin/su -rwsr-xr-x 1 root root 27776 Apr 14 2022 /usr/bin/umount -rwxr-sr-x 1 root tty 19472 Apr 14 2022 /usr/bin/write —s–x–x 1 root root 147240 Feb 8 2021 /usr/bin/sudo

등 총 22개 파일 존재 (전체 목록은 스크립트 결과 파일 확인)

Result=22

[8번]

■ 기준: 불필요한 권한이 부여된 world writable 파일이 존재하지 않을 경우 양호 ■ 현황

World Writable 파일 (상위 10개)

srw-rw-rw- : root : root : /var/lib/gssproxy/default.sock drwxrwxrwt : root : root : /var/lib/docker/containers/e5a45c29cbcfd1e1a9c25273dfb3bdf07b8334111ca089b55ea465591598ffab/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/e65712b6cac554f72af0b66941282844cd011c3bc20629733690a31f5c07a7b1/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/c7ad27866d2fc10a6873c8ce16ad6056a9d3961f1e23e4de60bae643d35290bf/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/965d77ce6713b0c5db800526f77eef3b7b71b09ad517246afb2a82f0a4e952ef/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/153bc367267a2d9e935c8a63bbafc6516829931c87f014aea7cbfced54b02622/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/c0a34c528c36943d292e89d5760daf5007ab3422722a27ef538d8e9b27593b1b/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/c3bfc18f314926c952784cc721f6ca040a3706f22984433ff9734ebe070f6064/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/20afeeba0c4c3fe3c6057d0fb2570dd523738fb88caba330cb831af5eae048dd/mounts/shm drwxrwxrwt : root : root : /var/lib/docker/containers/9e00d742c23436adb7408b8d8a5d62ff102dfbb0257dbc0619e0fd9e913f536d/mounts/shm

등 총 1349개 파일 존재 (전체 목록은 스크립트 결과 파일 확인)

Result=1349

[9번]

■ 기준 : dev 에 존재하지 않은 Device 파일을 점검하고, 존재하지 않은 Device을 제거 했을 경우 양호 ■ : (아래 나열된 결과는 major, minor Number를 갖지 않는 파일임) ■ : (.devlink_db_lock/.devfsadm_daemon.lock/.devfsadm_synch_door/.devlink_db는 Default로 존재 예외) ■ 현황

-rwxr-xr-x 1 root root 0 Aug 25 07:04 /dev/termination-log

Result=M/T

[10번]

■ 기준1: /etc/hosts.deny 파일에 All Deny(ALL:ALL) 설정이 등록되어 있고, ■ 기준2: /etc/hosts.allow 파일에 접근 허용 IP가 등록되어 있으면 양호 ■ 현황

① /etc/hosts.allow 파일 설정

설정 내용이 없습니다.

② /etc/hosts.deny 파일 설정

설정 내용이 없습니다.

Result=M/T

[11번]

■ 기준: 로그기록에 대해 정기적 검토, 분석, 리포트 작성 및 보고가 이루어지고 있는 경우 양호 ■ 현황 ㅇ Opensearch 를 통한 주기적으로 로그 수집을 하고 있으나 수집된 로그에 대하여 정기적인 검토 및 분석이 이루어 지지 않고 있으므로 취약 처리”

[12번]

■ 기준: 패스워드 복잡도 설정이 되어있으면 양호 ■ 현황

◈Debian 현재 패스워드 정책 확인 Last password change : Dec 22, 2009 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : -1 Maximum number of days between password change : -1 Number of days of warning before password expires : -1



◈libpam-cracklib 모듈사용시_/etc/pam.d/common-password 파일 설정 확인 password [success=2 default=ignore] pam_unix.so obscure sha512 내용 확인 /etc/pam.d/common-password cat: /etc/pam.d/common-password: No such file or directory


Result=M/T

"