diff --git a/mobile-pentesting/android-app-pentesting/android-applications-basics.md b/mobile-pentesting/android-app-pentesting/android-applications-basics.md index 5dad0b9c8..5884bf4fc 100644 --- a/mobile-pentesting/android-app-pentesting/android-applications-basics.md +++ b/mobile-pentesting/android-app-pentesting/android-applications-basics.md @@ -28,7 +28,7 @@ Aprende y practica Hacking en GCP: @@ -211,7 +211,7 @@ El esquema debe ser declarado en el **`AndroidManifest.xml`**: [...] ``` -El esquema del ejemplo anterior es `exampleapp://` (nota también el **`category BROWSABLE`**) +El esquema del ejemplo anterior es `examplescheme://` (nota también la **`categoría BROWSABLE`**) Luego, en el campo de datos, puedes especificar el **host** y **path**: ```xml @@ -230,7 +230,7 @@ Aprende a [llamar enlaces profundos sin usar páginas HTML](./#exploiting-scheme ## AIDL - Lenguaje de Definición de Interfaces de Android -El **Lenguaje de Definición de Interfaces de Android (AIDL)** está diseñado para facilitar la comunicación entre cliente y servicio en aplicaciones de Android a través de **comunicación entre procesos** (IPC). Dado que no se permite acceder directamente a la memoria de otro proceso en Android, AIDL simplifica el proceso al marshalling de objetos en un formato entendido por el sistema operativo, facilitando así la comunicación entre diferentes procesos. +El **Lenguaje de Definición de Interfaces de Android (AIDL)** está diseñado para facilitar la comunicación entre el cliente y el servicio en aplicaciones de Android a través de **comunicación entre procesos** (IPC). Dado que no se permite acceder directamente a la memoria de otro proceso en Android, AIDL simplifica el proceso al marshalling de objetos en un formato entendido por el sistema operativo, facilitando así la comunicación entre diferentes procesos. ### Conceptos Clave @@ -246,9 +246,9 @@ Estos incluyen: **Actividades, Servicios, Receptores de Difusión y Proveedores. ### Actividad de Lanzamiento y otras actividades -En las aplicaciones de Android, **las actividades** son como pantallas, mostrando diferentes partes de la interfaz de usuario de la app. Una app puede tener muchas actividades, cada una presentando una pantalla única al usuario. +En las aplicaciones de Android, las **actividades** son como pantallas, mostrando diferentes partes de la interfaz de usuario de la app. Una app puede tener muchas actividades, cada una presentando una pantalla única al usuario. -La **actividad de lanzamiento** es la puerta principal a una app, lanzada cuando tocas el ícono de la app. Está definida en el archivo de manifiesto de la app con intenciones específicas MAIN y LAUNCHER: +La **actividad de lanzamiento** es la puerta principal a una app, lanzada cuando tocas el ícono de la app. Se define en el archivo de manifiesto de la app con intenciones específicas MAIN y LAUNCHER: ```markup @@ -263,7 +263,7 @@ Las actividades pueden estar disponibles para otras aplicaciones o procesos marc ```markdown ``` -Sin embargo, acceder a una actividad de otra aplicación no siempre representa un riesgo de seguridad. La preocupación surge si se comparten datos sensibles de manera inapropiada, lo que podría llevar a filtraciones de información. +Sin embargo, acceder a una actividad de otra aplicación no siempre es un riesgo de seguridad. La preocupación surge si se comparten datos sensibles de manera inapropiada, lo que podría llevar a filtraciones de información. El ciclo de vida de una actividad **comienza con el método onCreate**, configurando la interfaz de usuario y preparando la actividad para la interacción con el usuario. @@ -348,7 +348,7 @@ Para cargar contenido, están disponibles métodos como ````loadUrl````, ````loa El "Bridge" de JavaScript permite que los objetos Java interactúen con JavaScript, requiriendo que los métodos estén marcados con ````@JavascriptInterface```` para seguridad desde Android 4.2 en adelante. -Permitir el acceso al contenido (````setAllowContentAccess(true)````) permite que los WebViews accedan a Content Providers, lo que podría ser un riesgo a menos que las URLs de contenido sean verificadas como seguras. +Permitir el acceso al contenido (````setAllowContentAccess(true)````) permite que los WebViews accedan a Content Providers, lo que podría ser un riesgo a menos que las URLs de contenido se verifiquen como seguras. Para controlar el acceso a archivos: - Deshabilitar el acceso a archivos (````setAllowFileAccess(false)````) limita el acceso al sistema de archivos, con excepciones para ciertos activos, asegurando que solo se utilicen para contenido no sensible.