2011-12-30 11 views
7

Recientemente lancé una aplicación en Android Market utilizando el sistema de licencias con el modelo ServerManagedPolicy.Evitar apk crackeado

Hace algunos días alguien crackeó la aplicación haciendo siempre la respuesta "Uso de la respuesta de la licencia en caché" y permite el acceso.

¿Cómo puedo evitar eso en futuras aplicaciones? ¡Gracias!

Respuesta

12

Estoy de acuerdo con @ Tom van der Woerdt implementar su propia biblioteca de licencias

También me refiero a que echa un vistazo a esto desde el Google I/O 2011:

Evadir Piratas y detención de los vampiros

http://www.youtube.com/watch?v=TnSNCXR9fbY

EDIT:

The Presentation Notes de Evadir Piratas y detención de Vampiros

Algunos puntos clave básicos

+0

Los enlaces de arriba no siempre van a la página vinculada ... parece que solo funciona a veces y depende del sistema operativo y del navegador. Por lo tanto, tome nota de la terminación '#% 3ar.page.15' en las URL. Si no se le redirecciona automáticamente a esa página, asegúrese de mirar el enlace para ver dónde y qué página debe ver. – TryTryAgain

+1

Las técnicas ofrecidas en "Evadiendo piratas y deteniendo vampiros" han sido sorteadas por la aplicación Lucky Patcher (LP) en cierto modo, particularmente en el lado del cliente. Lo sé porque descargué una copia de LP y la uso para descifrar mi propia aplicación. Lo único que aún no está totalmente resquebrajado es la recomendación de Reflection y la validación del lado del servidor, ¡pero es solo cuestión de tiempo antes de que LP lo resuelva también! ... – ChuongPham

+0

@Chuong Gracias por mantener la conversación actualizada. Actualizaré esta respuesta después de dedicar algún tiempo a la investigación. – TryTryAgain

5

No hay una solución perfecta. Incluso el iOS de Apple tiene problemas como este, pero en una escala mucho menor. Si tu aplicación es muy popular o buena, se descifrará. Yo diría que lo consideras un cumplido.

Por supuesto, usar bibliotecas estándar para licencias siempre es una mala idea, porque los crackers pueden simplemente reutilizar sus herramientas de cracking para cada aplicación que se creó utilizando la misma biblioteca. Implemente su propia biblioteca de licencias, lo que hará que descifrar su aplicación sea mucho más difícil.

Hecho interesante: la App Store de Apple OS X también tiene un sistema de licencias incorporado, pero los desarrolladores tienen que escribir sus propias bibliotecas para usarlo. De esta forma, los crackers no pueden crackear múltiples aplicaciones simultáneamente, porque cada aplicación tiene una implementación diferente del sistema de licencias.