CTFlearn의 쉰아홉번째 문제
이번 문제는 MISC 카테고리의 문제이다.
MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다.
그런데 사실 문제 풀어보면 스테가노그래피 문제라 포렌식 쪽으로 봐도 될 것 같다.
문제 설명을 읽어보면
타겟을 체포하기 위해 통신을 가로채서 이미지를 하나 획득했는데,
이미지를 통해 약속시간이 언제인지 알아내 달라고 한다.
문제에서 제공되는 파일은 clue.png 이고,
내용은 위에 있는것과 같다.
그냥 사각형 여러개 그려진 의미없는 그림처럼 보인다.
이 문제는 Stegsolve 라는 도구를 사용하면 풀 수 있다.
이전에 CTFlearn에서도 다루지 않았나 싶었는데,
CTFlearn에서는 처음 나온 유형이었고, 블로그에서는 관련된 문제들을 많이 다뤘었다.
(https://hackingstudypad.tistory.com/177)
(https://hackingstudypad.tistory.com/269)
(https://hackingstudypad.tistory.com/339)
(https://hackingstudypad.tistory.com/348)
아래 경로에서 Stegsolve.jar 파일을 다운로드 받을 수 있다.
(http://www.caesum.com/handbook/Stegsolve.jar)
Stegsolve를 실행시켜서 Open으로 이미지를 불러오면 된다.
아래쪽에 있는 <, > 버튼을 누르면
이미지의 alpha, blue, green, red, xor 등등 다양한 값을 조정한 형태를 보여주게 된다.
몇번 넘기다 보니 Red plane 0 에서 아래쪽에 안보이던 문자열이 보였다.
문자열 맨 앞에 == 이 보이는데
= 은 Base64에서 사용하는 패딩으로
저렇게 알수없는 알파벳+숫자들이 있는 데이터의 맨 끝이 = 또는 == 이라면
Base64 로 인코딩 되었다고 생각하면 거의 맞다.
이건 Base64가 거꾸로 쓰여있는 것이다.
CyberChef(https://gchq.github.io/CyberChef)에서 Base64 디코딩을 해보면
타켓의 약속시간이 언제인지 알아낼 수 있다.
'워게임 > CTFlearn' 카테고리의 다른 글
[CTFlearn] The adventures of Boris Ivanov. Part 1. - 포렌식 / Stereogram (68) | 2023.01.25 |
---|---|
[CTFlearn] Symbolic Decimals - 암호학 / Python (70) | 2023.01.23 |
[CTFlearn] Blank Page - 포렌식 / Unicode / HxD (56) | 2023.01.18 |
[CTFlearn] Tone dialing - 암호학 / DTMF (80) | 2023.01.16 |
[CTFlearn] PIN - 리버싱 / IDA (72) | 2023.01.13 |