PDF 파일 포렌식과 관련된 문제
이전에 Root Me에서 제공하는 유사한 문제를 다룬적 있었다.
(https://hackingstudypad.tistory.com/340)
문제에서 주어지는 것은
strange.pdf 파일이다.
열어보면 이런 내용으 들어있는데
스테가노그래피에 대한 설명인듯 하다.
그 외에 특별한 점은 발견할 수 없다.
http://sandsprite.com/blogs/index.php?uid=7&pid=57
PDF 파일을 분석할 때 유용한 도구인
PDFStreamDumper 가 있다.
위 링크에서 다운받아 설치가 가능하다.
해당 도구를 다운로드 받아 설치한 뒤
Load 버튼을 눌러 문제에서 주어진 pdf 파일을 로드시키면 위와 같은 화면이 나온다.
pdf 파일은 크게
PDF Header, Body, Cross Reference Table, Trailer 로 나누어져 있는데
그 중 Body 에 보통 데이터를 많이 숨긴다.
Body 에는 pdf 파일을 구성하는 각종 Object 들이 들어있다.
위 사진에서 보이는것 처럼 문제에서 주어진 pdf 파일은 44개의 Object 를 포함하고 있다.
Object를 하나씩 내려가면서 살펴보니
중간에 눈에 띄는게 하나 보였다.
뭔가 자바스크립트 코드처럼 보이는 내용이 보였다.
AES 로 암호화된 cipher 와 key 값이 적혀있었다.
require 되어있는 crypto-js 는
자바스크립트 라이브러리이다.
저걸 이용해 Decrypt 하는 코드를 작성하면 문제를 풀 수 있다.
라이브러리 설치하는건 귀찮으니 온라인으로 해결해본다.
온라인으로 crypto-js 를 테스트할 수 있는 사이트이다.
(https://codesandbox.io/s/cryptojs-test-nmemc?file=/src/App.js)
저기 예시로 적혀있는 코드를 적절하게 수정하면 문제를 풀 수 있다.
불필요한 Encrypt 를 지우고
ciphertext와 key 값을 올바른 위치에 넣어주면
이렇게 쉽게 Decrypt 할 수 있다.
오른쪽 화면에 나온 플래그를 제출하면 된다.
'CTF > 포렌식' 카테고리의 다른 글
[n00bzCTF] QRazy CSV - 포렌식 / PIL / QR코드 (69) | 2023.06.28 |
---|---|
[DanteCTF] Who Can Haz Flag - 포렌식 / Wireshark / Tshark / awk (81) | 2023.06.15 |
[HeroCTF] PNG-G - 포렌식 / Stegoveritas (99) | 2023.06.03 |
[HeroCTF] dev.corp 1/4 - 포렌식 / Access log (109) | 2023.05.31 |
[Space Heroes CTF] tarry Night - 포렌식 / HxD (49) | 2023.05.12 |