본문 바로가기
포렌식

[포마되 1주차] zipper (수)

by rlo_zll 2024. 7. 20.

우선 zip 파일을 열려고 했는데, 오류가 난다.

010 에디터로 열어보도록 하겠다.

이 부분을 보면, Line 56번에서 frFileName 오류가 난다고 한다.

그럼 FileName과 관련된 부분을 살펴보도록 하겠다.

이처럼 frFileNameLength는 십진수로 9001의 값으로 설정되어 있었다.

zip 파일의 File Name Length는 0x1A~0x1B 부분이다.

그런데 이 부분은 29 23으로 되어있었는데, File Name을 가리키는 부분인 0x1E~는 다 0으로 채워져 있었다.

우선 FileNameLength가 잘못되었다고 하니, 0이 총 8바이트가 채워져 있었고, 그렇다면 FileNameLength를 원래대로 바꿔주도록 하겠다.

08 00으로 바꿔주면 된다.

Local File Header의 값을 바꾼 것이니, Central Directory File Header 또한 바꿔주도록 하겠다.

해당 부분의 29 23으로 되어있는 것도 08 00으로 바꿔주었다.

근데 저장하고 열어주었는데, 폴더가 비어 있다고 나왔다.

그래 어쩐지 파일 이름이 다 00으로 채워져 있는 게 이상하긴 했어......

그러면 파일 이름 부분을 00이 아닌 실제 파일 이름의 바이트로 채워주도록 하겠다.

보통 zip 관련 문제를 예전에 풀어봤을 때, zip 파일 안에 txt 파일을 숨겨놓는 경우가 많다. 1주차이기도 하고..

그래서 파일 이름을 flag.txt로 바꿔보도록 하겠다.

이렇게 바꿔주고, 열어보도록 하겠다.

플래그가 출력되었다.

FLAG : PCTF{f0rens1cs_yay}