Le attività di base di un antivirus non richiedono molti degli accessi ai super utenti; per vedere se un determinato file eseguibile sembra contenere un virus noto, quindi l'accesso in lettura a quel file è sufficiente. Questo può essere fatto da userland, senza modificare il kernel o addirittura ottenere root
privilegi; il sistema di permessi configurabili per le app può gestirlo. Allo stesso modo, l'intercettazione del traffico di rete può essere eseguita con la autorizzazione pertinente .
Ciò che richiederebbe di giocherellare con il kernel sarebbe il lancio dell'antivirus su un file quando viene eseguito quel file. Ma Android ha un modello di sicurezza più rigido rispetto ai sistemi operativi desktop; il codice dell'applicazione non può fare tutto ciò che desidera, ad es. ispezionando la RAM utilizzata da altre applicazioni. Ciò limita ciò che un antivirus può fare, ma anche ciò che il virus può fare. Se il malware ha già superato questo livello applicato dal sistema, le cose sono molto peggiori di quelle che l'antivirus può risolvere.
Su un dispositivo rooted, ovviamente, queste cose cambiano molto. Un dispositivo rooted è molto simile a, diciamo, un PC. In questo caso un PC con una specie di Linux, dove sia il virus che l'antivirus sono scarsi.
Apparentemente , Google è (o era) molto contro la semplice idea di un antivirus su Android. Il modello delle autorizzazioni è tale che, almeno sulla carta, il filtraggio dei malware è fatto meglio sul repository delle app (Google Play); almeno così è richiesto . Il software antivirus è utile solo fino a quando rileva il malware che altrimenti sarebbe dannoso per il tuo dispositivo o i tuoi dati, ma tale interruzione sarebbe considerata un bug sul sistema operativo o sul repository dell'app e riparata tempestivamente da Google. Pertanto, un antivirus è efficiente solo nella misura in cui il fornitore di antivirus e la sua politica di aggiornamento sono più reattivi di Google stessi.