포렌식 교육 4주차 문제에 해당하는 N0Named Wargame의 포렌식 분야 문제인
[A] 길에서 주어온 만두 문제 풀이입니다.
N0Named Wargame 사이트는 다음과 같습니다. (그림 클릭 시 이동)
필요한 도구와 개념을 학습할 수 있는 사이트
개념
우선 해당 문제는 스테가노그래피를 다룬 문제이므로, 해당 개념을 알고 있어야 합니다.
다음 사이트에서 충분히 학습하실 수 있으니, 꼭 참조하시길 바랍니다!
(https://bpsecblog.wordpress.com/2016/08/21/amalmot_4/)
암알못의 암호핥기 – 스테가노그래피
막내선원의 암알못 탈출기, 고전암호 마지막 챕터! 스테가노 그래피(Steganography)에 대해 알아봅니다 :) 이번 편에서는 고전 암호 중 스테가노그래피(Steganography)에 대해 알아보겠습니다. 스테가노
bpsecblog.wordpress.com
필요한 도구
파일의 원본 내용을 읽을 수 있는
HxD
(https://know0how.tistory.com/6)
[HxD] Hex Editor 프로그램 다운로드 및 사용법
Hex Editor(이하 Hxd), 헥스 에디터 또는 헥스 코드 에디터라는 명칭을 일컫고 있으며 이 프로그램에 대해 상세히 알고 시작하기 전에 기본적으로 알아둘 게 있습니다. 헥스(Hex)는 일반적으로 '십육
know0how.tistory.com
데이터를 숨기거나, 숨겨진 데이터를 추출할 수 있는
OpenStego
OpenStego
English | Español Introduction Welcome to the homepage of OpenStego, the free steganography solution. OpenStego provides two main functionalities: Data Hiding: It can hide any data within a cover file (e.g. images). Watermarking (beta): Watermarking files
www.openstego.com
위의 툴은 자바 기반이라서 그런지 JRE를 꼭 설치해야 사용할 수 있습니다.
JRE 설치 방법
(https://webnautes.tistory.com/1133)
Windows에 JRE 설치하는 방법
Windows에 Java SE Runtime Environment(JRE)가 설치되었는지 여부 확인 및 JRE 설치하는 방법을 다룹니다. JRE 설치 여부 확인 방법 JRE 설치 방법 JRE 설치 여부 확인 방법 명령 프롬프트를 실행하기 위해 윈도
webnautes.tistory.com
문제 풀이
자 그러면, 문제 풀이를 시작하겠습니다.
인형을 주웠는데, 비밀번호가 걸려있다고 합니다.
일단 문제 파일을 다운받아 봅시다.
마트료시카 인형 사진 파일입니다.
(음.. 암호가 걸려있을줄 알았는데?...)
우선, 이 파일을 분석해야 하니 HxD로 열어봅시다!
저는 항상 첫 번째로 헤더, 푸터 시그니처를 살펴봅니다.
(확장자가 잘못되었거나, 뭔가가 숨겨져 있을 수 있기 때문에..!)
살펴보니, 푸터 시그니처 뒤에 pass: 1234 라는 메시지가 담겨 있습니다.
의도적으로 암호를 알려준 것 같아요.
암호를 알았으니, OpenStego 툴을 이용해서 숨겨진 데이터를 추출해봅시다.
medium.png 파일이 나옵니다. 해당 파일도 마트료시카 인형 사진과 동일합니다.
(big -> medium 인걸 보니... 2 번 정도 더 해야 할 것 같다!)
HxD로 보았을 때 특이점은 없습니다.
마트료시카 그림을 통해서 여러 번 추출을 해야 함을 추론할 수 있습니다.
medium.png 파일을 한 번 더 추출하면
small.png 파일이 나옵니다.
small.png 파일을 한 번 더 추출하면
flag.txt 라는 파일이 추출되며, 플래그 값을 확인할 수 있습니다.
이렇게 문제가 해결됩니다.
푸터 시그니처 뒤에 메시지를 숨길 수 있다는 개념을 새롭게 알 수 있었다.
다만, 이게 스테가노그래피로 숨겨질 때의 암호이며,
추출할 필요가 있다는 사실을 어떤 근거로 추측하는지는 다소 의문이다..