Android è un sistema operativo “fragile” per alcuni punti e “forte” in altri, oggi andremo a vedere uno dei suoi punti fragili, la sicurezza.
Il nostro amato robottino infatti, grazie alla sua versatilità, portabilità in svariate piattaforme, grazie al kernel Linux è molto diffuso in tantissimi dispositivi, si va dai cellulari alle versioni x86 per desktop, ai tablet, e… ai frigoriferi :), il merito è più che altro del caro kernel, adattabile per ogni esigenza!
Quindi, tornando a noi, la sicurezza è un problema su Android, si sente spesso parlare di nuovi malware, piuttosto che di backdoor, oppure falle nel kernel, o comunque nel core del sistema operativo, ma oggi vedremo come ripararsi da malware, backdoor, phishing…

android_infected_first

1) Antivirus? No grazie!

Molte persone installano suite antivirus, alcune, anche più di una… Ma cosa comporta questo?

  • Drain della batteria
  • Drain delle risorse
  • Protezione inutile.

Spesso, gli antivirus “rompono” per programmi che a noi servono! E dopo andremo a vedere perché gli antivirus sono inutili

2)Firewall!

LINK ARTICOLO: Iptables, configurazione
Ok, provvediamo quindi a configurare il firewall come nella guida linkata sopra 🙂
Intanto vi faccio vedere anche un firewall che blocca l’accesso internet alle apps direttamente, iptables blocca le porte.
Play store: NoRoot Firewall
NoRoot Firewall, creerà una connessione VPN che permetterà all’app di verificare quali app stanno tentando di accedere ad intenet. Ogni qualvolta un’app sta tentando di comunicare con l’esterno, il firewall resta in’attesa di una risposta. Basta cliccare la notifica, e nell’activity selezionare “Consenti” o “Nega”.

3) Aptoide, apk esterni

Un’altro modo per evitare di essere infettati è evitare il più possibile store esterni come Aptoide, eccetto Amazon AppStore ed FDroid. Se scaricate da Aptoide, siate sicuri che l’app sia verificata dal team, o ancora meglio se scaricate soltanto dallo store ufficiale di Aptoide.
Ora voi direte: Anche sul PlayStore alcune app hanno malware, sì, ma il numero è talmente ridotto che è quasi impossibile essere infettati.
Per questo l’antivirus è inutile. Basta avere accortezze personali.

apps

4) Clean Master, CCleaner… No grazie

Ancora una volta ripeto che Clean Master, CCleaner sono INUTILI, ecco le conseguenze di utilizzo di questi strumenti:

  • Drain della batteria
  • Drain delle risorse
  • Qualche volta, viene eliminato un file a noi utile
  • Ricollegandoci ai drainaggi, quandi Clean Master killa un processo (facebook…) questo viene riaperto per via dei Services Android (Non i Play Services). Dopo 1 minuto o meno il vostro Facebook sarà ancora in esecuzione :3

Piuttosto un wipe cache da recovery fa più che bene 🙂

twrp_wipe-cache

5) Alert JavaScript

JavaScript è un linguaggio di programmazione orientato agli oggetti utilizzato prevalentemente per lo sviluppo web, ma è possibile sviluppare anche applicazioni in ambito desktop.
Prima di JS, le pagine web erano statiche, i valori non cambiavano, veniva utilizzato esclusivamente HTML, che attenzione è un linguaggio di markup e non di programmazione/scripting. HTML definisce le pagine, JavaScript le anima (lato client, ovvero i visitatori).
JavaScript, animando è anche in grado di far apparire delle simpatiche finestre di dialogo che ci avvertono di qualcosa… Questo grazie a una funzione predefinita chiamata alert(), è molto semplice utilizzare alert(), basta inserire come argomento una stringa che poi viene utilizzata per mostrare il messaggio:

alert("Messaggio qui");

