Omitir los controles biométricos de tus aplicaciones en iOS | de Wojciech ReguÅ‚a | seguridad

El uso de funciones biométricas de iOS como Touch ID y Face ID es una forma realmente conveniente de autenticar a un usuario antes de realizar acciones confidenciales. Estas acciones, por supuesto, dependen de las características de las aplicaciones. Por lo general, probamos aplicaciones que usan TouchID/FaceID para iniciar sesión y confirmar acciones financieras (por ejemplo, transferencias bancarias). Pero, ¿estos cheques pueden ser tratados como 100% seguros?

La respuesta es por supuesto no. Las comprobaciones biométricas se realizan en su dispositivo y, como cualquier otra, las «comprobaciones del lado del cliente» se pueden omitir si el atacante puede controlar la aplicación o el dispositivo. En esta publicación de blog, quiero mostrarte lo fácil que se puede hacer ese truco. Para realizar el ataque, necesitamos:

  • dispositivo con jailbreak (si no tiene uno, verifique esta presentación),
  • Frida,
  • editor de texto. 😉

Preparé una aplicación realmente simple que te pide tu dedo/cara y muestra un mensaje si la verificación fue exitosa o no.

Tenga en cuenta que la lógica de la aplicación se implementó en Swift:

Ahora, tenemos que escribir un guión de Frida que pase por alto la verificación. Como puede ver en el fragmento de código pegado arriba, el evaluarPolítica utiliza una devolución de llamada que determina el resultado. Entonces, la forma más fácil de lograr el truco es interceptar esa devolución de llamada y asegurarse de que siempre devuelva el exito=1.

En este momento solo falta abrir el SecuBank y cargar el script con Frida:

$frida -U -l bypass.js -f biz.securing.SecuBank --no-pause

En este artículo, le mostré nuevamente que se puede omitir cualquier tipo de verificación local, incluidas las biométricas proporcionadas por iOS/macOS. Estos controles son realmente convenientes, pero siempre debe recordar que no pueden garantizar ninguna confiabilidad si el dispositivo tiene jailbreak.

Si está interesado en implementar tales comprobaciones de jailbreak, eche un vistazo a la Conjunto de seguridad de iOS ¡Nuestro proyecto de código abierto!

Fuente del artículo

Deja un comentario