Ci sono 3 casi probabili:
- Applicazione Android che imposta un altro proxy sulle sue richieste http, ignorando quindi proxy di sistema e burpsuite.
- Applicazione che imposta i suoi gestori http per ignorare le impostazioni del proxy Android e connettersi direttamente alla destinazione.
- L'applicazione utilizza un protocollo non http.
Se 1 o 2 è il caso , dovrai usare tecniche di wirehark o reverse engineering per trovare i domini con cui l'applicazione sta interagendo, diciamo xxx.com e yyy.org.
Devi quindi usare adb shell per modificare / etc / hosts, assumiamo l'ascolto di burp su 10.0.3.2, aggiungi le seguenti righe a / etc / hosts:
10.0.3.2 xxx.com
10.0.3.2 yyy.org
Potrebbe essere necessario rimontare la partizione di sistema come "rw" per poter modificare / etc / hosts:
mount -o rw,remount,rw /system
Quindi, sotto il proxy di burp, impostalo per ascoltare sulla porta 80 e 443, quindi nelle impostazioni per ciascuno di questi listener abilita " proxy invisibile ", se il traffico http / https inviato dall'applicazione sarà ora visibile / intercettato in Burp.
Stiamo facendo in modo che il dispositivo risolva i nomi di dominio dell'applicazione nell'indirizzo di burpsuite. Possiamo anche cambiare il DNS del dispositivo sul nostro server controllato che restituisce l'indirizzo di burp per tutte le richieste. Questa soluzione non è sufficiente se l'applicazione si collega direttamente agli indirizzi IP anziché ai nomi di dominio. Se l'applicazione utilizza protocolli non http, burpsuite non sarà in grado di rilevare il traffico.