Saltar a contenido

Debug mode enabled

Modo de depuración habilitado

Descripción

El atributo android:debuggable en la etiqueta Application que se define en el Android Manifest determina si la aplicación se puede depurar.

El modo de depuración permite a los atacantes acceder al sistema de archivos de la aplicación, adjuntar un depurador y acceder a datos sensibles o realizar acciones maliciosas.

Se pueden utilizar los siguientes pasos para iniciar una sesión de depuración utilizando jdb:

  • Utilice adb jdwp para identificar el PID de la aplicación de destino:
$adb jdwp
3466
15446
  • Cree un canal de comunicación usando adb y conéctese a él usando jdb:
$adb forward tcp:7777 jdwp:$(adb shell ps | grep "package-id")
$jdb -attach localhost:7777
  • Acceda al sistema de archivos de la aplicación:
$adb shell
$run-as package-id
$...insert malicious action...

Un atacante puede depurar la aplicación sin tener acceso al código fuente y aprovecharlo para realizar acciones maliciosas en nombre del usuario, modificar el comportamiento de la aplicación o acceder a datos sensibles como credenciales y cookies de sesión.

Recomendación

Deshabilite el modo de depuración configurando el atributo android:debuggeable en false dentro de la etiqueta Application en el Android Manifest.

<application android:icon="@drawable/icon" android:debuggable="false">

Enlaces

Estándares

  • OWASP_MASVS_L1:
    • MSTG_CODE_2
  • OWASP_MASVS_L2:
    • MSTG_CODE_2
  • PCI_STANDARDS:
    • REQ_2_2
  • HIPAA_CONTROLS:
    • SECURITY212
    • SECURITY213
    • SECURITY255