Intercettazione del traffico SSL sull'app per Android

5

Sto cercando di intercettare il traffico SSL dalla mia app per Android per testare la sicurezza. Uso il blocco del certificato nella speranza di impedire alle persone di ficcare il naso. Ho provato configurando ProxyDroid per instradare il traffico attraverso il mio proxy, per il quale ho usato sia Fiddler che Charles. Tuttavia, ottengo risultati diversi con i due software server proxy.

Con Fiddler non ero in grado di intercettare il traffico e la mia app non riesce a connettersi al server. Ho persino importato manualmente il certificato radice di Fiddler in / system / etc / security / cacerts e verificato che si presenti nel truststore di sistema, ma la mia app si comporta come dovrebbe.

Con Charles, tuttavia, non avevo nemmeno bisogno di importare il certificato di root sul mio telefono Android. Immediatamente, sono stato in grado di intercettare tutto il traffico SSL tra la mia app e il mio server.

Quindi la mia domanda è: come è possibile che Charles riesca a farlo anche se Fiddler non è in grado di farlo?

    
posta blizz 02.11.2014 - 04:29
fonte

3 risposte

5

Se il proxy Charles è in grado di intercettare il traffico SSL / TLS, la convalida del certificato non è riuscita. Ciò dimostra che il dispositivo mobile non sta verificando correttamente il certificato del server.

In una valutazione sulla sicurezza mobile, il blocco dei certificati può essere disabilitato agganciando l'implementazione SSL / TLS della piattaforma e modificando il modo in cui funziona la convalida dei certificati. Un esempio di questo attacco è il bypass SSL Android o OSOS killswitch SSL .

    
risposta data 02.11.2014 - 17:19
fonte
1

Ci dovrebbe essere qualche difetto nel codice pinning del certificato che hai scritto per la tua app.

Se il blocco del certificato è stato eseguito correttamente, nessun proxy può intercettare il traffico, supponendo che non si stia interferendo con l'applicazione.

Ti suggerisco di controllare alcuni ottimi esempi su come implementare il blocco dei certificati qui .

    
risposta data 05.11.2014 - 11:22
fonte
1

La maggior parte delle volte è possibile intercettare il traffico delle applicazioni anche se è stato implementato il blocco dei certificati per l'applicazione, ma la richiesta deve essere crittografata quando si è intercettati utilizzando il proxy Charles. Ma è possibile intercettare il traffico utilizzando SSLBypass, SSL Trust Killer, SSL SSL Kill Switch usando proxy come Burp.

    
risposta data 13.01.2016 - 08:32
fonte

Leggi altre domande sui tag