2010년 12월 10일 어나니머스(Anonymous)라는 해커 그룹은 오퍼레이션 페이백(Operation Payback)이라는 공격의 의도에 대한 발표문을 포스팅했다. 어나니머스는 위키릭스의 지원이 중단되자 관련되어 있는 그룹에 대한 DDoS 공격을 감행했다. 어나니머스의 해커는 발표문을 아무런 후처리 없이 포스팅했다. 발표문은 PDF(Portable Document Format) 파일로 배포되었는데, 메타데이터가 포함되어 있었다. 문서를 생성하는 데 사용된 프로그램이 자동적으로 문서의 작성자인 알렉스 타파나리스(Alex Tapanaris)라는 이름을 메타데이터로 포함시켜 저장한 것이다. 그리고 경찰은 며칠이 되지 않아 그를 체포했다.


어나니머스 해커 그룹의 일원을 체포하는데 유용하게 작용했던 문서 포렌식 수사를 파이썬으로 구현해본다. 아래 파일을 첨부한다.

출처 : http://www.wired.com/images_blogs/threatlevel/2010/12/ANONOPS_The_Press_Release.pdf


먼저 pypdf 라이브러리를 설치한다. 설치는 http://pybrary.net/pyPdf/ 에서 다운로드 하거나, pip를 사용해 손쉽게 설치할 수 있다.

PYPDF는 PDF문서를 관리하는 데 매우 훌륭한 유틸리티이며, 문서 정보를 추출하는 기능뿐만 아니라 문서를 분할, 통합, 잘라내기, 암호화, 해독하는 기능도 제공한다.


아래 소스코드는 PDF파일의 메타데이터를 분석하여 Author, Producer, Creator, CreationDate를 출력하는 파이썬 예제코드이다.


이제 터미널 창을 열어서 위의 소스코드에 해당 pdf파일을 파라미터로 실행한다.

pdfReader 스크립트를 어나니머스 발표문을 대상으로 실행하면 타파나리스의 체포에 핵심적인 역할을 한 메타데이터를 볼 수 있다.

다른 샘플로, 법제처에서 제공하는 형사소송법 pdf를 분석해보았다.


결과는 다음과 같다.

법제처 국가법령정보센터에서 HancomPDF소프트웨어를 사용하여 제작했음을 알 수 있다.
법제처 국가법령정보센터에서 HancomPDF소프트웨어를 사용하여 제작했음을 알 수 있다.

참고문헌 : 

  • Anonymous releases very unanonymous press release. Praetorian prefect. Retrieved from <praetorianprefect.com/archives/2010/12/anonymous-releases-very-unanonymous-press-release/>, 2010 December 10
  • Greek police cuff Anonymous spokesman suspect. The Register. Retrieved from <www.theregister.co.uk/2010/12/16/anonymous_arrests/>, 2010 December 16
  • Violent Python(A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers)
CPUU님의 창작활동을 응원하고 싶으세요?