2012-02-09 10 views
5

Recientemente escuché bastantes rumores (¿o historias reales?) Sobre cómo algunos desarrolladores chinos de iOS lograron engañar al sistema de comprobación API privado de la App Store y tener sus llamadas dinámicas aplicaciones api privadas aprobadas y disponibles en la tienda de aplicaciones.Llamadas dinámicas a API privada sin ser notado por la tienda de aplicaciones

Hasta ahora, esas historias se centraban en las API privadas de WebKit. Afirmaron que tuvieron éxito en obtener acceso a los datos personales del usuario de iPhone llamando a esas API privadas de WebKit.

Tengo que decir que estoy confundido. Mi pregunta:

  • ¿Es lógica su afirmación? (es decir, ¿es posible obtener acceso a los datos del usuario a través de la API privada de WebKit?)

Mi pensamiento sobre las posibles formas de lograr la tarea.

  • a través de la performSelector: método
  • través NSInvocation
  • a través de este llamado omnipotente y misteriosa reflexión cosa

No creo que sea posible a mí mismo. Pero mi experiencia con iOS es limitada, así que no estoy tan seguro de mi juicio. Cualquier sugerencia es muy bienvenida. :)

+0

Al final todo es posible con la cantidad correcta de investigación, etc. – Daniel

+1

Desafortunadamente, todo lo que sabemos sobre la forma en que Apple comprueba el uso privado de API es anecdótico, ya que no divulgan su proceso para hacerlo. Cualquier solución sugerida aquí podría fallar tan pronto como Apple cambie su proceso de revisión. –

+2

El acceso a la API privada nunca ha sido un problema. Por ejemplo, su código contiene nombres de símbolos codificados, los descodifica en tiempo de ejecución, busca sus direcciones usando el enlazador dinámico, luego llama a las funciones/métodos por dirección. Dicho eso, será mejor que sepas lo que estás haciendo, por qué lo haces y cómo hacerlo de la forma más segura posible. Es solo una mala práctica, punto. El uso de API privada debe evitarse a toda costa. – Costique

Respuesta

3

Para responder a su pregunta, sí, su afirmación es lógica. Es probable que pueda acceder a los datos personales del usuario a través de una serie de API privadas. No mencionas qué información personal, por lo que no es posible decirlo definitivamente.

Mi comentario sobre su forma de pensar: no, no vale la pena el riesgo de su reputación como desarrollador, o la reputación del cliente si se trata de una obra de alquiler, o el estado de su cuenta de desarrollador si intenta eludir/violar los términos del servicio que acordó con Apple.

Cuestiones relacionadas