Reverse Engineering: Ecco come si mettono in sicurezza le App
Dopo aver trattato il perché sia necessario implementare programma di controllo sistemico, vediamo ora il principale sistema di controllo e test di app: il Reverse Engineering.
Nel precedente post abbiamo visto, infatti, una panoramica sulla sicurezza delle App Mobile e quali sono oggi i principali rischi ad esse correlati.
L’interazione degli strumenti informatici con le macchine, elettrodomestici e sistemi di controllo remoto è già realtà. Fruibile non solo agli addetti ai lavori ma oggi anche a un vastissimo pubblico in costante crescita.
L’automazione è di fatto presente in molti sistemi. Siamo solo nella fase iniziale di un percorso davvero interessante ma non privo d’insidie.
Industry 4.0 e la digitalizzazione delle imprese e delle PMI, sono temi caldi e in fermento in questa fine 2016.
Di pari passo allo sviluppo assistiamo ad una sensibilizzazione sull’aumento delle superfici di attacco da parte di hacker malintenzionati.
Phishing, Cryptolocker, Malware ed attacchi informatico di vario genere sono sempre in agguato dietro un sistema non aggiornato, configurato male o non sicuro per uno o più motivi.
Ma allora, tornando al mondo delle applicazioni mobile, come possiamo proteggerci?
Reverse Engineering: a cosa serve?
Il controllo remoto di molti apparecchi casalinghi od industriali, come possono essere il riscaldamento di casa o la gestione di frigoriferi industriali, può essere attuato come sappiamo attraverso applicazioni installate sui telefoni cellulari o tablet.
Grazie a queste e grazie alla connettività Macchinari-Dispositivi ne abbiamo il controllo e la gestione.
Naturalmente però tutto ciò passa in rete. Le app mobile rappresentano solo lo strumento più comodo per avere nel palmo della nostra mano un intero impianto di produzione industriale 🙂 .
In cosa consiste un Test di Reverse Engineering?
Il Reverse Engineering comincia nella maggior parte dei casi dall’applicazione sviluppata, ad esempio in formato APK.
Questo processo implica la decompilazione dell’applicazione e l’analisi del codice sorgente, per verificarne la correttezza e la sicurezza.
Decompilare l’app significa tornare a leggere il codice strutturale, per ed intervenire laddove la sicurezza viene meno.
È fondamentale, perciò, eseguire questi test in maniera periodica, in concomitanza di nuove release e aggiornamenti delle app sviluppate.
Il Reverse Engineering si occupa di verificare la struttura di un’applicazione, al fine di migliorarne o aumentarne la sicurezza.
L’Ingegneria Inversa ci consente di testare l’integrità di un’applicazione, in modo da esplorare ogni sua peculiarità. Grazie all’esecuzione di Test Reverse Engineering possiamo integrare le parti necessarie al corretto funzionamento e all’aumento della sicurezza.
In buona sostanza il Reverse Engineering è importante per contrastare ogni eventuale vulnerabilità, ovviamente in questo caso si tratta di prevenirla anticipando i tempi.
Un esempio concreto sull’importanza del testare le applicazioni mobile:
Per fare un esempio verosimile di rischio e prevenzione attraverso Reverse Engineering, poniamo che:
- L’azienda PIPPOAPP realizza un’App che consente ai commerciali delle imprese di accedere ai dati aziendali presenti nel server principale, dove le aziende archiviano tutti i dati, compresi la disponibilità a magazzino dei prodotti, fondamentale per eseguire gli ordini.
- Mettiamo caso che l’applicazione si riveli un successo. Molte aziende, produttori (b2b) e rivenditori al dettaglio (b2c) appartenenti alle più svariate categorie merceologiche, comincino ad utilizzare questa App.
Distributori di alimentari, venditori di macchinari industriali, commerciali di materiali edili, abbigliamento, piastrelle, componentistica, ecc… .
Tutte queste imprese comprano questa App della PIPPOAPP e la mettono a disposizione dei loro rappresentati e responsabili vendite. Questi ultimi, attraverso smartphone e tablet, si potranno collegare al server per vendere le quantità disponibili di magazzino dei prodotti. - Punto critico, l’app si rivela non sicura perchè la PIPPOAPP non ha eseguito Reverse Engineering e test periodici.
A questo punto cosa potrebbe succedere se un malintenzionato violasse l’Applicazione in questione?
Per prima cosa tutti i dati dell’azienda che usano l’app, sarebbero alla mercè dell’hacker che come minimo li potrebbe condividere in rete o rivendere.
Quindi per rimanere nel concreto: dati personali dei dipendenti, account, anagrafiche complete presenti nel server dell’azienda, numeri di telefono, codice fiscali, mail, retribuzione mensile, ruolo e molto altro.
Infine, ovviamente, l’hacker potrebbe sapere le disponibilità e i prodotti in magazzino e quali sono i volumi d’affari dell’azienda. In pratica tutto quanto c’è da sapere per apportare danni di enorme entità.
Il danno può essere molto elevato
In questo caso la violazione produrrebbe danni su più fronti.
In primo luogo, un enorme danno diretto economico e di immagine verso l’azienda che ha acquistato l’app fornendola ai propri commerciali.
In secondo luogo, le aziende si rifarebbero tramite vie legali contro l’azienda PIPPOAPP sviluppatrice dell’app violata, in quanto non sicura.
Di conseguenza un altrettanto danno di immagine ed economico sarebbe sicuramente rivolto alla PIPPOAPP del momento.
Infine, ma non da meno per importanza e gravità, ci sarebbe il rischio concreto dei danni indiretti.
Ovvero, tutte le implicazioni possibili che nascono qualora qualcuno entrasse in possesso dei dati personali e li usasse impropriamente per danneggiare gli utenti stessi.
Questo lo scenario su un target circoscritto. Ora immaginiamo la violazione di un’App di comune uso pubblico, in ambito sanitario o nella Pubblica Amministrazione.
Potrebbe seriamente mettere a rischio migliaia se non milioni di persone, offrendo, di fatto, il controllo dei dati personali, del telefono o tablet di proprietà delle stesse da parte di hacker malintenzionati.
Il Reverse Engineering è fondamentale per garantire un livello minimo di sicurezza delle app.
Per questi principali motivi, diretti ed indiretti, e per fare tutto il possibile per tutelare i consumatori!
Vestudio offre tra i suoi servizi di sicurezza informatica Test Reverse Engineering su app mobile, siamo sempre disponibili per consulenze senza impegno.