-
Digital Forensic Challenge 2019 AF300 문제풀이$ 포렌식 $/$ 포렌식 문제 풀이 $ 2019. 11. 16. 17:40
결국에는 USB와 전자메일을 입수 했고 그걸 분석해서 정보를 입수 하는 것이 문제인것 같습니다.
이메일을 번역해 보면 다음과 같이 나옵니다.
PDF 파일 찾고, 이전에 사용한 암호도 찾아야 하는 것 같습니다.
E01 파일이므로 FTK Imager 를 이용하겠습니다.
Information 폴더에서 1.pdf 를 발견했습니다.
1.pdf 는 삭제된 상태로 비밀번호가 걸려있으며, 2.pdf 도 비밀번호가 걸려있다.
Bob presentation.zip 파일은 삭제된 상태이지만 사이즈가 0이여서 복구도 불가능 하다.
binwalk 0280 를 해보면 End of Zip archive 문자열을 찾을 수 있습니다.
binwalk 1312 를 해보면 맨 아래에 Zip archive data file 이 있습니다.
실제로 010 editor를 이용해서 ZIP파일 구조를 확인해 보면 아래와 같습니다.
0x690000 에서 zip파일이 시작하는것을 알수 있고, 0x6a2000까지 데이터가 있습니다.
기존의 올바른 ZIP 파일이라면 50 4B 05 06 의 시그니처를 가진 HEX값이 존재 해야 하는데 없는 것으로 보아 뒤에 어떠한 값이 더 붙어야 한다는 것을 알 수 있습니다.
위의 hex 값을 가지고 extract.zip으로 파일을 만들어 보겠습니다.
원래 ZIP FILE을 열어보면 3개의 Record로 만들어져 있습니다.
1. ZIPFILERECORD ( 50 4B 03 04 )
2. ZIPDIRENTRY ( 50 4B 01 02 )
3. ZIPENDLOCATOR ( 50 4B 05 06 )
하지만 3개중 첫번째 Record만 있는 것으로 보아 나머지 부분을 찾아야 하는 것 같습니다.
일단 frData 는 frExtraField 이후 부터 입력이 되기 때문에 시작 주소는 0x3B입니다.
frData의 크기는 frCompressedSize 와 같아야 하는데 현재 1312 파일에서 카빙한 frData의 크기를 확인해 보면 0x11FFF - 0x3B + 0x1 = 0x11FC5 bytes 만큼 카빙을 해온 상태 입니다.
총 frData의 크기가 0x2381D 인것으로 보아 더 필요한 frData의 크기를 구해보면 0x2381D - 0x11FC5 = 0x11858 bytes 입니다.
그러면 이제 앞에서 봤던 0280 파일에서 End of Zip archive 문자열을 확인 했었으니 거기서 나머지 데이터를 찾아 보겠습니다.
일단 ZIPDIRENTRY 와 ZIPENDLOCATOR를 찾았기 때문에 필요한 frData 만 구해서 넣으면 될 것같습니다.
ZIPDIRENTRY의 시작 주소가 0x3A1858 이기 때문에 0x3A1858 - 0x11858 = 0x390000
0x390000~0x3A18B8 까지 카빙을 해서 뒤에 넣어보겠습니다.
압축 파일이 잘 복구 되었나 확인해 보겠습니다.
Bob presentation.pptx를 열어보면 2개의 슬라이드를 확인 할 수 있습니다.
마약의 가격이 2000$ 라는 것과 이전의 Password를 찾았습니다.
Previous PW : 20Gre@tJ0b!19
암호문이 필요했었던 1.pdf 파일을 Previous PW를 통해서 열어보겠습니다.
인천 국제 공항 8번 게이트에서 11월 19일 오전 9시 30분에 만나기로 되어있습니다. 하지만 익명의 정보원으로 부터 얻은정보에 따르면 subway and railway station 에서 만나기로 되어 있었는데 공항 사진과는 거리가 있는것 같아서 다른 데이터를 찾아야 하는 것 같습니다.
공항 사진 아래에 개체 2개가 있는 것을 파악하고 일단 개체를 추출하기 위해서 pdf lock을 풀어야 할 것 같습니다.
https://smallpdf.com 에서 PDF의 비밀번호를 이용해서 UNLOCK을 하고 https://pdfcandy.com/ 에서 pdf 에 있는 개체를 전부 추출 해보면 사진이 총 3개가 나오는데 아마 1개는 공항 사진이고 2개는 저 개체 사진인 것 같습니다.
나머지 2개는 파일의 hex값을 확인해 보겠습니다.
image--001.jpg 파일을 열어보았습니다.
헤더가 아예 깨졌지만 FF DB 와 FF C0 인것 으로 보아 jpg 파일이 맞는것으로 판단 됩니다.
image--002.jpg 도 마찬가지 입니다.
공항 사진을 한번 열어 보겠습니다.
똑같은 자리에 놓여져 있는 것으로 보아 공항사진의 FF DB 이전의 데이터인 enum M_ID SOIMarker 와 struct DQT dqt[0] 데이터를 복사해서 덮어버리겠습니다.
덮었더니 사진이 출력 됫는데 결과는 아래와 같습니다.
↑ image--001.jpg
↑ image--002.jpg
서울역 4번 출구에서 11월 19일 오전 7시 30분에 만나기로 되어있고 접선 남성의 인상착의는 빨간 장미를 가지고 있을 것이다 라는 것을 알게 되었습니다.
'$ 포렌식 $ > $ 포렌식 문제 풀이 $' 카테고리의 다른 글
Digital Forensic Challenge 2018 AF100 문제 풀이 (0) 2020.01.03 Digital Forensic Challenge 2019 ART100 문제풀이 (0) 2019.11.17 Digital Forensic Challenge 2019 AF200 문제풀이 (0) 2019.11.13 Digital Forensic Challenge 2019 AF100 문제 풀이 (1) 2019.11.12 [DEFCON DFIR CTF 2019] Triage VM Questions (0) 2019.09.12