¿Cuál es la mejor manera de analizar las solicitudes enviadas por una aplicación móvil?
sobre SSL? El protocolo de comunicación no es necesariamente HTTP / S por lo que
interceptándolos con BURP / ZAP / Fiddler o cualquier otro proxy HTTP
no necesariamente funciona, pero - ¿Cómo obtengo el tráfico para incluso alcanzar el
proxy?
Para los HTTPS clásicos, debes usar Burp / Zap / mitmproxy ya que no hay mejores alternativas que conozca. Realmente no he visto ningún otro protocolo que use las suites SSL / TLS en las aplicaciones, pero intentaría realizar una ingeniería inversa para obtener el protocolo o intentar obtener las claves de cifrado y descifrar el tráfico. Pero llevaría mucho tiempo.
¿Está seguro de que es realmente otro protocolo distinto de HTTPS en un puerto no estándar?
¿El dispositivo en el que está instalada la aplicación debe estar
arraigado para que realice esta tarea?
No necesita un dispositivo rooteado para el rastreo de HTTPS, todo lo que tiene que hacer es configurar un proxy y un certificado de confianza. Para otros protocolos - bueno, eso depende ...
Puede redirigir todo el tráfico a la puerta de enlace de su elección, pero siempre que el protocolo esté cifrado, creo que no será de gran utilidad para usted.
Si la aplicación utiliza el anclaje de certificados, ¿todavía hay una manera de
hacer esto?
Sí, la fijación de certificados se puede omitir en las dos plataformas principales. Ambos requieren raíz, pensamiento.
-
Para Android hay una extensión de sustrato de Cydia llamada SSL Trust Killer que funciona al interceptar ciertas llamadas y modificarlas para que se vuelvan verdaderas durante la validación. A menos que haya una implementación propia de verificación de certificado, esto va a funcionar. De lo contrario, es más probable que haya un error de implementación en la verificación de certificados;)
-
iOS tiene varios mecanismos, el que uso es a través de Snoop-it framework. Si eso no funciona, siempre puedes volver al método swizzling.
Me interesa específicamente entender cómo funciona el Whatsapp
el modelo de seguridad funciona, es decir, qué mecanismo tienen implementado para
evitar que un usuario malintencionado recupere el historial de chat de un legítimo
usuario (ya que no hay un inicio de sesión real - ¿Hay una cookie / otra?
Mecanismo enviado desde el dispositivo que identifica al usuario delante de la
servidor?)
Mi organización está considerando implementar una aplicación de mensajería
que funciona de una manera similar y estamos tratando de asegurarnos de que una
usuario malicioso no puede robar la identidad de un usuario legítimo. (estamos
sin intención de implementar un mecanismo de inicio de sesión)
Bueno, su mejor opción es contratar a probadores de penetración capaces para la evaluación de seguridad de la aplicación. Creo que la seguridad de WhatsApp debería ser muy alta, ya que tuvieron pocos incidentes de seguridad desagradables y son una organización de alto perfil con una gran base de usuarios y toman la seguridad de una manera seria ... Pero nunca se puede estar muy seguro.
Espero que esta publicación ayude un poco.