quindi apparirà una finestra di dialogo che ci dice Messaggio qui, e un OK per chiudere la suddetta finestra.
Ora, quando noi apriamo il nostro browser inconsciamente diamo informazioni sulla nostra posizione, ma anche su quale Browser stiamo utilizzando, e su quale sistema operativo il browser è in esecuzione, per via di un parametro chiamato User-agent.
Quindi se il parametro User-agent è Chrome su Android (verifica con istruzione condizionale grazie a JavaScript) allora mostra un alert con scritto: “Il tuo telefono è infettato da 12 virus…”
Questi sono messaggi FALSI! Non sono veri, per il semplice fatto che a meno che non venga eseguita una java applet che veramente fa uno scan del vostro cellulare non è possibile identificare virus! (Vi sconsiglio di eseguire Java Applets 🙂 a caso ).

android_js_alert_browser

6) Crittografia del celluare

Questo è un consiglio per chi è a rischio “ladrata”, infatti se il cellulare viene rubato, appena verrà riacceso è impossibile decrittografare l’archivio del telefono se non si sa la password.
Basta collegare il telefono alla corrente elettrica, avere la batteria almeno all’80% e avere 1 ora di pazienza 🙂
Andate su Impostazioni->Sicurezza->Crittografia del telefono, seguite le istruzioni.
Non saprei con quale algoritmo le partitions vengono crittografate, credo invece che venga crittografata /data
Ovviamente l’avvio sarà più lungo

decrypt

7) Lock Screen: No sequenza, face unlock… PIN da 5 cifre

Ancora, evitiamo di usare sequenze o face unlock, ma utilizziamo un pin da almeno 5 cifre a caso, che ne so 71360!

8) Antifurto cerberus

Un’altra soluzione per magari ritrovare il telefono se viene rubato è quella di installare cerberus. Personalmente consiglio a tutti di comprarne una licenza (3 EUR), e se possibile utilizzare il pacchetto .zip in recovery se disponiamo di permessi root, se il ladro fa un ripristino, cerberus rimane comunque attivo…
Per effettuare operazioni con cerberus basta andare qui, loggarsi e il gioco è fatto.

Download cerberus qui o qui

screenshot_cerberus

Avete i permessi di root? Meglio!

1) SuperSU: Attiviamo la PseudoPro, impostiamo password e alcuni accorgimenti per il terminale

In SuperSU , nelle impostazioni, attiviamo l’opzione PseudoPro che attiva SuperSU pro gratis, sì, non si dovrebbe fare, vi consiglio di acquistarla perché Chainfire merita… Ammetto che io non ho donato ma spero di farlo presto.
Comunque: clicchiamo sulla checkbox per PseudoPro, poi una volta riavviata l’app Selezioniamo un pin nelle impostazioni, in fine nel fragment principale, diciamo a SuperSU di chiederci la password ogni 15 minuti per il terminale, in modo che nessuno usi “su” a nostra insaputa.


supersu_pincode

2) CyanogenMod Privacy Guard

Se avete una CM, andate in impostazioni->privacy->privacy guard, quindi selezionare per quali app restringere l’accesso alle risorse.
privacy_guard

3) AdAway, via pubblicità!

Possiamo anche installare AdAway che in pratica modifica il file hosts (/system/etc/hosts), reindirizza tutto il traffico dei vari siti pubblicitari a 127.0.0.1 che corrisponde al vostro indirizzo del vostro device (aka localhost).
Il file hosts è anche utile per associare un nome a un indirizzo, per esempio
192.168.1.1 router

$ ping router

Download di AdAway: qui.

adaway_getting

4) SELinux ENFORCING!!

Molte persone disabilitano SELinux per avere più libertà nella customizzazione e nella stabilità complessiva del sistema operativo. Sì, è così, ma avremo conseguenze nella sicurezza.
SELinux è un modulo del kernel Linux sviluppato dalla NSA, questa tipologia di moduli si chiama “MAC”, acronimo di Mandatory Access Control. È un firewall interno, che consente di controllare i processi, file, integrità di quest’ultimi etc… operazioni appunto di sicurezza.
È possibile disabilitarlo impostando il valore 0 nel build.prop (cercate per selinux), vi consiglio di lasciarlo/impostarlo a 1.
Download Build.prop editor: qui