본문 바로가기

리눅스/주요정보통신기반시설_UNIX

[계정관리]1.4 CentOS 6.7 패스워드 파일 보호


패스워드 정보를 평문으로 저장하는 경우 정보 유출 피해가 발생할 수 있으므로 암호화해 보호하고 있어야 한다.


패스워드 파일 보호(취약한 설정)


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를 입력하면 된다.