iOS Pentesting Checklist

tip

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Preparaci贸n

Almacenamiento de Datos

  • Plist files pueden ser utilizados para almacenar informaci贸n sensible.
  • Core Data (base de datos SQLite) puede almacenar informaci贸n sensible.
  • YapDatabases (base de datos SQLite) puede almacenar informaci贸n sensible.
  • Firebase mala configuraci贸n.
  • Realm databases pueden almacenar informaci贸n sensible.
  • Couchbase Lite databases pueden almacenar informaci贸n sensible.
  • Binary cookies pueden almacenar informaci贸n sensible.
  • Cache data puede almacenar informaci贸n sensible.
  • Automatic snapshots pueden guardar informaci贸n visual sensible.
  • Keychain se utiliza generalmente para almacenar informaci贸n sensible que puede quedar al revender el tel茅fono.
  • En resumen, solo verifica si hay informaci贸n sensible guardada por la aplicaci贸n en el sistema de archivos.

Teclados

Registros

Copias de Seguridad

  • Backups pueden ser utilizados para acceder a la informaci贸n sensible guardada en el sistema de archivos (verifica el punto inicial de esta lista de verificaci贸n).
  • Adem谩s, backups pueden ser utilizados para modificar algunas configuraciones de la aplicaci贸n, luego restaurar la copia de seguridad en el tel茅fono, y como la configuraci贸n modificada es cargada, algunas (de seguridad) funcionalidades pueden ser eludidas.

Memoria de Aplicaciones

Criptograf铆a Rota

Autenticaci贸n Local

Exposici贸n de Funcionalidades Sensibles a Trav茅s de IPC

  • Custom URI Handlers / Deeplinks / Custom Schemes
  • Verifica si la aplicaci贸n est谩 registrando alg煤n protocolo/esquema.
  • Verifica si la aplicaci贸n est谩 registrando 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 sanitizando 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.
  • Universal Links
  • 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 sanitizando 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.
  • UIActivity Sharing
  • 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谩 utilizando los datos del portapapeles general para algo.
  • Monitorea el portapapeles para ver si se copia alg煤n dato sensible.
  • App Extensions
  • 驴La aplicaci贸n est谩 utilizando 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

Varios

tip

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks