워게임/CTFlearn

[CTFlearn] abandoned place - 포렌식 / HxD

SecurityMan 2023. 1. 27. 11:00

 

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 가 늘어나면서 숨어있던 플래그가 나오게 된다.

반응형