Digital Forensics

game 14 | suninatas

burrri 2023. 9. 19. 03:08

Digital Forensics 14번 

http://suninatas.com/challenge/web14/web14.asp

다운을 받아보니 다음과 같은 evidence.tar파일이 존재한다. 

리눅스에서 tar파일을 unzip해보자.

evidence 속의 passwd, shadow 추출

$tar [옵션] [파일 및 dir목록]

// 옵션 목록
-c : 파일압축
-x : 파일해제 
-f : 압축할 파일 이름 지정
-v : 작업과정 출력
-z : gzip 사용하여 작업
-j : bzip2 사용하여 작업
-C : 특정 dir에서 작업

 

 

 

/passwd : 사용자 계정과 관련된 정보를 저장하는 파일

사용자이름 : 패스워드 : UID : GID : comment : 홈dir : 로그인 쉘

 

/shadow : passwd파일과 함께 사용되어 사용자 계정과 관련된 비밀번호를 저장하는 파일

사용자이름 : 패스워드 : 마지막변경 : pw최소사용기간 : 최대 사용기간 : 경고 : 비활성화 : 만료일

이때, 두번째 필드는 암호화된 패스워드이며, $로 구별

//2nd field
$algorithm_id $salt $encrypted_password 

//
algorithm id: 해시id으로 6이면 SHA-512 
salt : 각 해시에 첨가하는 랜덤값 
encrypted_pw : 알고리즘 + salt로 pw를 암호화

 

 

 

우리가 원하는 것은 suninatas의 pw이니 위의 값은 지우고 suninatas사용자만 남겨서 파일을 수정해주었다.

 

패스워드에 대한 John-the-Ripper 공격을 실행해보자. 공격은 두 단계로 이루어진다. 

1. unshadowing단계 : /passwd와 /shadow 파일을 취합하여 공격을 준비 

2. 패스워드 리스트를 이용하여 unshadow된 파일을 대상으로 dictionary 공격을 수행한다. 

($ john --wordlist=/usr/share/john/password.lst victims_pwd로 시도했으나 실패함ㅎ 왜죠)

공격을 통해 suninatas의 password는 iloveu1임을 알 수 있다.

 

(참고)

https://gr-st-dev.tistory.com/246

https://blog.naver.com/buyyy/223173652564

'Digital Forensics' 카테고리의 다른 글

303-recovery and restoration | DFC 2022  (0) 2023.11.19
prob24 | xcz  (0) 2023.10.12
Window Search | Dreamhack  (0) 2023.09.25
volatility정리 및 Volatility Cridex, Olympic Destroyer 풀이  (0) 2023.05.09
디지털 포렌식이란?  (0) 2023.05.09