소개
iTunes Backup Reader는 Python 3로 작성된 스크립트로, iTunes가 생성한 백업 파일을 파싱하여 내부 구조를 분석하고 데이터를 추출할 수 있게 해주는 도구입니다. 주로 개발자나 고급 사용자가 백업 데이터를 직접 확인하거나 필요한 파일을 꺼내는 용도로 사용됩니다. 이 도구는 암호화되지 않은 백업의 파일 구조를 재구성하고, 설치된 애플리케이션 정보, 기기 세부 정보 등을 추출할 수 있습니다.
상세정보
백업 파일 파싱 및 데이터 추출
iTunes 백업 폴더를 입력으로 받아, Manifest.db 및 기타 SQLite 파일을 파싱하여 기기 이름, 시리얼 번호, 제품 모델, 전화번호, iOS 버전, 백업 완료 시간 등을 추출합니다.
설치된 애플리케이션 정보 추출
기기에 설치된 모든 애플리케이션(사이드로드된 앱 포함)에 대해 앱 이름, Apple ID, 다운로드 날짜, 버전, 출판사 등을 추출합니다. 사이드로드된 앱은 ‘Installed Applications’ 도메인을 통해 식별됩니다.
파일 구조 재구성
암호화되지 않은 백업에 대해 –recreate 플래그를 사용하면 원본 파일 구조를 디렉터리 트리로 복원할 수 있습니다. 이 기능은 장기 경로(NTFS long paths)가 활성화된 환경에서 정상 동작합니다.
암호화된 백업 처리
-d 또는 –decrypt 플래그와 -p PASSWORD 옵션을 함께 사용하면 암호화된 백업을 복호화하여 평문 형태로 추출할 수 있습니다. 이 기능은 버전 4.0.1에서 추가되었습니다.
대량 처리 및 Incident Response 모드
-b 또는 –bulk 플래그를 사용하면 여러 백업 폴더를 포함한 상위 디렉터리를 지정하여 일괄 처리가 가능합니다. –ir 플래그는 관리자 권한으로 시스템 드라이브를 스캔하여 iTunes 백업을 자동으로 탐지합니다.
출력 형식 지원
추출된 결과는 텍스트(.txt), CSV(.csv), 또는 SQLite 데이터베이스(.db) 형식으로 저장할 수 있으며, -t 또는 –type 옵션으로 지정할 수 있습니다.
지원 환경 및 요구사항
이 도구는 Python 3을 기반으로 하며, Windows, macOS, Linux에서 실행 가능합니다. Python 3.9에서는 biplist 라이브러리 호환성 문제로 인해 작동하지 않을 수 있으므로, Python 3.8 이하 또는 frozen 실행 파일을 사용하는 것이 권장됩니다. 필수 의존성은 README에 명시되어 있으며, pip를 통해 자동 설치됩니다.
활용 예시
사용자는 명령줄에서 다음 형식으로 도구를 실행할 수 있습니다:
iTunes_Backup_Reader.py -i "C:Users{username}AppDataRoamingApple ComputerMobileSyncBackup{GUID}" -o "C:output" -t csv -v이 명령은 지정된 백업 폴더를 분석하여 결과를 CSV 형식으로 출력 디렉터리에 저장하며, 상세한 로그를 출력합니다. 암호화된 백업을 처리하려면 -p 옵션으로 비밀번호를 추가하고 -d 플래그를 사용해야 합니다.
시스템 요구사항
Python 3이 설치된 Windows, macOS, Linux 환경에서 실행할 수 있습니다. Python 3.9에서는 biplist 라이브러리의 버그로 인해 정상 동작하지 않을 수 있으므로,それより 낮은 버전의 Python 또는 제공된 frozen exe를 사용하는 것이 권장됩니다.


