WarGame/SuNiNaTaS

[SuNiNaTas] 써니나타스 28번 - FORENSICS

URL은 다음과 같다.

Game 28 (suninatas.com)

 

Game 28

않을까 걱정하다가 시름시름 앓고 있다는 전설이 있다.

www.suninatas.com


해결책

일단.... 문제를 만들어주신 heizelnet님께 감사드린다. down을 눌러서 다운로드를 하면 So_Simple.zip이라는 압축파일을 구할 수 있으나, 해제를 해보면 비밀번호가 걸려있는 것을 확인할 수 있다.

문제 content인 내용 중 "암호가 있기는 한 걸까?"라는 말이 마음에 걸린다. 어쩌면 암호는 없는데, 암호화가 되었습니다! 라는 플래그만 설정된건 아닐까? 여기서 위키찬스다

보고 계신 이것은 zip이라는 확장자의 header 구조이다. offset(0x6 ~ 0x7)은 다음과 같은 bit 특성을 가진다.

  • bit 0 : 암호화
  • bit 1~2 : 압축 옵션
  • bit 3 : 데이터 설명자
  • bit 4 : 향상된 압축해제
  • bit 5 : 패치 데이터 압축됨
  • bit 6 : 강한 압축
  • bit 7~10 : 미사용
  • bit 11 : 언어 부호화
  • bit 12 : 예약 비트
  • bir 13 : 헤더 마스크 값
  • bit 14~15 : 예약 비트

그렇다. So_Simple.zip의 비트의 Flags는 09 08로 이를 bit로 보면(00001000 00001001)이다.(리틀 엔디안!) 여기서 암호화를 나타내는 첫 번째 비트인 1을 0으로 바꾸어 08 08로 바꾸면 된다. 이 header는 압축파일 전역에서 확인할 수 있다.

전부다 오른쪽처럼 08 08로 바꾸어 주었다. 암축 해제는 문제없이 되었고, Am_I_KeyN.라는 파일들이 나오는데, 전부 바꾸었다면 Am_I_key.zip는 이상 없이 압축 해제할 수 있다. 안쪽에는 key를 base64로 표현한 txt 파일이 있다. decoding 하면 Auth Key를 구할 수 있다.