2P by neo 9일전 | favorite | 댓글 1개

오래된 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임