[HackCTF/Forensic] 4번 Secret Document 풀이

2019. 7. 31. 23:32문제풀이/ctf.j0n9hyun.xyz

파일 다운로드 후 압축 해제를 하려고 하면

암호가 걸려있다.

내부 파일들 걍 한번 보면

flag.txt엔 암호가 걸려있고

hint1에서는 brute-force로 풀지 말라고 하고

hint 2에서 푸는법을 알려준다.

패스워드가 존재한다 생각하는가? -> 패스워드가 필요없게 해라 라고 알려줬으니

HxD로 파일 구조를 변경하기 위하여(암호가 필요없는 파일이 되도록) HxD에서 Flag.zip을 열어준다.

flag.txt 파일에 암호가 걸려있으므로 그 부분의 Central Directory를 보자.

http://blog.naver.com/PostView.nhn?blogId=koromoon&logNo=220612641115&parentCategoryNo=&categoryNo=&viewDate=&isShowPopularPosts=false&from=postView 를 참고하면 Central Directory에서 9~10번째 byte가 압축파일 flag이고

Signature: 4byte Version: 2byte Vers. need: 2byte Flags: 2byte

그 내용은 밑의 그림과 같다.

먼저 50 4B 03 04가 적혀있는 곳을 시작으로 하며, flag.txt가 포함된 부분을 보면 flag.txt에 관한 코드는 아래 부분이다.

9~10번째 byte가 flag이므로 보면 flags == 09 08이다.

리틀엔디안 방식으로는 08 09이므로 bit별로 값을 보면 flag는

0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1
bit 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

이고, bit 00에서 값이 1이므로 암호화가 되어있는것같다.

그래서 bit 00을 00으로 바꾸어서 flags는 08 08이 되게끔 수정해주면 문제 해결!

HackCTF{N0n3_9@$$w0rd}