-
Multimedia - PNG파일에 숨겨진...$ 포렌식 $/$ 디지털 포렌식 with CTF $ 2019. 10. 20. 18:03
PNG파일은 2단계의 압축 프로세스를 거치게 되는데, 1단계 사전 압축과정에서는 필터 타입을 선택 하게 됩니다.
필터 타입의 종류는 아래와 같습니다.
- None
- Sub
- Up
- Average
- Paeth
이러한 필터 타입을 이용해서 PNG 파일에 데이터 은닉이 가능합니다.
제가 경험한 압축과 관련된 스테가노 그래피 는 해당 이미지의 IDAT 값에 해당하는 data를 decompressed 해서 나온데이터를 가지고 width*3+1 번 마다 존재하는 맨 앞 0번 인덱스 데이터를 비트화 해서 은닉 시키는 방법을 접해 본적이 있습니다.
문제 PNG 파일인 hidden.png 파일을 HxD를 이용해서 헤더를 확인해 보겠습니다.
빨간 박스는 PNG Signature 를 의미 합니다.
파란 박스는 Chunk Type를 의미합니다.
검정 박스는 해당 Chunk Type의 Data length를 의미 합니다.
이를 바탕으로 코드를 작성해 보겠습니다.
코드에 대한 해석은 따로 달지 않겠습니다.
직접 코드를 작성하고 직접 코드를 이해해 가면서 어떤식으로 은닉된 데이터를 추출해 내는지를 확인해 보시기 바랍니다.!
Flag : DrgnS{WhenYouGazeIntoThePNGThePNGAlsoGazezIntoYou}
출처 : 디지털 포렌식 with CTF
'$ 포렌식 $ > $ 디지털 포렌식 with CTF $' 카테고리의 다른 글
Multimedia - 저는 미치지 않았어요. (0) 2019.11.05 Multimedia - 플래그를 얻어라! (0) 2019.11.05 Network - DefCoN#21 #8 (0) 2019.09.18 Network - DefCoN#21 #7 (0) 2019.09.18 Network - DefCoN#21 #6 (0) 2019.09.18