GN⁺: ANC의 "Vula" 비밀 암호 코드 오픈 소스를 위한 오래된 ZIP 파일 해킹
(blog.jgc.org)오래된 ZIP 파일 해독하여 ANC의 "Operation Vula" 비밀 암호 코드 오픈 소스화
- 최근 30년 된 PKZIP 파일의 암호를 해독하여 남아프리카 공화국의 아파르트헤이트 시스템을 무너뜨리는 데 중요한 역할을 한 ANC의 "Operation Vula" 암호 코드를 분석함
- Operation Vula는 1980년대 후반 ANC 지도자들을 남아프리카로 침투시키고 지하 네트워크를 구축하는 작전이었음
- 이 작전은 8비트 컴퓨터, DTMF 톤, 음향 커플러 등을 사용하여 일회용 패드로 암호화된 메시지를 교환하는 방식으로 이루어졌음
암호화 시스템의 오픈 소스화
- Tim Jenkin이 암호화 시스템의 원본 코드를 오픈 소스화함
- Tim은 1991년 남아프리카로 돌아가기 전 모든 소스 코드를 암호화된 ZIP 파일로 압축했으나, 암호를 잊어버림
- 필자는 Tim의 요청에 따라 ALLBAS.ZIP과 CODMAY93.ZIP 파일을 해독하기로 함
ZIP 파일 해독 과정
- 당시 ZIP 형식에서 사용된 ZipCrypto 알고리듬에 대한 알려진 평문 공격을 활용함
- bkcrack이라는 오픈 소스 구현체를 사용하여 ZIP 파일의 특정 위치에서 12바이트의 평문을 예측함
- Tim이 제공한 다른 버전의 OLDCOD.ZIP 파일에서 첫 번째 파일 이름이 COMKEY.BAS임을 확인하고, 이를 통해 평문을 생성하여 공격을 시도함
- 23분 후 bkcrack이 ALLBAS.ZIP 파일의 키를 찾아내고, 같은 키로 CODMAY93.ZIP 파일도 해독함
프로그램 실행
- 두 개의 프로그램을 DOSBox에서 컴파일하고 실행함
- RANDOM.BAS는 일회용 패드로 사용할 랜덤 숫자 디스크를 생성하고, TECOD.BAS는 이메일을 통해 메시지를 암호화하고 해독하는 프로그램임
- 프로그램의 비밀번호는 TIMBOBIMBO로 설정되어 있음
GN⁺의 정리
- 이 글은 ANC의 비밀 암호 코드를 해독하여 오픈 소스화하는 과정을 다룸
- 역사적으로 중요한 암호화 시스템을 복원하고 분석하는 데 흥미를 느낄 수 있음
- 비슷한 기능을 가진 프로젝트로는 PGP(Pretty Good Privacy)와 GnuPG(GNU Privacy Guard)가 있음
Hacker News 의견
-
Vula 시스템의 사용성 부족이 실패의 원인이었음
- 자유를 위해 싸우는 헌신적인 활동가들이 있었지만 시스템을 제대로 사용하지 못했음
- 문서를 암호화하지 않고 남겨둠
- 키가 쉽게 얻어질 수 있었음
- 소프트웨어가 너무 번거로워서 중요한 통신을 암호화하지 않고 보냈음
- PGP 설정과 올바른 사용이 매우 어려움
- 보안은 사용성임
- Vula에 대해 더 자세히 쓴 글이 있음: 링크
-
보안 일회용 패드를 위한 숫자 생성기를 살펴봤음
- Melissa O'Neil이 자랑스러워할 만한 거의 pcg 수준임
- Powerbasic 시스템 Rand LCG를 사용하여 3개의 새로운 rand1-3 함수로 전환함
- 두 개는 다른 LCG를 사용함
- 코드 링크
-
남아프리카에서 많은 일을 겪었음
- GNU가 종말 시계를 되돌리기를 바람
- 추천 - Action Kommandant: Ashley Kriel의 삶을 엿볼 수 있는 다큐멘터리
-
TIMBOBIMBO 하하하하
-
Operation Vula에 대해 언급
- 8비트 컴퓨터, DTMF 톤, 음향 커플러 사용
- CIA/NSA가 Philips PX-1000을 사용한 Operation Vula를 알아챔
- DES가 내장된 제품을 필립스를 뇌물로 매수하여 백도어를 설치함
- 링크
-
[flagged]
-
"오래된" ZIP을 해독하려면 아카이브의 몇 글자를 알고 있을 때 가장 좋은 도구는 bkcrack임