애플 개인 API 검사 도구 오픈 소스 프로젝트

iOS-private-api-checker 애플 iOS 개인 API 검사 도구 개발 자 도 구 는 Apple 에 제출 하기 전에 개인 API 사용 을 위해 iOS 앱 을 스 캔 합 니 다.https://github.com/hustcc/iOS-private-api-checker
iOS 개인 API 검사 도구
개인 API 검사 의 이 유 는 애플 이 app 에서 심사 할 때 app 이 개인 api 를 사용 하 는 상황 을 검사 하고 개인 api 를 사용 한 app 에 대해 통과 하지 않 기 때 문 입 니 다.이 도구 의 목적 지 는 바로 심사 전에 검사 하여 통과 율 을 높이 는 것 입 니 다.
어떻게
1.개인 api 라 이브 러 리 구축
  • db/dsidx_dbs.py 파일 은 docSet.dsidx 의 라 이브 러 리 를 분석 하기 위해 docSet.dsidx 내용 을 sqlite 로 내 보 냅 니 다.docSet.dsidx 는 코드 알림 데이터베이스 로 애플 이 공개 한 공유 api 임 을 표시 합 니 다.
  • config.py 수정 중 sdksconfig 사전,각 version 의 sdk 경 로 를 추가 하고 build 를 실행 합 니 다.api_db.py,개인 api 를 자동 으로 분석 하여 sqlite 에 저장 합 니 다.
  • (프로젝트 의 데이터베이스 내용 은 제 가 sdk 7.0 의 데 이 터 를 컴 파일 해서 직접 사용 할 수 있 습 니 다.)

  • 2.ipa 개인 api 검사
    실행 방식 은 두 번 째 가 있 습 니 다.두 번 째 웹 방식 을 권장 합 니 다.
  • iOS 수정private.py main 방법 중의 ipa 경 로 를 실행 하면 됩 니 다.
  • 웹 업로드 실행 방식 으로 python run 실행웹.py(fllask 실행 환경 을 설정 하 십시오),그리고 브 라 우 저 입력 127.0.0.1:9527 ipa 를 업로드 상자 에 끌 어 다 놓 고 기다 리 면 검사 결 과 를 볼 수 있 습 니 다.

  • 2.검사 원리
  • mac 에서 xcode 의 개발 환경 을 통 해 서로 다른 sdk 버 전의 Public framework 와 private framework 를 찾 습 니 다.class-dump 를 통 해 Public framework 의 api 를 역 컴 파일 하여 각각 집합 PU 와 PR 로 설정 합 니 다.
  • xcode 코드 가 제시 하 는 sqlite 데이터 베 이 스 를 통 해 모든 document api 를 조회 하고 집합 DA 로 설정 합 니 다.
  • 그러면 PU-DA 는 공유 framework 의 개인 api 로 A
  • 로 설정 합 니 다.
  • PR 은 개인 프레임 워 크 의 api 를 사용 할 수 없 으 며,개인 api 집합 PRAPI=A+PR
  • class-dump 를 사용 하여 ipa 의 app 파일 을 역 컴 파일 한 다음 PRAPI 집합 과 교차 하면 얻 을 수 있 습 니 다.
  • 그 중에서 일부 세부 적 인 집합 작업 이 있어 api 를 정확하게 찾 습 니 다.예 를 들 어 방법 명 과 유형 명 을 사용 하여 API 방법 을 유일 하 게 확인 합 니 다.

  • 3.참고 항목
  • RuntimeBrowser
  • iOS-private-api-scanner
  • iOS-api-scan.md

  • 노트
  • api = (class-dump Framework api - (Framework api = api + api)) + PrivateFramework api
  • 개인 api 는 공 개 된 Framework 와 개인 적 인 PrivateFramework 에 있 습 니 다.
  • 잠시 mac 에서 실행 하 십시오.Liux 에 서 는 otool 대신 적당 한 도 구 를 찾 지 못 했 습 니 다.추천 해 주세요^^!
  • 좋은 웹페이지 즐겨찾기