verifique que se haya realizado una llamada a la API desde el dispositivo móvil [duplicado]

1

Estoy desarrollando un servidor web y proporciono una API para uso de clientes móviles.
Algunas de mis llamadas son sin autorización, por ejemplo, para iniciar el proceso de autenticación.

¿Existe alguna buena forma / mejor práctica para verificar que estas llamadas se realicen solo desde el dispositivo?
Por ejemplo, mi proceso de autenticación usó un servicio de terceros para enviar mensajes SMS, y si alguien usa esta API desde la computadora, puede provocar el envío de muchos mensajes SMS que costarían mucho. ¿Hay una buena manera de prevenir tales ataques?

    
pregunta eran 22.01.2015 - 10:15
fuente

1 respuesta

2

Desafortunadamente no, no hay manera de prevenir esto, pero hay formas de mitigar y reducir el abuso. La razón es que, eventualmente, cualquier proceso que esté utilizando para autenticar su aplicación cliente, puede ser revertido e imitado en una aplicación de terceros. Las formas de mitigar son:

  1. usando algún tipo de respuesta de desafío entre el servidor y la aplicación para que el cliente responda al desafío del servidor con la respuesta correcta.

  2. código que confunde la parte que maneja la respuesta de desafío en el cliente

  3. cambiando periódicamente el algoritmo de respuesta de desafío para que quien lo invirtió y lo imitó, tendrá que repetir todo el proceso.

  4. poner algunos límites estrictos en el uso de API para que no se pueda abusar de él.

respondido por el aviv 22.01.2015 - 14:57
fuente

Lea otras preguntas en las etiquetas