최근에 일부 중국 iOS 개발자가 App Store 비공개 API 검사 시스템을 속여서 동적 호출 기능이있는 시스템을 사용하는 방법에 대한 소문이 많았습니다. private-api 앱이 승인되어 앱 스토어에서 사용 가능합니다.App Store에서 알지 못하는 상태에서 비공개 API를 동적으로 호출하는 경우
지금까지는 WebKit 비공개 API에 중점을 두었습니다. 그들은 사적인 WebKit API를 호출하여 iPhone 사용자의 개인 데이터에 액세스하는 데 성공했다고 말했습니다.
나는 혼란 스럽다. 내 질문 :
- 그들의 진술은 논리적입니까? (즉, WebKit 비공개 API를 통해 사용자의 데이터에 액세스 할 수 있습니까?)
작업을 수행하는 방법에 대한 제 생각. performSelector 통해
- : 방법
- 이 소위 전능하신 신비 반사 일
통해있는 NSInvocation
결국 적절한 양의 연구 등으로 모든 것이 가능합니다. – Daniel
불행히도 Apple이 개인 API 사용을 확인하는 방법에 대해 알고있는 모든 것은 일을 처리하는 과정을 공개하지 않았기 때문에 일화입니다. Apple이 검토 과정을 변경하자마자 여기 제시된 해결 방법이 중단 될 수 있습니다. –
개인 API에 액세스하는 것이 결코 문제가되지 않았습니다. 예를 들어 코드에는 스크램블 된 심볼 이름이 포함되어 있으며 런타임에 심볼 이름의 스크램블을 해제하고 동적 링커를 사용하여 주소를 조회 한 다음 주소별로 함수/메소드를 호출합니다. 즉, 자신이하는 일, 왜 그 일을하는지, 가능한 한 안전하게 할 수있는 방법을 잘 알고 있어야합니다. 그저 나쁜 습관 일뿐입니다. 전용 API를 사용하는 것은 피해야합니다. – Costique