Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
POC-CVE-2025-24104-Py — iOS 파일 유출을 악성 심볼릭 링크를 통해 장치 백업 복원 중에 시연하는 개념 증명 Python 스크립트로, com.apple.mobile.MCInstall 서비스를 대상으로 임의 파일 읽기를 수행합니다. | Kitploit
도구/GitHubGitHub/missaels235/poc-cve-2025-24104-py
iOS SecurityVulnerability AnalysisExploitationData ExfiltrationMobile SecurityPapers & ResearchLearning & Education
GitHubmissaels235/poc-cve-2025-24104-py

POC-CVE-2025-24104-Py

iOS 파일 유출을 악성 심볼릭 링크를 통해 장치 백업 복원 중에 시연하는 개념 증명 Python 스크립트로, com.apple.mobile.MCInstall 서비스를 대상으로 임의 파일 읽기를 수행합니다.

저장소 보기
3331년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

PoC: 백업 조작을 통한 iOS 파일 유출

매우 중요한 경고: 이 소프트웨어는 교육 및 보안 연구 목적으로만 제공되는 개념 증명(PoC)입니다.

  • 소유자의 명시적 서면 동의 없이 이 스크립트를 기기에 사용하지 마십시오. 대부분의 관할권에서 컴퓨터 시스템에 대한 무단 접근은 불법입니다.
  • 이 스크립트는 백업에서 iOS 기기를 복원하는 작업을 수반하므로 기기의 현재 데이터가 완전히 손실됩니다. 극도의 주의를 기울이고 전용 테스트 기기에서만 진행하십시오.
  • 이 스크립트의 작성자/제공자는 이 소프트웨어 사용으로 인한 오용, 손해 또는 데이터 손실에 대해 책임을 지지 않습니다. 본인 책임 하에 사용하십시오.

개요

이 Python 스크립트는 iOS 기기에서 임의의 파일을 유출할 수 있는 취약점(가상의 것이거나 과거 취약점에 기반한 것으로, 원본 PoC에 따라 예시적으로 "iOS 18.3 이전"으로 참조됨)을 시연합니다. 이 방법은 기기 백업의 조작, 해당 백업 내 악성 심볼릭 링크(symlink) 생성, 그리고 이 수정된 백업을 기기에 복원하는 방식에 기반합니다. 마지막으로 시스템 서비스(com.apple.mobile.MCInstall)와 상호작용하여, 해당 서비스가 심볼릭 링크가 가리키는 파일을 의도치 않게 읽도록 합니다.

이 스크립트는 보안 연구자의 관점에서 다음을 포함하도록 "개선"되었습니다:

  • 상세 로깅.
  • 명령줄 인수를 통한 매개변수화.
  • 종속성 및 iOS 버전 확인(개념적).
  • 내부 작동 방식과 가능한 완화 조치에 대한 광범위한 주석.
  • 향상된 견고성과 오류 처리.

취약점 설명 (개념적)

악용되는 취약점은 다음과 같은 약점 체인(이전 iOS 버전에 존재)을 활용합니다:

  1. 백업에서 심볼릭 링크 생성: 예상 시스템 파일(예: CloudConfigurationDetails.plist)이 기기 파일 시스템의 민감한 파일(예: /private/etc/passwd)을 가리키는 심볼릭 링크로 대체된 백업 파일을 생성하는 기능.
  2. 심볼릭 링크 복원: 취약한 버전의 iOS 복원 프로세스는 적절한 검증이나 정화 없이 이러한 심볼릭 링크를 기기에 복원했습니다.
  3. 권한 있는 서비스에 의한 읽기: 원래 구성 파일(CloudConfigurationDetails.plist)을 읽을 권한이 있는 시스템 서비스(이 PoC에서는 com.apple.mobile.MCInstall)가 호출될 수 있습니다. 파일을 읽으려고 시도하면 운영 체제가 심볼릭 링크를 따라가서, 대신 심볼릭 링크가 가리키는 민감한 파일의 내용을 읽습니다.
  4. 데이터 유출: 서비스는 읽은 파일(즉, 민감한 파일)의 내용을 요청한 클라이언트에게 반환합니다.

iOS 버전에 관한 참고: 원본 PoC는 "iOS < 18.3"을 언급합니다. 이 버전 표기는 비전형적입니다. Apple은 훨씬 이전 iOS 버전(이 유형의 가장 직접적인 벡터의 경우 일반적으로 iOS 15/16 이전)에서 백업 및 구성 프로필의 심볼릭 링크 처리와 관련된 취약점을 패치했습니다. 이 버전 참조는 스크립트의 출처와의 일관성을 위해 유지되지만, "패치되지 않은 취약한 버전"을 예시적으로 나타내는 것으로 이해해야 합니다.

개선된 스크립트 기능

  • 상세 로깅: 프로세스의 각 단계에 대한 타임스탬프와 명확한 메시지.
  • 명령줄 인수: 디렉터리, 대상 파일, UDID 등의 유연한 설정.
  • 모듈성: 분석을 위해 단계(백업/복원 또는 악용)를 건너뛸 수 있는 기능.
  • 종속성 확인: idevicebackup2의 존재를 확인합니다.
  • 기기 정보: iOS 버전과 UDID를 얻으려고 시도합니다.
  • 취약점 확인(개념적): 감지된 iOS 버전이 패치되었을 가능성이 있으면 경고합니다.
  • 향상된 오류 처리: 오류를 더 명확하게 포착하고 보고합니다.
  • 교육용 주석: 프로세스 및 완화 조치에 대한 코드 내 상세 설명.

사전 요구 사항

  • Python 3.7+
  • libimobiledevice: iOS 기기와 상호작용하기 위한 도구 모음입니다. 구체적으로 시스템 PATH에 idevicebackup2가 필요합니다.
    • macOS: brew install libimobiledevice
    • Linux: sudo apt-get install libimobiledevice-utils (패키지 이름은 다를 수 있음)
  • Python 패키지:
    pip install usbmux-python python-lockdown packaging
    

설치

  1. 이 저장소를 클론합니다:
    git clone <url-del-repositorio>
    cd <nombre-del-directorio>
    
  2. libimobiledevice가 설치되어 있고 idevicebackup2에 접근 가능한지 확인합니다.
  3. Python 종속성을 설치합니다:
    pip install -r requirements.txt # (Si creas un requirements.txt con usbmux-python, python-lockdown, packaging)
    # o manualmente:
    # pip install usbmux-python python-lockdown packaging
    

사용

./exploit_ios_file_read.py [OPCIONES]
도구 다운로드