패스워드 정보를 평문으로 저장하는 경우 정보 유출 피해가 발생할 수 있으므로 암호화해 보호하고 있어야 한다.
패스워드 파일 보호(취약한 설정)
shadow 파일의 존재 유무를 파악하기 위해서 /etc 폴더로 이동한다.
ls 명령어를 이용해 shadow 파일이 존재하는지 확인한다.
ls 명령어는 파일 시스템의 구성 및 각 정보를 보여준다.
ls [Option] [파일 및 경로]
-a : (마침표)로 시작하는 파일을 숨기지 않고 보여준다.
-c : 수정된 날짜의 정렬로 보여준다.
-i : 각 파일의 고유 숫자를 보여준다.
-l : 길게 열거된 형식으로 사용한다.
-o : group 정보를 제외한 리스트 형식을 보여준다.
-r : 정렬된 역순으로 보여준다.
-s : 블록의 형태로 각 파일의 크기를 보여준다.
-S : 파일 사이즈 순서로 정렬한다.
-t : 수정된 날짜 순서로 정렬한다.
-u : 최근에 접속한 순서로 정렬한다.
-1 : 한열로 보여준다.
기본적으로 passwd 파일에 저장되어 있는 암호를 shadow 파일로 나눠서 보관되어 있는데, 취약한 설정을 통해 어떻게
보여지는지를 확인하기 위해서, 인위적으로 변경 했다.
/etc/passwd 파일에 두번째에 패스워드의 HASH 값이 저장되어 있는 것을 확인할 수 있다.
이 HASH 값을 추출해서, hash-identity와 같은 툴을 통해서 암호화 알고리즘을 알아내 hashcat을 사용한다면,
HASH 값에 해당하는 패스워드를 추출할 수 있게 된다.
패스워드 파일 보호(양호한 설정)
su는 Switch User로 현재 계정을 로그아웃 하지 않고 다른 계정으로 전환하는 명령어이다.
-c는 쉘을 실행하지 않고 주어진 명령만을 수행한다.
pwconv는 패스워드 정책을 바꾸는 명령어로, passwd 파일의 HASH 값을 추출해서, shadow 파일에 저장하게 된다.
두번째 필드가 바뀐 것을 확인할 수 있는데, HASH값에서 "x"로 바뀌었다, 이는 쉐도우 패스워드 정책이 적용되고 있다는 의미이다.
mbl3ck:x:501:501::/home/mbl3ck:/bin/bash
mbl3ck : 사용자 계정명
X : 패스워드, 패스워드는 Shadow 파일에 존재한다.
501 : UID, 일반 유저는 500부터 생성되게 된다.
501 : GID, 그룹아이디
/home/mbl3ck : 홈 디렉토리의 위치
/bin/bash : 사용자 시스템 로그인시 Shell의 위치
/etc/shadow 파일을 확인해보면 passwd 파일의 두번째 필드에 해당했던 값이 저장되어 있는 것을 확인할 수 있다.
쉐도우 정책을 해제하기 위해서는 pwunconv를 입력하면 된다.
'리눅스 > 주요정보통신기반시설_UNIX' 카테고리의 다른 글
[계정관리]1.5 CentOS 6.7 root 이외의 UID '0' 금지 (0) | 2019.03.15 |
---|---|
[파일 및 디렉토리 관리]2.1 CentOS 6.7 root 홈, 디렉터리 권한 및 패스 설정 (0) | 2019.03.14 |
[계정관리]1.3 CentOS 6.7 계정 잠금 임계값 설정(수정필요) (0) | 2019.03.13 |
[계정관리]1.2 CentOS 6.7 패스워드 복장성 설정 (0) | 2019.03.13 |
[계정관리]1.1 CentOS 6.7 root 계정 원격 접속 제한 (0) | 2019.03.13 |