1. Sob_PNG_Lv1.5

2. Explanation
처음 폴더를 열면 여러 text 파일과 PNG 파일이 들어있다. 우선 PNG extension을 가진 'Anonymous.png' 파일과 'Black Hat.png' 두 파일 모두 HEX editor를 이용하여 PNG format과 각각의 Chunk 구조를 분석해보았을 때 특별한 이상은 없었다.


그러나 두 파일 모두 낮은 압축률을 가지고 있기에 Bit Plane 방식으로 숨겨진 데이터가 있음을 유추해 볼 수 있었고, Openstego tool을 이용하여 각각의 PNG 파일에서 데이터를 추출 해보면



위와 같이 'Anonymous.png' 파일 안에는 'PassWord.txt' 파일과 'Blaack Hat.png' 파일 안에는 'Digital Forensic Love.docx' 파일이 숨겨져 있었다.

'Digital Forensic Love.docx' 파일을 실행시켜 보았을 때 위와 같이 정상적으로 열리지 않기에 HEX editor로 binary 데이터를 분석해본다.

분석 결과 DOCX extension의 header signature 값인 "50 4B 03 04"는 이상 없이 존재하지만 파일의 끝 부분에 ZIP extension의 footer signature 값이 존재한다. ZIP과 DOCX extension의 header signature는 동일한 값이 올 수 있기에 이 파일은 ZIP format임을 유추해 볼 수 있었고, extension을 ZIP으로 변경하여 실행시킨다.

변경한 'Digital Forensic Love.zip' 파일의 비밀번호는 위와 같이 'Anonymous.png' 파일에서 extract한 'PassWord.txt' 파일을 열었을 때 나온 값 'flag{pW_is_thIs!!}'을 입력한다.


그 결과 위와 같이 성공적으로 압축을 풀 수 있었고, 'Digital Forensic Love.zip' 파일 안에는 'Final_flag.pdf', 'it's Double!.txt', 'maybe this is a flag.png' 이렇게 3개의 파일이 존재하였다.

우선 'maybe this is a flag.png' 파일을 실행시켰을 때 이미지 파일이 명확히 나오지 않기에 손상된 파일임을 알 수 있고,

HEX editor로 분석 해본 결과 IHDR Chunk의 bit depth 값에 문제가 있음을 알 수 있다. color type 값인 “06”은 RGB + alpha 값을 가지며, bit depth에는 “08” 혹 은 “16” 값만이 올 수 있다. 그러나 위 사진에는 bit depth 자리에 “02”값이 위치하여 있다. 따라서 bit depth 값을 "08"로 수정하여 다시 파일을 열어보면


위와 같이 명확한 이미지 데이터를 얻을 수 있다. 위의 이미지 데이터로 구글 브라우저에서 이미지 검색 기능을 이용해본다.

위의 검색 결과의 빨간 네모 박스의 사이트에서 다시 한번 이미지 검색을 해보면 plain text를 Encode와 Decode 해주는 'cryptii' 사이트의 interface와 매우 유사하다는 것을 알 수 있다.
또한, 처음 폴더의 text 파일 들에서 유추해 보았을 때

'hacking.txt' 파일의 텍스트 데이터를 ASCII code로 변환해보면

`"base64 converter"` 라는 문자열이 나온다.

그리고 "Digital Forensic Love.zip" 파일에서 압축을 해제한 "it's Double!.txt" 파일에서


위의 사진처럼 "steganography" 문자열을 "maybe this is a flag.png" 이미지 데이터 속에서 사용했다고 추정되는 'cryptii' 사이트에서 'Base64' 암호화 방식으로 두 번 연속해서 Encode함을 유추해 볼 수 있었고 그 결과인 "YzNSbFoyRnViMmR5WVhCb2VRPT0="을 구한다.

그리고 다음 사진 속의 "Final_flag.pdf" 파일을 실행시킨 뒤에

방금 구한 값을 암호로 입력해보면

flag를 찾을 수 있다.
3. Reference
Google image search result : https://dokhakdubini.tistory.com/390
base64 Encode: https://cryptii.com/
ASCII code convert: https://ko.rakko.tools/tools/76/
위 문제는 아래의 블로그 운영자가 출제한 문제입니다.
'Digital_forensic > CTF' 카테고리의 다른 글
| [TetCTF 2024] TET & 4N6 Write-up (1) | 2024.05.29 |
|---|---|
| [Dreamhack] Snowing! Write-up (0) | 2024.01.28 |
| [DEBUG] upgradepng1.png Write-up (1) | 2024.01.27 |
| [DEBUG] ExpertPNG Write-up (1) | 2024.01.27 |
| [Sooboon] l'm s0o0o0o0o00o00o0o higH!!! Write-up (1) | 2024.01.26 |