Obfuscation del codice
L'offuscamento può fungere solo da ostacolo per un utente malintenzionato che esegue una revisione sicura del codice. Gli offuscatori a pagamento come Dexgaurd sono molto migliori di quelli gratuiti e possono essere utilizzati per aumentare considerevolmente la complessità degli attacchi. Tuttavia, non dovremmo affidarci completamente all'offuscamento in quanto un utente malintenzionato può impiegare una buona quantità di tempo per deoffuscare e analizzare il codice.
Anti-manomissione Android
Il sistema Android è costruito sulla parte superiore del kernel di Linux. Un utente root (Rooting Android Device) nel sistema Linux è un superutente e ha tutti i privilegi amministrativi e quindi può fare quasi tutto sul sistema. Ciò include il bypass di quasi tutte le implementazioni di sicurezza implementate nell'applicazione / dispositivo. Pertanto, credo che non ci sia una soluzione sicura per verificare l'integrità dell'applicazione.
Detto questo, suggerisco l'implementazione di soluzioni che possono aiutarci ad aumentare considerevolmente la complessità degli attacchi e creare applicazioni a prova di manomissione e l'API di Attestazione SafteyNet è una di queste. Personalmente suggerisco l'implementazione di questa API per implementare i controlli di integrità delle applicazioni. È una soluzione a pagamento poiché la quota gratuita è molto limitata. È necessario verificare le linee guida per l'implementazione correttamente e dovrebbe essere implementato in modo sicuro per ottenere i risultati desiderati.
Per anti-hooking / debugging, ti consiglio vivamente di controllare Difese anti-retromarcia Android che possono essere implementate per aumentare sostanzialmente la complessità.