Ho dei dubbi. Per la sicurezza delle applicazioni Android quale metodo di pinning SSL è buono?
- Distribuzione della chiave pubblica HTTP pinning
- Distribuzione della convalida del certificato utilizzando il formato * .bks insieme al verificatore del nome host.
Il secondo è consigliato di più per infrastrutture critiche come militari secondo alcuni esperti.
In HTTPPubliKeyPinning c'è un vantaggio che posso dare una serie di numerose chiavi pubbliche. In questo modo, se uno dei miei certificati scade, l'app passa automaticamente alla chiave pubblica dell'altro certificato su un altro dominio.
Dove in BKS, lo sviluppatore deve aggiungere un nuovo certificato nell'APK e deve dare il client usando l'aggiornamento forzato altrimenti l'applicazione non funzionerà.
Tuttavia, le metriche relative alla capacità di exploit hanno lo stesso intervallo di tempo. Posso sfruttare il difetto 1 e il difetto 2 usando il framework Xposed usando l'applicazione JustTrustMe al suo interno. Richiederà la stessa quantità di tempo e sforzo. Anche in entrambi gli scenari, se l'hacker riorganizza con successo l'applicazione utilizzando la nostra chiave pubblica o il 2. certificato dopo il reverse engineer, sarà in grado di aggirare queste restrizioni. Qualunque altro vantaggio nell'usare il secondo metodo? C'è qualche buon metodo disponibile di questo?
Quindi con la conformità della continuità e della sicurezza del business qual è il migliore?