SuNiNaTaS의 31번문제 풀이입니다.
[FORENSIC]
* 안내 : 본 PDF 파일은 PC에 유해한 작업을 하지 않습니다. 단순 문제 풀이용입니다.
악성코드가 첨부된 PDF를 분석하여 Flag를 찾으세요.
인증키 형식 : lowercase(MD5(Flag))
http://ex3llo.tistory.com/33 게시글을 참고해서 풀어보았습니다.
https://blog.didierstevens.com/programs/pdf-tools/ 에서 pdfid.py를 다운받았습니다.
pdfid.py를 사용해 pdf 문서 구조를 확인했다. JavaScript 코드가 있는 것을 확인할 수 있다.
이제 이 자바스크립트 코드를 확인하기 위해 peepdf.py를 사용했다.
이 peepdf.py는 https://github.com/jesparza/peepdf 에서 다운받을 수 있습니다.
-i 옵션을 꼭 넣자.
먼저 30을 확인해 보았다.
코드가 나올 때 까지 쭉 쫓아가자..
37에서 코드가 나왔다!
코드 하단에 base64 인코딩 문자열이 있다. [따라하지 마세요!]
이 문자열을 가져다가 크롬 콘솔에 갖다 붙이고,
연결된 문자열을 가져다가 디코딩 사이트에서 디코딩을 돌렸다.
계속 하다보면 문자열이 줄어들고 있음을 알 수 있다.
...
...
으아아ㅏ아아ㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏ
다시 풀어야 겠다...
이어서 해보자.
36에는 아무것도 없다... 39에 %PDF가 보인다.
object 39에 pdf파일이 있는 것 같다. 이를 추출하기 위해 PDFStreamDumper.exe를 사용했다.
(이 프로그램을 보니 처음부터 이걸 사용했으면 되는게 아닌가 하는...읆...)
object 39을 pdf형식으로 추출했다.
pdf가 보호되어 있어서 https://smallpdf.com/unlock-pdf 이 사이트를 통해 잠금을 풀었다.
다시 PDFStreamDumper.exe 를 사용하니 object 7에서 플래그가 나왔다.
MD5(SunINatAsGOodWeLL!@#$) == 13d45a1e25471e72d2acc46f8ec46e95
'WAR GAME > SuNiNaTaS' 카테고리의 다른 글
SuNiNaTaS [FORENSIC 32번] 풀이 (0) | 2018.09.04 |
---|---|
SuNiNaTaS [FORENSIC 30번] 풀이 (0) | 2018.08.08 |
SuNiNaTaS [FORENSIC 29번] 풀이 (3) | 2018.08.08 |
SuNiNaTaS [FORENSIC 28번] 풀이 (0) | 2018.08.07 |
SuNiNaTaS [SYSTEM 27번] 풀이 (0) | 2018.08.07 |