| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- ctf
- frida
- XSS
- InsecureBank
- Strings
- binwalk
- Suninatas
- elasticsearch
- base64
- imageinfo
- igoat
- otter
- foremost
- filescan
- 2018
- CTF-d
- kibana
- diva
- Openstack
- lord of sql injection
- 안드로이드
- Volatility
- MFT
- dreamhack
- vulnhub
- ESXi
- 인시큐어뱅크
- beebox
- Docker
- SQL Injection
- Today
- Total
Information Security
MemLabs Lab 3 - The Evil's Den 본문
문제 설명
악성 스크립트가 제 시스템에 저장된 매우 비밀스러운 정보를 암호화했습니다. 정보를 복구해 주시겠습니까?
참고사항-1 : 이 챌린지는 깃발 1개로만 구성되어 있습니다. 깃발은 2개로 나뉩니다.
참고사항-2 : 두 번째 깃발을 얻으려면 첫 번째 깃발이 필요합니다.
이 과제를 해결하려면 이 추가 도구가 필요합니다.
$ sudo apt install steghide
이 랩의 플래그 형식은 다음과 같습니다. inctf{s0me_l33t_Str1ng}
메모리 덤프파일의 운영체제 버전을 확인하였습니다.
python vol.py -f MemoryDump_Lab3.raw imageinfo

cmdline 플러그인을 이용하여 명령줄을 확인해 보았습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 cmdline

명령줄 하단을 보게 되면 수상한 evilscript.py, vip.txt 파일을 확인할 수 있습니다.

evilscript.py 메모리 주소를 확인하였습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 filescan | findstr evilscript.py

dumpfiles 플러그인을 이용하여 evilscript.py 파일을 추출하였습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 dumpfiles -Q 0x000000003de1b5f0 -D dump

추출한 파일의 이름을 evilscript.py로 변경 후 코드 내용을 확인하였습니다.
스크립트 코드 내용은 vip.txt 파일을 XOR 연산한 다음 Base64로 인코딩합니다.

vip.txt 메모리 주소를 확인하였습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 filescan | findstr vip.txt

dumpfiles 플러그인을 이용하여 vip.txt 파일을 추출하였습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 dumpfiles -Q 0x000000003e727e50 -D dump

vip.txt 파일 내용을 보면 base64 암호화되어 있는 것을 알 수 있습니다.

CyberChef 사이트에서 "XOR Brute Force"를 사용하여 키를 해독할 수 있으며 이를 통해 Key = 03일 때 플래그 inctf{0n3_h4lf 값을 알 수 있습니다.

문제를 보면 Steghide는 이미지와 오디오 파일에 데이터를 숨길 수 있는 스테가노그래피 프로그램으로 JPEG와 BMP 이미지를 지원하므로 메모리에서 JPEG 이미지를 검색하기로 했습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 filescan | findstr ".jpeg"

dumpfiles 플러그인을 이용하여 이미지 파일을 추출하였습니다.
python vol.py -f MemoryDump_Lab3.raw --profile Win7SP1x86 dumpfiles -Q 0x0000000004f34148 -D dump

아래와 같이 suspision1.jpeg 이미지 파일을 확인할 수 있습니다.

steghide 설치를 진행하였습니다.

steghide를 이용하여 추출하려고 하면 비밀번호를 요구합니다.

참고 사항 2를 보면 " 두 번째 깃발을 얻으려면 첫 번째 깃발이 필요합니다." 비밀번호를 첫 번째 플래그 값을 입력하면 아래와 같이 secret.text 파일이 추출되는 것을 알 수 있습니다.

secret.text를 확인해 보면플래그 값을 알 수 있습니다.

'포렌식 > MemLabs' 카테고리의 다른 글
| MemLabs Lab 6 - The Reckoning (0) | 2025.12.11 |
|---|---|
| MemLabs Lab 5 - Black Tuesday (0) | 2025.12.11 |
| MemLabs Lab 4 - Obsession (0) | 2025.12.08 |
| MemLabs Lab 2 - A New World (0) | 2025.12.05 |
| MemLabs Lab 1 - Beginner's Luck (0) | 2025.12.05 |
