owasp top10 mobile risks - aiea...2015/02/26 · owasp top10 mobile risks shorr kan it engineerig...
TRANSCRIPT
OWASP Top10 Mobile Risks
AIEA - Associazione Italiana Information Systems AuditorsTorino, 26/02/15
Ing. Davide CasaleShorr Kan IT Engineering
www.sk-it.com
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Introduzione
OWASP: Open Web Application Security Project è un’organizzazione no profit con l’obiettivo di migliorare il livello di sicurezza delle applicazioni informatiche. Negli ultimi anni è diventata lo standard de facto per le metodologie di analisi di sicurezza applicativa (penetration test e vulnerability assessment applicativo) e per le best practice di programmazione sicura.
Cos’e’ OWASP ?
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Storia
� OWASP Mobile Security Project� All’interno di OWASP esiste un progetto specifico con un team
dedicato per la sicurezza applicativa nel mondo Mobile� Il progetto è attivo da fine 2010� Url di riferimento: https://www.owasp.org/index.php/Mobile� E’ nato come ramo dell’OWASP generale perché nell’ambito Mobile
esistono dei Rischi specifici differenti da quelli presenti nelle applicazioni in altri ambiti
� L’obiettivo è quello di inserire l’attenzione della sicurezza anche nel ciclo di vita del software dei mobile devices
Threat Model
Dev. Guide
Risks
Secure Libraries Tools
ControlsTraining
Methodologies Cheat Sheets
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Mobile Threat Model
� Mobile Threat Model� Le piattaforme variano rapidamente nel tempo� Le APP sono differenti dalle applicazioni web tradizionali (con tipi e
modi d’uso molto differenti tra di loro)� E’ necessario prendere in considerazione molto di più che la sola
APP :• Remote Web Services• Platform Integration• Device (in)security considerations
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Mobile Threat Model
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Mobile Threat Model
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� TOP 10 Risks � Si analizzeranno i 10 principali rischi 2014 delle piattaforme Mobile
secondo OWASP e la loro evoluzione. � Si proporranno le aree di rischio più che le singole vulnerabilità
specifiche con un approccio agnostico rispetto alla piattaforma Mobile
� Il tutto pesato secondo la Risk Rating Methodology di OWASP.
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M1: Weak Server Side Controls� Si applica ai servizi di backend� Non è specifico del mondo mobile, ma essenziale� Non ci si può fidare dei client (verifiche lato client e non lato server)� Gli attuali controlli usati per le applicazioni non mobile potrebbero
essere da rivedere
� Perdita di confidenzialità sui dati� Perdita di integrità sui dati
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M1: Weak Server Side Controls� Valgono tutte le problematiche evidenziate dall’OWASP Top 10
normale e per il cloud
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M1: Weak Server Side Controls
� Capire nel dettaglio i rischi aggiuntivi introdotti dalle mobile apps nelle architetture esistenti
� Approfittare dell’ampio bagaglio di conoscenze raccolto nell’ambito della sicurezza applicativa server side (owasp top 10, cloud top 10, web services top 10, etc.)
� Best practices di sviluppo, Development guides, etc.
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M2: Insecure Data Storage� Dati sensibili lasciati non protetti� Si applica a dati storati in locale e sincronizzati in ‘cloud’� Di solito si ha la problematica per :
• Dati non cifrati• Caching di dati per tempi lunghi inavvertitamente• Permessi deboli o globali• Non rispetto di best practice
� Perdita di confidenzialità sui dati� Furto di credenziali di accesso� Violazioni della Privacy� Non Compliance
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M2: Insecure Data Storage
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M2: Insecure Data Storage
� Storare solo quello che è strettamente necessario� Non usare aree pubbliche di storage (come l’SD card del Mobile
Device)� Utilizzare security container e le API di file encryption disponibili sulla
piattaforma utilizzata� Non dare permessi world readable o world writeable ai files
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M3: Insufficient Transport Layer Protection� Dati trasmessi via rete non cifrati� Dati trasmessi via rete cifrati in modo debole� Dati trasmessi con cifratura forte, ma ignorando i security warnings
• Ignorare gli errori di validazione dei certificati• In caso di failure fare failback con testo in chiaro
� Attacchi man in the middle� Modifica dei dati in transito (tampering)� Perdita di confidenzialità sui dati
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M3: Insufficient Transport Layer Protection
� Assicurarsi che tutti i dati sensibili che lasciano il device siano cifrati opportunamente
� Questo include dati inviati verso il network del carrier, verso il WiFi e anche verso l’NFC
� Quando sono generate delle security exception o warning c’e’ un motivo: NON ignorarle !
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M4: Unintended Data Leakage� Platform cache storage� Clipboard data� Debug logs� Screenshots, etc.
� Perdita di confidenzialità sui dati
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M4: Unintended Data Leakage
� Assicurarsi di cancellare alla chiusura dell’APP le cache della piattaforma relative alla propria APP
� Cancellare la clipboard all’uscita dall’APP� Non scrivere dati sensibili nei file di debug log (o nei file di log in
generale)
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M5: Poor Authorization and Authentication� Problema in parte nel Mobile e in parte nell’Architettura� Alcune APPs autorizzano e autenticano in base a dati immutabili
potenzialmente compromettibili (IMEI, IMSI, UUID)� Identificativi hardware rimangono anche dopo la cancellazione dei
dati o factory reset del dispositivo� Aggiungere informazioni contestuali può aiutare, ma va fatto nel
modo opportuno
� Privilege escalation� Accessi non autorizzati
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M5: Poor Authorization and Authentication
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M5: Poor Authorization and Authentication
� Informazioni contestuali possono aiutare, ma solo se parte di una implementazione multi fattore
� Autenticazioni fuori banda non aiutano se sono tutte sullo stesso device mobile
� Mai usare il solo device ID o subscriber ID come autenticazione
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M6: Broken Cryptography� Due categorie principali:
• Implementazioni erronee usando strong crypto libs• Implementazioni custom di cifratura (solitamente deboli)
� Encoding != Encryption� Obfuscation != Encryption� Serialization != Encryption
� Privilege escalation� Circumvent business logic� Perdita di confidenzialità sui dati
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M6: Broken Cryptography
� Storare la chiave con i dati cifrati annulla l’utilità di cifrare� Usare crypto libs standard e molto utilizzate e non scriverne di proprie
(a meno di non essere un crittografo esperto)� Trai vantaggio da quello che la tua piattaforma ti offre !
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M7: Client Side Injection� Apps che usano le librerie del browser
• Pure web apps• Hybrid web/native apps
� Attacchi classici del mondo web client: XSS con javascript/html Injection e SQL Injection su database locali
� Attacchi propri del mobile: abusing phone dialer + sms e abusing in-app payments
� Privilege escalation� Compromissione del mobile device� Frodi telefoniche
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M7: Client Side Injection
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M7: Client Side Injection
� Effettuare sanitize/escape dei dati ricevuti prima di utilizzarli � Utilizzare prepared statements per le chiamate ai database;
concatenare stringhe aiuta le SQL Injection� Controllare le chiamate fatte attraverso api browser con opportuni filtri
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M8: Security Decisions Via Untrusted Inputs� Possono essere utilizzati per bypassare permessi o security models� Sono problematiche simili ma differenti per piattaforma
• IOS- Abusing URL schemes• Android- Abusing Intents
� Vari vettori di attacco• Malicious apps• Client side injection
� Privilege escalation� Furto di dati� Consumo di risorse a pagamento (es: telefonate/sms)
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M8: Security Decisions Via Untrusted Inputs
Skype iOS URL Scheme Handling Issue
http://software-security.sans.org/blog/2010/11/08/insecure-handling-url-schemes-apples-ios/
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M8: Security Decisions Via Untrusted Inputs
� Verificare i permessi delle chiamate in fase di input� Chiedere all’utente con un messaggio a video ulteriore autorizzazione
a procedere
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M9: Improper Session Handling� Mobile APP session sono generalmente più lunghe di quelle web� Il perché è dato dalla convenienza ed usabilità� Le APPs mantengono le sessioni via :
• HTTP cookies• Oauth tokens• SSO authentication services
� E’ una cattiva idea usare un identificatore del device come session token
� Privilege escalation� Accessi non autorizzati� Circumvent licensing e pagamenti
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M9: Improper Session Handling
� Non preoccuparsi di far riautenticare l’utente più volte se necessario per la sicurezza
� Assicurarsi che i token possano essere revocati velocemente nel caso di perdita/furto del device
� Utilizzare token di provata ‘randomicità’ (high entropy tokens)
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M10: Lack of Binary Protections� Code decrypt of iOS Apps� Disassembly of Android APK� Jailbreak detection / Root-Detection Controls� Debug Detection Controls
� Perdita di confidenzialità sui dati� Maggiore facilità per il ‘reverse-engineer’/hacker di avere informazioni
sul funzionamento dell’APP� Privilege escalation
Impact
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Top 10 Risks 2014
� M10: Lack of Binary Protections
� Jailbreak detection / Root-Detection Controls� Software di offuscamento del binary code distribuito� Non fidarsi della «security by obscurity» (cioè, ad esempio, inserire
PSK nel codice dell’APP pensando che l’attaccante non riesca a trovarle)
Prevention Tips
05/05/10 Davide Casale Sicurezza Logica
OWASP Top10 Mobile Risks
Shorr Kan IT Engineerig srl
Question Time ?
Ing. Davide [email protected]
Shorr Kan IT Engineering