일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Database
- Text
- 구현
- 인코그니토
- 사칙연산
- 써니나타스
- MySQL
- Web
- 백준
- SuNiNaTas
- Digital Forensics
- Python
- 정렬
- Network
- wargame
- C
- Incognito
- Web Hacking
- php
- N0Named
- writeup
- HackCTF
- cryptography
- CTF
- Forensics
- 문자열
- xcz.kr
- 수학
- 그리디 알고리즘
- misc
- Today
- Total
보안을 그리다, 훈이
[Forensics] 써니나타스(SuNiNaTaS) 28번 문제 풀이 본문
써니나타스(SuNiNaTaS) Forensics 분야 28번 문제를 풀어보았습니다.
매우 쉬운 문제라고 어필하고 있으며, '암호가 있기나 한건가!'라는 의미심장한 문구가 있는 것을 보아 Zip File Format의 Flags 필드 관련 문제라는 것을 유추할 수 있네요.
이전에 풀었던 HackCTF의 Secret Document 문제와 유사합니다.
[Forensics] HackCTF Secret Document(150p) Write Up
먼저, 주어진 첨부파일 'So_Simple.zip'을 다운로드해 봅니다.
역시나 잠겨있네요.
압축파일 내부를 보니 'Am_I_key.zip', 'Am_I_key2.txt', 'Am_I_key3.txt' 파일이 존재하며 모두 잠겨있다고 나오네요.
Hex Editor로 내부 구조를 살펴봅시다.
노란색으로 표시된 4byte는 각 파일의 헤더 시그니처이며, 다음 2byte는 Version, 그 다음 빨간색으로 표시된 2byte가 바로 Local File Header의 Flags 필드입니다.
[Forensics] ZIP File Format
자세한 설명은 위 링크를 참고해 주세요.
세 파일 모두 Bit Flags가 '09 08'이므로, 리틀엔디안 방식을 따라 '08 09'로 계산해봅시다.
Hex | 0 | 8 | 0 | 9 | ||||||||||||
값 | 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, Bit 03, Bit 11에 값이 존재하는 것을 확인할 수 있습니다.
필드
|
크기
|
설명
|
Flags
|
2 바이트
|
바이트 식별자
Bit 00 : 암호화된 파일
Bit 01 : 압축 옵션
Bit 02 : 압축 옵션
Bit 03 : 데이터 기술자(data descriptor)
Bit 04 : 강화된 디플레이션(deflation)
Bit 05 : 압축된 패치 데이터
Bit 06 : 강력한 암호화
Bit 07-10 : 사용하지 않음
Bit 11 : 언어 인코딩
Bit 12 : 예약
Bit 13 : 헤더값을 마스크
Bit 14-15 : 예약
|
여기서 Bit 00은 암호화된 파일을 의미하므로 값을 0으로 설정해주면, '08 08'이 되겠네요.
따라서, 모든 파일의 Local File Header - Flags 필드를 '08 08'로 수정하고 저장하면 정상적으로 압축이 풀립니다!
'Am_I_key.zip' 파일의 압축을 해제하면 'There_is_key.txt'의 내용을 볼 수 있습니다.
주어진 값을 Base64로 Decode 해봅시다.
Solve!
'Security > Wargame' 카테고리의 다른 글
[Web Hacking] HackCTF 마법봉(100p) Write Up (0) | 2021.12.28 |
---|---|
[Forensics] 써니나타스(SuNiNaTaS) 26번 문제 Write Up (0) | 2021.12.28 |
[Forensics] HackCTF 잔상(250p) Write Up (0) | 2021.12.24 |
[Cryptography] HackCTF Classic Cipher -3(200p) Write Up (0) | 2021.12.23 |
[Cryptography] HackCTF Classic Cipher -2(150p) Write Up (0) | 2021.12.22 |