IT 썸네일형 리스트형 [계정관리]1.10 CentOS 6.7 불필요한 계정 제거 OS나 Package 설치 시 Default로 생성되는 계정 및 이직자들의 계정들은 비 인가자의 공격(무작위 대입 공격, 사전 대입 공격)에 의해 패스워드가 유출될 위험이 존재한다. 불 필요한 계정 제거(취약한 설정) /etc/passwd 파일에서 OS나 Package가 설치되면서 생성될 수 있는 Default 계정이나 불 필요한 계정을 찾아봤을 때 매칭되는 계정들이 존재하는 것을 확인했다. 불 필요한 계정이 존재하는 것이므로 조치를 취해야한다. 불 필요한 계정 제거(양호한 설정) 불 필요한 계정에 대해서는 삭제를 해야 하지만, 지금은 주요정보통신기반시설 기술적 취약점 분석평가를 대상으로 실습을 하는 것이기 때문에 후에 어떤 계정이 필요할지 몰라, #(주석)처리를 할 것이다. [계정관리]1.9 CentOS 6.7 패스워드 최소 사용기간 설정 패스워드 변경 후 최소 사용기간이 설정되어 있지 않은 경우 사용자에게 익숙한 패스워드로 즉시 변동이 가능해, 같은 패스워드를 지속적으로 사용할 수 있게된다. 패스워드 최소 사용기간 설정(취약한 설정) /etc/login.defs 파일에 존재하는 패스워드 최소 사용기간을 확인했을 때 0으로 설정되어 있는 것을 확인했다. Default가 0으로 설정되어 있으므로 패스워드를 변경하더라도 바로 다시 변경할 수 있다. 패스워드 최소 사용기간 설정(양호한 설정) 패스워드 규칙을 최소 하루라도 사용을 해야지만, 변경이 가능하도록 변경했다. 이유는 악의적인 목적의 사용자가 패스워드를 탈취하는 도중 동일한 패스워드로 변경해서 사용했을 때, 그날 그 패스워드가 매칭이 될 수도 있기 때문에 최소 하루를 사용해야지 변경할 수.. [계정관리]1.8 CentOS 6.7 패스워드 최대 사용기간 설정 패스워드 최대 사용기간을 설정하지 않은 경우 비 인기자의 각종 공격(무작위 대입 공격, 사전 대입 공격 등)을 시도할 수 있는 기간 제한이 없으므로 공격자 입장에서는 장기적인 공격을 시행할 수 있어 시해애한 기간에 비례하여 사용자 패스워드가 유출될 수 있는 확률이 증가한다. 패스워드 최대 사용기간 설정(취약한 설정) /etc/login.defs 파일에 존재하는 패스워드 최대 사용기간을 확인했을 때 9999로 설정되어 있는 것을 확인할 수 있다. Default 자체가 9999로 평생 사용한다고 봐도 무방한 설정이다. 실제로 이렇게 사용할 경우 동일한 패스워드로 계속 사용하게 되므로, 악의적인 목적의 사용자가 패스워드 탈취를 시도할 때 무기한 적으로 수행할 수 있게된다. 패스워드 최대 사용기간 설정(양호한 .. [계정관리]1.7 CentOS 6.7 패스워드 복잡성 설정 패스워드 최소 길이 설정이 적용되어 있지 않거나 짧은 경우 비 인가자의 각종 공격(무작위 대입공격, 사전 대입 공격 등)에 취약하여 사용자 계정 패스워드 유출 우려가 있다. 패스워드 최소 길이 설정(취약한 설정) /etc/login.defs 파일을 보면 패스워드 최소 길이 설정의 Default 설정을 확인할 수 있다. 현재는 최소길이가 5로 설정되어 있는 것을 확인할 수 있다. 5자리의 패스워드의 경우 짧은 기간 내에 패스워드가 유출될 수 있다. 패스워드 복잡성 설정(양호한 설정) /etc/login.defs 파일에서 PASS_MIN_LEN을 5에서 9로 수정해줬다. 가이드에서는 8자리 이상이면 양호하다고 나온다. 주의할점은 새로 생성되는 계정부터 적용이 된다는 것을 기억해야 한다! [계정관리]1.6 CentOS 6.7 root 계정 su 제한 su 명령어를 모든 사용자 계정에서 사용하도록 설정되어 있는 경우 root 계정 권한을 탈취하기 위해 패스워드 무작위 대입공격(Brute Force Attack)이나 패스워드 추측 공격(Password Guessing)을 시도하여 root 계정 패스워드가 유출될 위험이 존재한다. root 계정 su 제한(취약한 설정) 일반 사용자의 계정으로 root 계정의 권한을 탈취하기 위한 시도를 지속적으로 할 수 있다. Default로 모든 사용자가 su를 사용할 수 있게 되어 있다. root계정 su제한(양호한 설정) /etc/pam.d/su 파일을 수정해 줘야 한다. 이중 pam_wheel.so의 주석을 해제해주면된다. pam_wheel.so 모듈은 root 권한을 얻을 수 있는 사용자를 wheel이라는 그룹으.. [계정관리]1.5 CentOS 6.7 root 이외의 UID '0' 금지 root 계정과 동일한 UID 계정이 존재하여, 비 인가자에 노출되었을 경우 root 계정 권한과 동일한 권한으로 시스템에 로그인하여 시스템 계정 정보 유출, 환경설정 파일 및 디렉터리 변조 및 삭제등의 행위를 해 시스템 가용성에 영향을 미칠 수 있는 위협이 존재하며, root와 동일한 UID를 사용하므로 인해 사용자 감사 추적 시 어려움이 발생하게 된다. root 이외의 UID가 '0' 금지(취약한 설정) UID 값을 0으로 지정하고 계정을 생성하려고하면, Error가 발생하게 된다. 원인은 이미 존재하기 때문에 에러가 발생하는 것으로 사료된다. 그렇다고 UID 값이 동일한 계정을 만들지 못하는 것은 아니다. -o 옵션을 사용한다면, 동일한 UID 값을 갖는 계정을 생성할 수 있다. 이 옵션은 UID .. [파일 및 디렉토리 관리]2.1 CentOS 6.7 root 홈, 디렉터리 권한 및 패스 설정 내부에 있을 수 잇는 악의적인 목적을 가진 사용자 및 악의적인 목적을 가진 외부 사용자가 현재 디렉터리에 악의적인 목적을 행하기 위해 기본 명령어와 동일한 이름의 파일을 생성해 뒀을 경우 $PATH의 제일 앞에 "."이나, ":"가 찍혀있을 때 기본 명령어가 실행되지 않고 악의적인 목적의 사용자의 의도에 따라 파일이 실행되게 된다. Root홈, 디렉토리 권한 및 패스 설정(취약한 설정) $PATH의 앞단에 "."이나, ":"이 포함되어 있다면, 현재 경로에 있는 파일을 먼저 바라보게 된다. 환경변수를 확인해보면, 현재 경로에 있는 파일을 먼저보게끔 변조가 된 것을 확인할 수 있다. 기본 명령어인 ls를 실행했을 때 디렉토리에 있는 내용(디렉토리, 파일 등)을 확인하는 것이 아닌 Hello를 출력시키는 것.. [계정관리]1.4 CentOS 6.7 패스워드 파일 보호 패스워드 정보를 평문으로 저장하는 경우 정보 유출 피해가 발생할 수 있으므로 암호화해 보호하고 있어야 한다. 패스워드 파일 보호(취약한 설정) shadow 파일의 존재 유무를 파악하기 위해서 /etc 폴더로 이동한다. ls 명령어를 이용해 shadow 파일이 존재하는지 확인한다. ls 명령어는 파일 시스템의 구성 및 각 정보를 보여준다. ls [Option] [파일 및 경로] -a : (마침표)로 시작하는 파일을 숨기지 않고 보여준다. -c : 수정된 날짜의 정렬로 보여준다. -i : 각 파일의 고유 숫자를 보여준다. -l : 길게 열거된 형식으로 사용한다. -o : group 정보를 제외한 리스트 형식을 보여준다. -r : 정렬된 역순으로 보여준다. -s : 블록의 형태로 각 파일의 크기를 보여준다. .. [계정관리]1.3 CentOS 6.7 계정 잠금 임계값 설정(수정필요) 계정 잠금 임계값 설정(취약한 설정) 로그인 시 계정 잠금 임계 값을 설정하지 않을 경우 악의적인 목적의 사용자의 무분별한 시도가 가능하게 된다.그렇기 때문에 계정 잠금 임계 값 설정을 해줘야 한다. system-auth 파일의 Default 셋팅을 보면 로그인 시도를 몇번을 하든 조치를 취하는 것이 없다. 로그인 시도를 몇번을 하든 계정이 잠기지 않고 시도할 수 있기 때문에 악의적인 목적의 사용자가 Brute force와 같은 공격을 수행할 수 있다. 계정 잠금 임계값 설정(양호한 셋팅) * pam_tally2.so는 로그인 시도 횟수를 헤아리는 모듈로 일정횟수 이상 실패시에는 접근을 차단 및 관리해주는 역할을 담당한다./etc/pam.d/sshd_config 파일에 pam_tally2.so 모듈을 이.. [계정관리]1.2 CentOS 6.7 패스워드 복장성 설정 패스워드 정책은 계정에 정책을 적용하는 것이라서, PAM에 있는 모듈을 통해서 정책을 지정할 수 있다. 이때, 사용하는 모듈이 바로 system-auth 모듈이다. 취약한 설정 system-auth 파일을 확인 시 로그인 시도 횟수가 3으로 지정되어 있는 것을 제외하고는 어떤한 설정도 되어 있지 않다. 제약이 없으니, 아주 심플한 패스워드로 변경이 가능하다.패스워드가 짧고 간단할 수록 탈취당할 수 있는 확률은 높아지게 된다. (양호한 설정) pam_cracklib.so 모듈은 사전(Dictionary)에 등록된 단어를 이용한 패스워드 설정 등을 방지하기 위한 비교 및 검사를 수행할 때 사용한다(password-auth, system-auth 등에 필수적으로 포함되게 된다.)패스워드를 최소 8자리를 만족하.. 이전 1 2 3 4 5 다음