CTF/N0named CTF

[N0Named CTF - Write Up][A] MagiclMAGE

Ron Weasley 2021. 8. 17. 21:15

  이번 시간에는 N0Named CTF사이트에 있는 문제 MagicMAGE에 대해서 Write Up을 작성할겁니다.

Write Up은 풀이(설명)라고 생각하면 됩니다.

 

  일단 포렌식 CTF는 보통 프리웨어인 hxd에디터를 무조건 사용한다고 봐도 무방합니다. 왜냐하면 우리는 hex값을 보고 파일마다 가지고 있는 고유 시그니처를 통해서 문제를 풀어야하는 경우가 많이 있기 때문입니다.

 

  그럼 바로 문제를 보도록 하겠습니다.

Question

주어진 문제는 이것입니다. 제목이 MagiclMAGE이고 점수는 5점을 준다는 뜻입니다. 그리고 mandu-png 파일이 하나 주어지는데 그럼 저 png파일로 가지고 Flag값을 찾으면 될거라고 생각할 수 있습니다. 그럼 파일을 다운 받아보겠습니다.

Question File

다운을 받으면 이렇게 나옵니다. 그럼 png파일은 사진이다 보니 안에 열어보면 플레그 값을 확인할 수 있다고 생각할 수 있으니까 한번 열어보겠습니다.

어라라...파일을 열어보니 파일 형식이 지원되지 않는다라는 문구가 나오네요??? 그럼 아까 제가 말씀드렸던 프리웨어인 hxd프로그램을 가지고 해당 파일을 열어보겠습니다.

hex value

음...이거만 보면 잘 모르겠죠?? 근데 아까 제일 위에보면 우리는 파일마다 고유의 시그니처 값이 있다고 했습니다. 그럼 png의 고유 시그니처 번호를 알아내서 hxd에디터를 고쳐주면 되겠네요?? 바로 해보겠습니다. 

 

png고유 시그니처 번호

Header Signature : 89 50 4E 47 0D 0A 1A 0A (png파일의 가장 처음에 나오는 시그니처)

Footer Signature : 49 45 4E 44 AE 42 60 82 (png파일의 가장 끝에 있는 시그니처)

 

Header Signature는 처음에 존재하는 시그니처입니다. 위 사진을 토대로 보겠습니다.

Header Signature

이 부분이 Header Signature인데 제가 적어놓은 Header Signature와 조금 다른모습이죠? 그럼 이 곳을 바꿔보겠습니다.

바뀐것이 보이나요?? 그럼 문제에서 주어진 손상된 png파일이 정상적인 png파일로 바뀐것입니다. 그럼 이제 파일을 저장한 곳으로 가서 사진을 한번 보면 이런식으로 정상적인 png파일이 하나 생성됩니다.

플래그 값이 보이시죠?? 그대로 문제에 가서 입력합시다~

오늘 처음 설명해보는 CTF Write Up인데 제가 설명충이라 어쩔 수 없이 간단한것도 길게 해버렸네요 ㅋㅋㅋㅋ

쉽게 푸는 방법은 그냥 시그니처 번호만 바꿔주면 바로 답이 나오는것입니다. 저 처럼 처음부터 모르는 사람들이 있을 수 있으니 길게 늘어쓴겁니다. 다음에는 다른 CTF문제인 "회사 찾기"에 대해 Write Up하겠습니다.