DINGA DINGA
article thumbnail
728x90

https://otterctf.com/challenges

 

OtterCTF

 

otterctf.com

 

1 - What the password?

먼저 파일을 다운로드하고 압축을 풀어 imageinfo 명령어로 확인해보았다.

volatility 경로로 이동 → python vol.py -f "파일" imageinfo

vmem 파일이 win7SP1x64 환경에서 찍힌 것을 확인할 수 있다.

 

다음으로 hivelist 명령어를 이용해 어떤 레지스트리가 있는지, 각 레지스트리의 가상 메모리 주소는 무엇인지 알아냈다.

python vol.py -f "파일" --profile=[운영체제종류] hivelist

 

얻은 주소로, SYSTEM과 SAM을 조합하여 hashdump를 통해 윈도우 비밀번호를 추출할 수 있다.

python vol.py -f "파일" --profile=[운영체제종류] hashdump -y [SYSTEM하이브파일] -s [SAM하이브 파일]

위와 같이 암호화된 해시값으로 출력되고, 계정 정보를 확인할 수 있다.

 

패스워드가 시스템 LSA 암호에 저장되어 있을 수도 있기 때문에 lsadump 플러그인을 이용해 조회했다.

python vol.py -f "파일" --profile=[운영체제종류] lsadump

Flag: MortyIsReallyAnOtter

 

 

2 - General Info

IP 조회를 위해 netscan 명령어를 사용했다.

volatility 경로로 이동 → python vol.py -f "파일" --profile=[운영체제종류] netscan

IP: 192.168.202.131

 

다음으로 printkey 플러그인을 이용해 PC명을 확인해보았다.

PC명은 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ComputerName에 들어있다.

python vol.py -f "파일" --profile=[운영체제종류] printkey -o [hive 가상 주소] -K [얻고 싶은 키 위치]

PC name: WIN-LO6FAF3DTFE

 

 

3 - Play Time

pslist 플러그인을 사용해 프로세스를 확인했다.

LunarMS.exe 게임을 하는 것을 알 수 있다.

Game name: LunarMS

 

이제 서버 IP를 확인하기 위해 해당 프로세스를 findstr으로 조회했다.

Server IP: 77.102.199.102

 

 

4 - Name Game

yarascan 플러그인을 사용해 계정 이름을 확인했다.

python vol.py -f "파일" --profile=[운영체제종류] yarascan -Y "[탐지패턴]" -p [조사할 PID]

Flag: 0tt3r8r33z3

 

 

5 - Name Game 2

yara rules를 이용해 닉네임을 탐지했다.

python vol.py -f "파일" --profile=[운영체제종류] yarascan --yara-rules=[yararule] -p [프로세스 pid]

문제에서 알려준 시그니처를 yara rule로 변환하면 {64 [6-8] 40 06 [18-18] 5a 0c 00 00} 이다.

Flag: M0rtyL0L

 

 

6 - Silly Rick

copy & paste를 한다고 했으므로 클립보드에 정보가 남아있을 것이다.

따라서 clipboard 플러그인을 사용해 확인해보았다.

volatility 경로로 이동 → python vol.py -f "파일" --profile=[운영체제종류] clipboard

Flag: M@il_Pr0vid0rs

728x90

'FORENSIC > 문제 풀이' 카테고리의 다른 글

[2012 HTP PreQual] Low  (0) 2021.05.05