Blog Content

    티스토리 뷰

    xcz.kr 1번문제 풀이

    [그림 1-1]


    ▣ 문제 개요

    문제를 들어가보면 타이틀에 End of Image (이미지의 끝) 라고 적혀있고 why so serious? 라는 png파일이 있다.  png 이미지파일을 hex editor로 열어보면 이미지의 끝에 힌트가 있지않을까 ? winhex를 이용하여 이미지를 열어보자 



    [그림 1-2]

    offset 첫부분을 살펴보면 png파일 header 시그니처 89 50 4E 47 0D 0A 1A 0A를 찾아볼 수있다.  header 시그니처를 찾아봤으니 이미지 끝에 있는 footer 시그니처를 확인해보자!


     

    [그림 1-3]

     png파일의 footer 시그니처는  49 45 4E 44 AE 42 60 82 로 알려져있지만 문제의 png 파일에서는 JPG파일의 footer 시그니처인 FF D9가 있다. 첫부분은 png header 시그니처인데 끝은 jpg footer 시그니처로 끝나고 있다.  문제의 타이틀 처럼 이미지 끝에 출제자가 장난을 친 것으로 추측된다. 문제 해결을 위해 png footer시그니처와 jpg header 시그니처를 찾아보자.



    [그림 1-4]

    winhex의 find hex values을 이용하여 png의 footer 시그니처를 검색해보았다.  png의 footer 시그니처는 마지막에 82가 짤려있었고 JPG의 header 시그니처 FF D8을 찾을 수 있었다. 겉면은 png파일이였지만 속에 숨겨진 정상적인 JPG파일이 있다는 것을 추측 할 수 있다. 그러면 정상적인 JPG 이미지를 추출하기 위해 JPG header와 footer( FF D8, FF D9)사이 값을 뽑아 JPG파일을 추출해보자. 



    [그림 1-5]

    png의 footer 시그니처는 마지막에 82가 짤려있었고 JPG의 header 시그니처 FF D8을 찾을 수 있었다. 겉면은 png파일이였지만 속에 숨겨진 정상적인 JPG파일이 있다는 것을 추측 할 수 있다. 그러면 정상적인 JPG 이미지를 추출하기 위해 JPG header와 footer( FF D8, FF D9)사이 값을 뽑아 JPG파일을 추출해보자.



    [그림 1-6]

    noname.jpg로 이미지가 하나 생성되었다. hex값을 확인해보니 header와 footer 시그니처가 정상적인 JPG파일이다. 이미지를 열어보자




    [그림 1-7]

    key 값을 암시하는 JOg-dragonKER(조커 드래곤..?)라는 텍스트를 보여주고있다. key값에 넣어보니 문제가 풀렸다! 


    문제에 대한 궁금점이나 잘못된 부분이 있으면 언제든지 댓글 환영합니다.

     



    참조 사이트 

    http://forensic-proof.com/archives/323 - 그래픽 파일 시그니처 











    'forensic' 카테고리의 다른 글

    [Cresendo] Event Log Problem 01  (0) 2018.02.27
    xcz.kr 36번 문제풀이  (0) 2017.11.14
    xcz.kr 22번 문제풀이  (0) 2017.11.13
    xcz.kr 17번문제 풀이  (0) 2017.09.13
    xcz.kr 13번 문제풀이  (0) 2017.09.11

    Comments