에이프스타인 PDF를 원본 인코딩 첨부파일에서 복원하기

2 days ago 4

  • 미 법무부가 공개한 에이프스타인 이메일 아카이브는 잘못된 인코딩과 과도한 검열로 인해 심각한 오류와 비판을 받고 있음
  • 일부 이메일에는 Content-Transfer-Encoding: base64 형식의 첨부파일이 그대로 포함되어 있어, 이 데이터를 복원하면 원본 PDF를 재구성할 수 있음
  • 그러나 OCR 품질 저하, Courier New 폰트의 1과 l 구분 문제, 잘못된 스캔 품질 등으로 인해 자동 복원이 거의 불가능한 상태
  • 작성자는 tesseract, Adobe Acrobat Pro, AWS Textract 등을 활용해 복원을 시도했으나, 모두 불완전한 결과를 얻음
  • 이 사례는 디지털 포렌식과 문서 복원 기술의 한계를 드러내며, 커뮤니티가 협력해 해결해야 할 기술적 도전 과제로 제시됨

법무부 공개 자료의 문제점

  • 최근 공개된 에이프스타인 아카이브는 공범 이름부터 무관한 여성 사진까지 과도하게 검열된 상태로 배포됨
    • 일부 파일은 Quoted-Printable 인코딩 오류로 손상되어 열람 불가 상태
    • 심지어 이메일 자격 증명이 노출되어 레딧 이용자들이 에이프스타인 계정에 접근할 수 있었음
  • 이러한 부실한 처리로 인해 Pam Bondi가 이끄는 법무부의 전문성 부족이 지적됨

base64 첨부파일 발견

  • 이메일 EFTA00400459에서 76페이지 분량의 base64 인코딩 데이터가 발견됨
    • 이는 DBC12 One Page Invite with Reply.pdf 파일을 SMTP 전송용으로 인코딩한 형태
    • 단순히 복사 후 base64 -d > output.pdf 명령으로 복원 가능해야 하지만, 실제로는 OCR 스캔본만 존재해 오류 다수 발생
  • OCR 결과에는 잘못된 문자 삽입, 누락, 비합법 base64 문자(예: [, ,) 등이 포함되어 디코딩 불가

OCR 및 폰트 문제

  • Adobe Acrobat Protesseract를 이용한 OCR 재처리 시도 결과, 모두 공백 삽입 및 문자 인식 오류 발생
  • tesseract는 문자 집합을 base64 유효 문자로 제한했음에도 라인 길이 불일치부분 인식 중단 문제 발생
  • 가장 큰 원인은 Courier New 폰트로, 1과 l의 구분이 거의 불가능함
    • 낮은 해상도 JPEG 스캔과 압축 아티팩트로 인해 시각적 식별조차 어려움
    • 이로 인해 수작업 교정이 필수적이며, 디코딩 시 1과 l을 바꿔가며 시도해야 함

복원 시도와 도구 비교

  • imagemagick과 ghostscript는 대용량 처리 중 메모리 초과로 실패, pdftoppm이 대안으로 사용됨
  • AWS Textract는 가장 나은 결과를 보였으나, 여전히 라인 길이 오차비결정적 결과 존재
    • 입력 이미지를 2배 확대하여 인식률을 높였으나 완전한 복원에는 실패
  • qpdf를 이용한 PDF 구조 복원 시도는 손상된 cross-reference 테이블로 인해 실패

커뮤니티 제안 및 후속 논의

  • 글 말미에서 작성자는 다른 첨부파일 복원 시도를 커뮤니티에 제안
    • Content-Transfer-Encoding과 base64 검색 시 일부 유용한 데이터 존재
  • 여러 사용자가 ML 기반 OCR, 폰트별 CNN 학습, crowdsourcing 캡차 방식 등 다양한 접근법 제시
    • 일부는 PDF 복원 성공 사례를 공유하며, pdfimages 사용이 pdftoppm보다 선명한 결과를 제공한다고 보고
  • 최종적으로, 1/l 구분 자동화 알고리듬, 스트리밍 디컴프레서 기반 오류 탐지, 픽셀 단위 비교 등 고급 복원 기법이 논의됨

기술적 의의

  • 이 사건은 디지털 문서 인코딩 오류와 OCR 한계가 실제 정보 접근을 어떻게 방해하는지를 보여줌
  • 법적 증거물의 디지털 처리 품질 관리문서 포렌식 자동화 기술의 중요성을 부각
  • 커뮤니티 협업을 통한 복원 시도는 공공 데이터 투명성 확보기술적 검증 가능성의 사례로 평가됨

Read Entire Article