문제 : Please find secret message from the iso linux message
image.zip 파일을 풀면 core-current.iso image 파일을 얻을 수 있다.
core-current.iso 파일은VMware 또는 QEMU와 같은 가상화 소프트웨어로 불러올 수 있다.
tool : Virtual Machine(VMware, QEMU)
※ QEMU란?
QEMU는 Fabrice Bellard가 만든 가상화 소프트웨어이다. X86 이외의 기종을 위해 만들어진 소프트웨어 스택 전체를 가상 머신 위에서 실행할 수 있다.
VMware를 사용한다면 [New Virtual Machine…]을 통해 가상 머신을 생성한다.
만약, QEMU를 통해 사용하고자 한다면 다음과 같다.
# apt-get install qemu-system-x86
# qemu-system-x86_64 –boot d –cdrom core-current.iso
문제를 풀기 위한 준비는 끝났다. 이제 어떻게 풀어나갈지 생각해보자.
우선, 문제의 이름을 보면 exec-dmesg이다. 문제를 보자마자 dmesg를 실행시키라는 느낌이 든다.
dmesg를 실행시켰지만 applet not found라는 구문이 뜬다.
※ dmesg란?
dmesg는 부팅하는 동안 커널의 기록을 남겨 놓는 로그 파일 중 하나이다. kernel 부팅 중에 에러를 확인하고 찾는데 많은 도움이 된다.
dmesg가 실행되지 않아 검색하는 도중 /proc/kmsg에 대해 알게 되었다. dmesg는 단지 /proc/kmsg 파일에 있는 내용을 읽어서 출력한다고 한다.
즉, 쉽게 말하자면 dmesg 대신 /proc/kmsg에 있는 내용을 읽어도 된다는 말이다.
SECCON CTF 플래그 형식이 SECCON{…} 이기에, /proc/kmsg 파일에 “SECCON” 필터링을 걸고 출력했다. 다음과 같이 flag 값이 뜨는 것을 볼 수 있다.
위의 방법 외에 find 와 grep 명령을 조합하여 flag 값을 구할 수 있다. 위 명령은 “모든 디렉터리 내 모든 파일 중에서 “SECCON”이라는 문자열을 가진 파일을 보여달라.”는 의미이다.
'ctf' 카테고리의 다른 글
[CodeGate 2013 CTF] binary 100 (1) | 2016.01.04 |
---|---|
[CSAW 2013 CTF] DotNetRevering.exe (0) | 2016.01.04 |
[CSAW 2013 CTF] csaw2013reversing1.exe (0) | 2015.12.31 |
[CSAW 2013 CTF] csaw2013reversing2.exe (0) | 2015.12.31 |
[SECCON 2015 CTF] reverse-engineering-android-apk-1 (0) | 2015.12.27 |