ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Meepwn 2018 White snow, Black shadow Writeup
    System/CTF 2019. 3. 2. 22:06

    2018년 7월 Meepwn CTF에서 Forensic으로 출제된 문제다.


    evidence_3D71E1CC6B2599438A7C0173239A896E.zip


    [ 문제 ]

    파일이 하나 주어지고, 압축을 풀면 아래와 같은 이미지 파일을 볼 수 있다.


    [ evidence.jpg ]

    오.. 명탐정 코난

    뭔가 대게 이런 이미지 파일 문제들은 매직넘버로 장난친 경우가 많다.


    [ binwalk ]

    binwalk로 확인해보면, 그림파일 안에 JPEG말고 ZIP도 존재하는 것을 확인할 수 있다.


    그림 파일의 확장자는 .JPG로 Header는 'FF D8 FF E0' Footer는 'FF D9'로 구성되어 있다.


    그림파일의 데이터는 Footer(FF D9)까지만 유효하기 때문에, 그 뒤는 어떤 데이터가 있더라도

    그림파일에는 영향이 없다.


    따라서, HxD같은 바이너리편집기로 Footer시그니처를 찾아보면

    뒷 쪽에 .ZIP의 매직넘버를 확인할 수 있을 것이다.


    [ .JPG Footer ]

    'FF D9' 바로 뒤에 .ZIP매직넘버를 의미하는 'PK'(50 4B)가 존재한다.

    그리고 압축파일에는 'message.pdf'이 있음을 알 수 있다.


    [ PK(.zip) 파일 생성 ]

    위에 'PK'(50 4B)부터 파일의 끝까지 쭉 복사해서 새로운 파일을 만들어 붙여넣어 준다.

    그리고 .zip 확장자로 저장해주면 된다.


    [ 띠용? ]

    저장한 압축파일을 열어보면, 이런 오류가 발생한다.

    압축파일로 인식하긴 하지만, 분할 압축된 파일로 인식되고 있다.


    다시 HxD로 파일 매직넘버를 확인해보자


    [ ZIP 매직넘버 Diff ]

    왼쪽은 문제의 압축파일이고, 오른쪽은 정상적인 압축파일이다.

    둘의 차이를 보면, 50 4B 뒤에 숫자가 다름을 알 수있다.


    .ZIP의 시그니처 03 04부터 시작해서, 05 06 ... 이런식으로 분할 압축 파일을 관리한다.

    따라서, '05 06' 부분을 '03 04'로 바꿔준 다음 저장하면 정상적으로 파일이 열리게 된다.



    [ message.pdf ]

    pdf파일을 열면, 코난 도일의 메세지를 볼 수 있다.

    내용은 '때로는 지워야 비로소 보이는 것이 있다.'을 말하고 있다.


    pdftotext툴을 이용해 pdf의 글을 추출해 보도록 하자


    추출한 텍스트 파일을 열어보면, pdf파일에서는 볼 수 없었던 형식으로 글이 정렬되어 있다.

    저 문자들만 따로 떼오면

    MeePwnCTF{T3xt_Und3r_t3Xt!!!!}로 Flag형식이 완성된다.


    pdftotext툴을 사용하지 않고, 그냥 복붙을 하게 되면 저런 형식으로 정렬이 안된다.


    그럴때는 메세지의 내용처럼, 중간중간 내용들을 손수 찾아내주면 된다.

    본문을 번역해본 사람은 알겠지만, Flag값들이 중간중간 들어가 있어서 번역도 이상하게 된다.


    툴을 사용해도 되고, 손수 찾아서 Flag형식을 맞춰도 된다.


    재밌었던 문제였던 것 같다. :)

    'System > CTF' 카테고리의 다른 글

    [2019picoCTF] droids0  (0) 2019.10.12
    [64bit] FSB Exploit Generator  (0) 2019.07.10
    TUCTF2018 lisa Writeup  (1) 2019.01.14
    2018 CCE Qual Writeup - note [pwn]  (0) 2018.10.02
    CTF Tools 정리  (0) 2018.09.30

    댓글

Designed by Tistory.