mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 20:53:37 +00:00
9.9 KiB
9.9 KiB
Lista de Verificación para Pentesting en iOS
Utiliza Trickest para construir y automatizar flujos de trabajo fácilmente, potenciados por las herramientas comunitarias más avanzadas del mundo.
Obtén Acceso Hoy:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Aprende hacking en AWS desde cero hasta héroe con htARTE (HackTricks AWS Red Team Expert)!
Otras formas de apoyar a HackTricks:
- Si quieres ver a tu empresa anunciada en HackTricks o descargar HackTricks en PDF, consulta los PLANES DE SUSCRIPCIÓN!
- Consigue el merchandising oficial de PEASS & HackTricks
- Descubre La Familia PEASS, nuestra colección de NFTs exclusivos
- Únete al 💬 grupo de Discord o al grupo de telegram o sígueme en Twitter 🐦 @carlospolopm.
- Comparte tus trucos de hacking enviando PRs a los repositorios de GitHub de HackTricks y HackTricks Cloud.
Preparación
- Lee Conceptos Básicos de iOS
- Prepara tu entorno leyendo Entorno de Pruebas en iOS
- Lee todas las secciones de Análisis Inicial de iOS para aprender acciones comunes en el pentest de una aplicación iOS
Almacenamiento de Datos
- Los archivos Plist pueden usarse para almacenar información sensible.
- Core Data (base de datos SQLite) puede almacenar información sensible.
- YapDatabases (base de datos SQLite) pueden almacenar información sensible.
- Configuración incorrecta de Firebase.
- Las bases de datos Realm pueden almacenar información sensible.
- Las bases de datos Couchbase Lite pueden almacenar información sensible.
- Las cookies binarias pueden almacenar información sensible
- Los datos de caché pueden almacenar información sensible
- Los snapshots automáticos pueden guardar información visual sensible
- Keychain suele usarse para almacenar información sensible que puede quedar al revender el teléfono.
- En resumen, simplemente busca información sensible guardada por la aplicación en el sistema de archivos
Teclados
- ¿La aplicación permite usar teclados personalizados?
- Verifica si la información sensible se guarda en los archivos de caché de teclados
Logs
- Verifica si se está registrando información sensible
Copias de Seguridad
- Las copias de seguridad pueden usarse para acceder a la información sensible guardada en el sistema de archivos (verifica el punto inicial de esta lista)
- Además, las copias de seguridad pueden usarse para modificar algunas configuraciones de la aplicación, luego restaurar la copia en el teléfono, y al cargarse la configuración modificada puede eludirse alguna funcionalidad (de seguridad)
Memoria de las Aplicaciones
- Busca información sensible dentro de la memoria de la aplicación
Criptografía Vulnerable
- Verifica si puedes encontrar contraseñas usadas para criptografía
- Busca el uso de algoritmos obsoletos/débiles para enviar/almacenar datos sensibles
- Engancha y monitorea funciones de criptografía
Autenticación Local
- Si se utiliza una autenticación local en la aplicación, debes verificar cómo funciona la autenticación.
- Si está utilizando el Marco de Autenticación Local podría ser fácilmente eludido
- Si está utilizando una función que puede ser eludida dinámicamente podrías crear un script personalizado de frida
Exposición de Funcionalidad Sensible a través de IPC
- Manejadores de URI Personalizados / Deeplinks / Esquemas Personalizados
- Verifica si la aplicación está registrando algún protocolo/esquema
- Verifica si la aplicación está registrada para usar algún protocolo/esquema
- Verifica si la aplicación espera recibir algún tipo de información sensible del esquema personalizado que puede ser interceptada por otra aplicación que registre el mismo esquema
- Verifica si la aplicación no está verificando y saneando la entrada de los usuarios a través del esquema personalizado y alguna vulnerabilidad puede ser explotada
- Verifica si la aplicación expone alguna acción sensible que puede ser llamada desde cualquier lugar a través del esquema personalizado
- Enlaces Universales
- Verifica si la aplicación está registrando algún protocolo/esquema universal
- Verifica el archivo
apple-app-site-association
- Verifica si la aplicación no está verificando y saneando la entrada de los usuarios a través del esquema personalizado y alguna vulnerabilidad puede ser explotada
- Verifica si la aplicación expone alguna acción sensible que puede ser llamada desde cualquier lugar a través del esquema personalizado
- Compartir UIActivity
- Verifica si la aplicación puede recibir UIActivities y si es posible explotar alguna vulnerabilidad con una actividad especialmente diseñada
- UIPasteboard
- Verifica si la aplicación está copiando algo al portapapeles general
- Verifica si la aplicación está usando los datos del portapapeles general para algo
- Monitorea el portapapeles para ver si se copia algún dato sensible
- Extensiones de Aplicación
- ¿La aplicación está usando alguna extensión?
- WebViews
- Verifica qué tipo de webviews se están utilizando
- Verifica el estado de
javaScriptEnabled
,JavaScriptCanOpenWindowsAutomatically
,hasOnlySecureContent
- Verifica si el webview puede acceder a archivos locales con el protocolo file:// (
allowFileAccessFromFileURLs
,allowUniversalAccessFromFileURLs
) - Verifica si Javascript puede acceder a métodos Nativos (
JSContext
,postMessage
)
Comunicación de Red
- Realiza un MitM a la comunicación y busca vulnerabilidades web.
- Verifica si se comprueba el nombre de host del certificado
- Verifica/Elude Certificate Pinning
Varios
- Verifica los mecanismos de parcheo/actualización automática
- Verifica las bibliotecas de terceros maliciosas
Aprende hacking en AWS desde cero hasta héroe con htARTE (HackTricks AWS Red Team Expert)!
Otras formas de apoyar a HackTricks:
- Si quieres ver a tu empresa anunciada en HackTricks o descargar HackTricks en PDF, consulta los PLANES DE SUSCRIPCIÓN!
- Consigue el merchandising oficial de PEASS & HackTricks
- Descubre La Familia PEASS, nuestra colección de NFTs exclusivos
- Únete al 💬 grupo de Discord o al grupo de telegram o sígueme en Twitter 🐦 @carlospolopm.
- Comparte tus trucos de hacking enviando PRs a los repositorios de GitHub de HackTricks y HackTricks Cloud.
Utiliza Trickest para construir y automatizar flujos de trabajo fácilmente, potenciados por las herramientas comunitarias más avanzadas del mundo.
Obtén Acceso Hoy:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}