1- Insecure Logging

Tratamos de interceptar con burp
bash
/home/m0b/Android/Sdk/emulator/emulator -avd Pixel_7 -no-snapshot-loadEn el caso de que no tengamos hecho aun todo el setup de root, etc -> Frida setup con Android Studio Automatizado
No vemos nada en burp
Tratamos de poner un número de tarjeta válido pero el error siempre es el mismo.
Ponemos 123456789 y revisamos el log
/home/m0b/Android/Sdk/platform-tools/adb logcat | grep 123456789
El diseño de la pantalla está en :

Vemos que se llama a la función checkout() :
CTRL + SHIFT + F
checkout(

Cuyo código es el siguiente
java
public void checkout(View view) {
EditText cctxt = (EditText) findViewById(R.id.ccText);
try {
// Assuming we do some HTTP requests credit card validation and processing
//Everything seems fine and then we hit some unforseen error
processCC(cctxt.getText().toString());
} catch (RuntimeException re) {
Log.e("diva-log", "Error while processing transaction with credit card: " + cctxt.getText().toString());
Toast.makeText(this, "An error occured. Please try again later", Toast.LENGTH_SHORT).show();
}
}Logcat no es privado. Android guarda todo Log.e/d/i en buffer sistema (logcat), accesible por:
- Cualquier app con permiso
READ_LOGSen Android ≤4.0 (API ≤15) — antes eso era permiso normal, apps maliciosas lo pedían sin sospecha. - Cualquiera con acceso físico +
adb logcat(USB debugging activo, dispositivo desbloqueado o rooteado). - Apps preinstaladas OEM con permisos elevados, algunas leen logcat para analytics/crash reporting — filtran dato sin saberlo.
- Logs a veces terminan en crash reports (Firebase Crashlytics, Bugsnag) si integrados sin cuidado, subiendo tarjeta a servidor tercero.