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}
'문제풀이 > ctf.j0n9hyun.xyz' 카테고리의 다른 글
[HackCTF/Forensic] 6번 나는 해귀다 풀이 (0) | 2019.08.01 |
---|---|
[HackCTF/Forensic] 5번 세상에서 잊혀진 날 찾아줘! 풀이 (0) | 2019.07.31 |
[HackCTF/Forensic] 3번 So easy? 풀이 (0) | 2019.07.31 |
[HackCTF/Forensic] 2번 Question? 풀이 (0) | 2019.07.31 |
[HackCTF/Forensic] 1번 Welcome_Forensics 풀이 (0) | 2019.07.31 |