ID: level8
PW: break the world
1.
루트 디렉토리로 이동해서 find 명령으로 사이즈가 2700인 파일들만 출력했다.
📌 참고 !
우선, 텍스트 파일을 읽기 위해 /etc/rc.d 디렉토리로 이동하여 found.txt를 읽었다.
똑같은 문자열이 여러개 출력되었다. 패스워드 파일의 형식인 것 같으니 분석 해보자 ! (level8의 shadow 파일!)
패스워드 파일이란,
한 서버를 사용하는 사용자들의 모든 정보를 기록해 놓은 파일이다.
1 : 2 : 3 : 4 : 5 : 6 : 7 : 8 : 9
1: 사용자명
2: 패스워드
3: 패스워드 파일 최종 수정일
4: 패스워드 변경 최소일
5: 패스워드 변경 최대일
6: 패스워드 만료 경고 기간
7: 패스워드 파기 기간 (패스워드 파기 후 계정 비활성 기간)
8: 계정 만료 기간
9: 예약 필드
두 번째 항목이 패스워드를 일방향으로 암호화한 것이므로 저 것을 크랙하면 패스워드를 찾을 수 있을 것이다. (브루트포스 방식이나 딕셔너리 공격 ?)
'존 더 리퍼'라는 툴을 사용해 복호화를 해보자 !
💡 John the Ripper
- http://www.openwall.com/john/ 에 들어가면 다운 받을 수 있다. (맥, 리눅스, 윈도우 버전 다 있음)
- 취약한 패스워드를 사용하는 사용자의 패스워드를 알아낼 수 있는 툴이다.
- 취약한 패스워드를 가진 사용자가 존재하는지 확인하기 위한 도구로는 Crack, COPS, John the Ripper, NP asswd 등 다양함.
단 이들 도구는 시스템에서 암호화하여 보관하는 사용자의 패스워드를 직접적으로 복호화하지는 못함.
왜냐? 시스템에서 사용자 패스워드를 암호화할 때 복호화가 불가능한 단방향 함수를 사용하기 때문
→ 그래서 패스워드 점검도구에서는 사전 파일에 나오는 단어를 암호화하여 이를 시스템의 passwd 또는 shadow 파일과 비교함.
윈도우용 John the Ripper 을 다운 받아 실행한 사진이다. 실제 폴더에는 사전 파일이 존재했다.
level9:$1$vkY6sSlG$6RyUXtNMEVGsfY7Xf0wps.:11040:0:99999:7:-1:-1:134549524 내용을 텍스트 파일로 저장하여 John.exe 실행파일에 넣어줬더니, ppt 파일이 생겼다.
정리
john.exe -show [크랙하려고 하는 파일]
! 패스워드의 보안
최소 8자리를 유지하며 특수문자, 숫자, 영문자를 조합해서 패스워드를 만들면 해커 입장에서는 브루트 포스를 돌리는 경우에 시간이 크게 낭비될 것이다. 한 50%를 크랙할 쯤에 다시 패스워드를 변경하면 패스워드는 절대 크랙이 될 수가 없다. 즉, 패스워드는 어렵게 해라 ~
(2019.12에 작성한 글을 가져왔습니다.)
'Pwnable > FTZ' 카테고리의 다른 글
[FTZ] level 10 풀이 <공유메모리> (0) | 2024.01.18 |
---|---|
[FTZ] level 9 풀이 <BOF> (0) | 2024.01.18 |
[FTZ] level 7 풀이 <진법변환, ASCII> (0) | 2024.01.18 |
[FTZ] level 6 풀이 <bbs 해킹기법> (0) | 2024.01.18 |
[FTZ] level 5 풀이 <tmp> (0) | 2024.01.18 |