linefeed.png 파일 다운로드받아 열어 보면 이렇게 RGB로 색 따온 것 같은 선 4개가 보인다.
확대해 봐도 플래그를 육안으로 확인할 수 있는 건 아닌 것 같아서,
HxD로 열어본다.
png 파일의 구조를 알아야 풀 수 있는 걸까?
...
<PNG 파일 구조>
- PNG 헤더 시그니처
- 89 50 4E 47 0D 0A 1A 0A (총 8byte)
- 청크
- Length: Chunk Data의 길이
- Chunk Type: 청크의 타입, 즉 IHDR, IDAT 등
- IHDR: PNG 파일의 기본 정보를 담고 있음. 언제나 13byte, 시그니처 바로 뒤에 붙음. Width(4bytes), Height(4bytes), Bit Depth(1byte), Color Type(1byte)
- IDAT: 실제 이미지 데이터가 들어가는 부분. 한 개의 PNG 파일은 여러 개의 IDAT 청크를 가질 수 있음.
- Chunk Data: 실제 데이터. 가변길이를 가짐
- CRC: 순환중복검사의 약자로 데이터에 오류가 있는지 확인하는 것
https://mineeeee.tistory.com/entry/PNG-%ED%8C%8C%EC%9D%BC%EA%B5%AC%EC%A1%B0
PNG 파일구조
안녕하세요! 이번에 디지털 포렌식에 입문하게 되어 먼저 PNG 파일을 공부해볼까 합니다! 저는 010Editor과 HxD라는 프로그램을 이용하니 참고하시길 바랍니다! (까는 법은 구글링...) 먼저 제가 가지
mineeeee.tistory.com
linefeed.png 파일을 다시 확인해 본다.
PNG 헤더 시그니처는 기본값과 동일하다.
바로 다음에 있는 IHDR 청크 값인데, 00 00 01 F0이 Width값, 00 00 01 A0이 Height 값인 듯하다.
16진수 값을 10진수로 변환해 보면 496*416 크기의 사진인데,
사진 속성에서 확인해 봐도 동일한 값임을 알 수 있다.
여기서 문제 풀이가 막혔는데, 구글링을 통해서 힌트를 얻었다.
일단 문제 지문에서 말하고 있는 "Something is broken."이 문제 파일이 손상되었음을 이야기한다는 것으로 파악하여,
사진 파일이 잘렸음을 의심하여 HxD에서 사진의 너비와 높이값을 높여 수정해 본다.
너비와 높이를 각각 100씩 높여 위와 같이 수정하였다.
저장하여 png 파일을 다시 확인했는데
어라... 뭔가 이상하다.
너비값을 너무 과하게 증가시킨 것 같아서, 너비를 조금 줄여 본다.
아래 사진은 너비가 02 F0인 상태.
좀 전보다는 더 글자의 형상이 보이는 듯함.
최대한 여러 번 수정을 거듭하며 플래그가 잘 보일 때까지 반복하다가 위와 같은 너비값을 설정함.
플래그를 찾아냈다!!
플래그 값으로 보아서는 너비 높이가 500*500이 되는 게 정확한 정답이었던 것 같긴 하다.
어찌 됐든 플래그는 찾았으니 풀이 성공!
'SWUFORCE > 워게임 풀이' 카테고리의 다른 글
[H4CKING GAME] Season1 : CODE (Forensics) (0) | 2024.11.19 |
---|---|
[H4CKING GAME] Season1 : cat (Forensics) (2) | 2024.11.10 |
[H4CKING GAME] Season1 : Easy (forensic) (0) | 2024.11.04 |
[H4CKING GAME] Season1 : Paint (forensics) (2) | 2024.11.04 |
[wargame.kr] md5 password (web) (0) | 2024.10.01 |