CTF/HackCTF

[Forensic] Secret Document

Ron Weasley 2022. 3. 29. 20:05

문제를 한번 보겠습니다.

주어진 파일을 다운 받아서 열어 보겠습니다.

txt파일 3개가 있는데 flag.txt, hint1.txt, hint2.txt가 있습니다. 그런데, 3개의 파일 중 flag.txt만이 *이 있는것을 알 수 있습니다.

 

zip 파일에서 *은 암호가 걸려 있다는 뜻입니다. 근데 hint1과 2는 암호가 없으니까 한번 열어 보겠습니다.

해석을 하자면 패스워드가 존재한다고 생각하니?? 와 Brute-Force(무차별 대입 공격)은 하지말라는 것입니다.

결국엔 툴을 사용하지 않고 패스워드를 풀 수 있다는 것입니다.

자세한건 zip 구조 링크를 달아드릴테니 읽어보시길 바랍니다.

 

바로 설명을 하자면, zip구조에서는 암호가 걸려 있지 않아도 걸려있다고 할 수 있는 방식이 존재합니다.

그래서 위 사진처럼 flag.txt에 대한 Local File Header 부분만 추출해 왔습니다.

 

Local File Header는 시그니처가 50 4B 01 02로 시작하며 다음 파일의 Local File Header가 나오는 영역까지 표시를 할 수 있습니다. 간단하게 레이아웃을 보겠습니다.

빨간색 칸 안은 압축을 할 때 사용한 방법을 나타냅니다.

하나는 09 08, 하나는 00 00입니다.

 

쉽게 말해 "09 08은 이 파일에서는 암호화가 걸려 있는 것 처럼 하겠다" << 

"00 00은 암호가 걸려 있지 않다" << 로 이해를 하시면 됩니다.

 

그럼 문제에 따라 00 00으로 저 영역을 수정하겠습니다.

수정을 하고 저장을 하게 되면 제대로 압축이 풀리는 것을 확인할 수 있고, flag 값을 입력하시면 됩니다.

 

- zip구조 링크 -

https://lemonpoo22.tistory.com/13

 

'CTF > HackCTF' 카테고리의 다른 글

[Forensic] 나는 해귀다  (0) 2022.03.29
[Forensic] 세상에서 잊혀진 날 찾아줘  (0) 2022.03.29
[Forensic] So easy?  (0) 2022.03.29
[Forensic] Question?  (0) 2022.03.29
[Forensic] Welcome_Forensics  (0) 2022.03.29