CTFlearn의 예순두번째 문제
이번엔 jpg 파일을 이용한 포렌식 문제인데
기존에 jpg 가 주어졌던 다른 포렌식 문제와는 조금 다른 유형이다.
문제 설명을 읽어보면
힌트가 주어져 있다.
hint: dimensions, dimensions, everything is in dimensions.
dimensions 차원이라는 뜻도 있지만 치수라는 뜻도 있다.
여기서 말하는 dimensions 는 주어지는 jpg 파일의 크기를 의미하는듯 하다.
문제에서 주어지는
abondoned_street_challenge2.jpg 파일이다.
버려진 거리의 사진인데 사진의 내용은 크게 중요하지 않다.
이번 문제를 풀려면 jpg 파일 헤더의 구조를 알아야 한다.
위키피디아에 관련된 내용이 나와있다.
FF D8 은 이미지의 시작을 의미하고,
FF C0 은 프레임의 시작을 의미하는데 여기에 width, height 정보가 들어있다고 한다.
HxD 프로그램을 이용해 주어진 abondoned_street_challenge2.jpg 파일을 열어본다.
아까 위키피디아에서 봤던 것처럼 FF D8 로 파일이 시작하는것을 볼 수 있다.
이런것을 파일 시그니처 라고 한다.
다음으로 FF C0 를 찾아본다.
FF D8 에서 그렇게 멀지 않은곳에 FF C0 가 위치해 있다.
여기서 세칸 떨어져있는 03 84, 07 E0 가 각각 height, width 를 의미한다.
16진수 03 84와 07E0 는
10진수로 각각 900과 2016 인데,
이는 이미지 속성에서 볼 수 있는
이미지 크기와 정확하게 일치한다.
문제의 힌트에서 치수가 중요하다고 했으니
이제 이 수치를 변경시켜 보면 될것이다.
높이를 한번 변경시켜 봤다.
03 84 를 05 84 로 바꿔주면 된다.
이렇게 바꾸면 높이가 900에서 1412로 바뀌게 된다.
바꾼뒤에 파일을 저장하고 다시 열어보면
height 가 늘어나면서 숨어있던 플래그가 나오게 된다.
'워게임 > CTFlearn' 카테고리의 다른 글
[CTFlearn] Help Bity - MISC / XOR (56) | 2023.02.03 |
---|---|
[CTFlearn] Exclusive Santa - 포렌식 / HxD / PIL (68) | 2023.02.01 |
[CTFlearn] The adventures of Boris Ivanov. Part 1. - 포렌식 / Stereogram (68) | 2023.01.25 |
[CTFlearn] Symbolic Decimals - 암호학 / Python (70) | 2023.01.23 |
[CTFlearn] Ambush Mission - MISC / Stegsolve (52) | 2023.01.21 |