2013 02-12-owasp top10 mobile - attaques et solutions sur windows phone (sec309)

Sébastien GIORIA
Sébastien GIORIASecurity player à Universe
The OWASP Foundation
                                                                                                                    http://www.owasp.org




                    OWASP Top10 Mobile
                          Risks
                                                     Sébastien Gioria
                                            OWASP France Leader
                                       OWASP Global Education Committee

                          Microsoft TechDays 2013 - 12 Février 2013 - Paris



                                                                 Copyright © The OWASP Foundation
                           Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.




Friday, February 15, 13
http://www.google.fr/#q=sebastien gioria
                          ‣Consultant Indépendant en Sécurité des
                          Systèmes, spécialisé en Sécurité des Applications

                          ‣OWASP France Leader & Founder - Evangéliste
                          ‣OWASP Global Education Comittee Member
                          (sebastien.gioria@owasp.org)


                          ‣Responsable du Groupe Sécurité des
                          Applications Web au CLUSIF
   Twitter :@SPoint

                              CISA && ISO 27005 Risk Manager

         ‣ +13 ans d’expérience en Sécurité des Systèmes d’Information
         ‣ Différents postes de manager SSI dans la banque, l’assurance et les télécoms
         ‣ Expertise Technique
          - PenTesting,
          - Secure-SDLC
          - Gestion du risque, Architectures fonctionnelles, Audits
          - Consulting et Formation en Réseaux et Sécurité
                                                    2
                                                                                          2
Friday, February 15, 13
Top 10 Risques



Friday, February 15, 13
Top 10 Risques
                     • Vision multi-plateforme :
                          • Windows Phone, Android, IOS, Nokia, ...
                     • Focus sur les risques plutôt que les
                          vulnérabilités.
                     • Utilisation de l’OWASP Risk Rating
                          Methodology pour le classement
                          • https://www.owasp.org/index.php/
                            OWASP_Risk_Rating_Methodology

                                                                      4
Friday, February 15, 13
Les 10 risques
                                                   Risque
                 M1 - Stockage de données non sécurisé

                 M2 - Contrôles serveur défaillants

                 M3 - Protection insuffisante lors du transport de données

                 M4 - Injection client

                 M5 - Authentification et habilitation defaillante

                 M6 - Mauvaise gestion des sessions

                 M7- Utilisation de données d’entrée pour effectuer des décisions sécurité.

                 M8 - Perte de données via des canaux cachés

                 M9 - Chiffrement défectueux

                 M10 - Perte d’information sensible

                                                                                              5
Friday, February 15, 13
6
Friday, February 15, 13
M1 - Stockage de données non sécurisé

        • Les données sensibles ne sont pas                   Impact
                protégées
                                                         • Perte de
        • S’applique aux données locales, tout             confidentialité sur
                comme celles disponibles dans le cloud
                                                           les données
        • Généralement du à :
                                                         • Divulgation
              • Défaut de chiffrement des données
                                                           d’authentifiants
              • Cache de données qui n’est pas
                      généralement prévu                 • Violation de vie
              • Permissions globales ou faibles            privée
              • Non suivi des bonnes pratiques de la     • Non-compliance
                      plateforme

                                                                                 7
Friday, February 15, 13
M1 - Stockage de données non sécurisé




                                             8
Friday, February 15, 13
M1 - Stockage de données non sécurisé




                                             8
Friday, February 15, 13
M1 - Stockage de données non sécurisé




                                             8
Friday, February 15, 13
M1 - Prévention




                                            9
Friday, February 15, 13
M1 - Prévention

            1. Ne stocker que ce qui est réellement nécessaire




                                                                 9
Friday, February 15, 13
M1 - Prévention

            1. Ne stocker que ce qui est réellement nécessaire
            2. Ne jamais stocker de données sur des éléments
               publics (SD-Card...)




                                                                 9
Friday, February 15, 13
M1 - Prévention

            1. Ne stocker que ce qui est réellement nécessaire
            2. Ne jamais stocker de données sur des éléments
               publics (SD-Card...)
            3. Utiliser les APIs de chiffrement et les conteneurs
               sécurisés fournis par la plateforme:




                                                                    9
Friday, February 15, 13
M1 - Prévention

            1. Ne stocker que ce qui est réellement nécessaire
            2. Ne jamais stocker de données sur des éléments
               publics (SD-Card...)
            3. Utiliser les APIs de chiffrement et les conteneurs
               sécurisés fournis par la plateforme:
            4. Utilisation d’InTune




                                                                    9
Friday, February 15, 13
M1 - Prévention

            1. Ne stocker que ce qui est réellement nécessaire
            2. Ne jamais stocker de données sur des éléments
               publics (SD-Card...)
            3. Utiliser les APIs de chiffrement et les conteneurs
               sécurisés fournis par la plateforme:
            4. Utilisation d’InTune
            5. Utilisation de DPAPI pour une réelle protection et pas
               juste le stockage :


                                                                        9
Friday, February 15, 13
M1 - Prévention

            1. Ne stocker que ce qui est réellement nécessaire
            2. Ne jamais stocker de données sur des éléments
               publics (SD-Card...)
            3. Utiliser les APIs de chiffrement et les conteneurs
               sécurisés fournis par la plateforme:
            4. Utilisation d’InTune
            5. Utilisation de DPAPI pour une réelle protection et pas
               juste le stockage :
                  •       System.Security.Cryptography.ProtectedData
                                                                        9
Friday, February 15, 13
10
Friday, February 15, 13
M2- Contrôles serveur défaillants

        • S’applique uniquement aux                 Impact
                services de backend.
                                                • Perte de
        • Non spécifique aux mobiles.             confidentialité
                                                  sur des
        • Il n’est pas plus facile de
                                                  données
                faire confiance au client.
        • Il est nécessaire de revoir les       • Perte
                                                  d’intégrité sur
                contrôles actuels classiques.
                                                  des données

                                                                    11
Friday, February 15, 13
M2 - Contrôles serveur défaillants

                          OWASP Top 10                             OWASP Cloud Top 10




 • https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project • https://www.owasp.org/images/4/47/Cloud-
                                                                     Top10-Security-Risks.pdf

                                                                                                               12
Friday, February 15, 13
M2- Prévention




                                           13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :




                                                                     13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :
               • exemple : JSON, ...REST, ....




                                                                     13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :
               • exemple : JSON, ...REST, ....
        2. OWASP Top 10, Cloud Top 10, Web Services Top 10




                                                                     13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :
               • exemple : JSON, ...REST, ....
        2. OWASP Top 10, Cloud Top 10, Web Services Top 10
               • https://www.owasp.org/index.php/
                          Category:OWASP_Top_Ten_Project




                                                                     13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :
               • exemple : JSON, ...REST, ....
        2. OWASP Top 10, Cloud Top 10, Web Services Top 10
               • https://www.owasp.org/index.php/
                          Category:OWASP_Top_Ten_Project
               • https://www.owasp.org/index.php/Category:OWASP_Cloud_
                          %E2%80%90_10_Project




                                                                         13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :
               • exemple : JSON, ...REST, ....
        2. OWASP Top 10, Cloud Top 10, Web Services Top 10
               • https://www.owasp.org/index.php/
                          Category:OWASP_Top_Ten_Project
               • https://www.owasp.org/index.php/Category:OWASP_Cloud_
                          %E2%80%90_10_Project
        3. Voir les Cheat sheets, guides de développement, l’ESAPI



                                                                         13
Friday, February 15, 13
M2- Prévention

        1. Comprendre les nouveaux risques induits par les
           applications mobiles sur les architectures existantes :
               • exemple : JSON, ...REST, ....
        2. OWASP Top 10, Cloud Top 10, Web Services Top 10
               • https://www.owasp.org/index.php/
                          Category:OWASP_Top_Ten_Project
               • https://www.owasp.org/index.php/Category:OWASP_Cloud_
                          %E2%80%90_10_Project
        3. Voir les Cheat sheets, guides de développement, l’ESAPI
               • https://www.owasp.org/index.php/Cheat_Sheets
                                                                         13
Friday, February 15, 13
14
Friday, February 15, 13
M3 - Protection insuffisante lors du
                                transport de données
        • Perte complète de chiffrement                                     Impact
                  des données transmises.
                                                                         • Attacks MITM
        • Faible chiffrement des
                  données transmises.
                                                                         • Modification
                                                                           des données
        • Fort chiffrement, mais oubli                                     transmises
                  des alertes sécurité
                                                                         • Perte de
              •       Ignorer les erreurs de validation de certificats
                                                                           confidentialité
              •       Retour en mode non chiffré après erreurs



                                                                                             15
Friday, February 15, 13
M3 - Protection insuffisante lors du
                           transport de données
         Exemple : Protocole d’authentification des clients
         Google
         • L’entete d’authentification est envoyé sur HTTP
         • Lorsqu’un utilisateur se connecte via un WIFI,
                   l’application automatiquement envoie le jeton dans
                   le but de synchroniser les données depuis le serveur.
         • Il suffit d’écouter le réseau et de voler cet élément
                   pour usurper l’identité
               •          http://www.uni-ulm.de/in/mi/mitarbeiter/koenings/catching-authtokens.html



                                                                                                      16
Friday, February 15, 13
M3 - Prévention




                                            17
Friday, February 15, 13
M3 - Prévention
         1. Vérifier que les données sensibles quittent
            l’appareil chiffrées.




                                                          17
Friday, February 15, 13
M3 - Prévention
         1. Vérifier que les données sensibles quittent
            l’appareil chiffrées.
         2. Quelque soit les données et les réseaux : Wifi,
            NFC( coucou Renaud :) ), GSM, ....




                                                              17
Friday, February 15, 13
M3 - Prévention
         1. Vérifier que les données sensibles quittent
            l’appareil chiffrées.
         2. Quelque soit les données et les réseaux : Wifi,
            NFC( coucou Renaud :) ), GSM, ....
                • http://2012.hackitoergosum.org/blog/wp-
                          content/uploads/2012/04/HES-2012-rlifchitz-
                          contactless-payments-insecurity.pdf




                                                                        17
Friday, February 15, 13
M3 - Prévention
         1. Vérifier que les données sensibles quittent
            l’appareil chiffrées.
         2. Quelque soit les données et les réseaux : Wifi,
            NFC( coucou Renaud :) ), GSM, ....
                • http://2012.hackitoergosum.org/blog/wp-
                          content/uploads/2012/04/HES-2012-rlifchitz-
                          contactless-payments-insecurity.pdf
         3. Ne pas ignorer les erreurs de sécurité !


                                                                        17
Friday, February 15, 13
18
Friday, February 15, 13
18
Friday, February 15, 13
19
Friday, February 15, 13
M4- Injection Client
        • Utilisation des fonctions de                       Impact
                  navigateurs dans les applications
              •       Apps pure Web
                                                      • Compromission
              •       Apps hybrides
                                                        de l’appareil
        • On retrouve les vulnérabilités
                  connues                             • Fraude à l’appel
              •       Injection XSS et HTML

              •       SQL Injection
                                                      • Augmentation
                                                        de privilèges
        • Des nouveautés interessantes
              •       Abus d’appels et de SMS

              •       Abus de paiements ?


                                                                           20
Friday, February 15, 13
M4 - Injection client

Facilité d’envoi de SMS
       SmsComposeTask	
  smsComposeTask	
  =	
  new	
  SmsComposeTask();

       smsComposeTask.To	
  =	
  "2065550123";
       smsComposeTask.Body	
  =	
  "Try	
  this	
  new	
  application.	
  It's	
  great!";

       smsComposeTask.Show();




               Erreur, classique....



                                                                                             21
Friday, February 15, 13
M4 - Prévention




                                            22
Friday, February 15, 13
M4 - Prévention

       1. Valider les données d’entrée avant utilisation




                                                           22
Friday, February 15, 13
M4 - Prévention

       1. Valider les données d’entrée avant utilisation
       2. Nettoyer les données en sortie avant
          affichage.




                                                           22
Friday, February 15, 13
M4 - Prévention

       1. Valider les données d’entrée avant utilisation
       2. Nettoyer les données en sortie avant
          affichage.
       3. Minimiser les capacités/privilèges des
          applications hybrides Web.




                                                           22
Friday, February 15, 13
23
Friday, February 15, 13
M5- Authentification et habilitation
                                     defaillante
        • 50% du a des problèmes d’architecture,           Impact
                50% du à des problèmes du mobile
        • Certaines applications se reposent            • Elevation de
                uniquement sur des éléments               Privileges
                théoriquement inchangeables, mais
                pouvant être compromis (IMEI, IMSI,
                UUID)
                                                        • Accès non
                                                          autorisé.
        • Les identifiants matériels persistent
                apres les resets ou les nettoyages de
                données.
        • De l’information contextuelle ajoutée,
                est utile, mais pas infaillible.
                                                                         24
Friday, February 15, 13
M5 - Prevention




                                            25
Friday, February 15, 13
M5 - Prevention

                 1. De l’information contextuelle peut améliorer
                    les choses, mais uniquement en cas
                    d’implementation d’authentification multi-
                    facteur.




                                                                   25
Friday, February 15, 13
M5 - Prevention

                 1. De l’information contextuelle peut améliorer
                    les choses, mais uniquement en cas
                    d’implementation d’authentification multi-
                    facteur.
                 2. Impossible de faire du “Out-of-band” sur le
                    même matériel (eg SMS...)




                                                                   25
Friday, February 15, 13
M5 - Prevention

                 1. De l’information contextuelle peut améliorer
                    les choses, mais uniquement en cas
                    d’implementation d’authentification multi-
                    facteur.
                 2. Impossible de faire du “Out-of-band” sur le
                    même matériel (eg SMS...)
                 3. Ne jamais utiliser l’ID machine ou l’ID
                    opérateur (subscriber ID), comme élément
                    unique d’authentification.

                                                                   25
Friday, February 15, 13
26
Friday, February 15, 13
M6 - Mauvaise gestion des sessions
        •       Les sessions applicatives mobiles sont                  Impact
                généralement plus longues que sur une
                application normale.
              •       Dans un but de facilité d’utilisation         • Elévation de
              •       Parceque le réseau est plus “lent” et moins
                                                                      privilèges.
                      “sur”
                                                                    • Accès non
        •       Le maintien de session applicative se fait via        autorisé.
              •       HTTP cookies
              •       OAuth tokens
                                                                    • Contournement
                                                                      des licenses et
              •       SSO authentication services
                                                                      des éléments de
        •       Très mauvaise idée d’utiliser l’ID matériel
                                                                      paiements
                comme identification de session.

                                                                                        27
Friday, February 15, 13
M6- Prévention




                                           28
Friday, February 15, 13
M6- Prévention


        1. Ne pas avoir peur de redemander aux utilisateurs
           de se ré-authentifier plus souvent.




                                                          28
Friday, February 15, 13
M6- Prévention


        1. Ne pas avoir peur de redemander aux utilisateurs
           de se ré-authentifier plus souvent.
        2. S’assurer que les ID/token peuvent rapidement
           être révoqués en cas de perte.




                                                           28
Friday, February 15, 13
M6- Prévention


        1. Ne pas avoir peur de redemander aux utilisateurs
           de se ré-authentifier plus souvent.
        2. S’assurer que les ID/token peuvent rapidement
           être révoqués en cas de perte.
        3. Utiliser des outils de gestion des sessions
           éprouvés


                                                           28
Friday, February 15, 13
M7- Utilisation de données d’entrée pour
                 effectuer des décisions sécurité.
        • Peut être exploité pour passer           Impact
                outre les permissions et les
                modèles de sécurité.           • Utilisation de
                                                 ressources
        • Globalement similaires sur les
                                                 payantes.
                différentes plateformes
        • Des vecteurs d’attaques              • Exfiltration de
                importants                       données
              • Applications malveillantes     • Elevation de
              • Injection client                 privilèges.
                                                                   29
Friday, February 15, 13
M7- Utilisation de données d’entrée pour effectuer
                       des décisions sécurité.
       Exemple : gestion de skype dans l’URL sur
       IOS...




       • http://software-security.sans.org/blog/2010/11/08/
           insecure-handling-url-schemes-apples-ios/

                                                              30
Friday, February 15, 13
M7- Prévention




                                           31
Friday, February 15, 13
M7- Prévention

           1. Vérifier les permissions lors de l’utilisation de
              données d’entrée.




                                                                  31
Friday, February 15, 13
M7- Prévention

           1. Vérifier les permissions lors de l’utilisation de
              données d’entrée.
           2. Demander à l’utilisateur une confirmation avant
              l’utilisation de fonctions sensibles ou de données
              personnelles.




                                                                   31
Friday, February 15, 13
M7- Prévention

           1. Vérifier les permissions lors de l’utilisation de
              données d’entrée.
           2. Demander à l’utilisateur une confirmation avant
              l’utilisation de fonctions sensibles ou de données
              personnelles.
                  • Meme si l’application est propre à l’entreprise !



                                                                        31
Friday, February 15, 13
M7- Prévention

           1. Vérifier les permissions lors de l’utilisation de
              données d’entrée.
           2. Demander à l’utilisateur une confirmation avant
              l’utilisation de fonctions sensibles ou de données
              personnelles.
                  • Meme si l’application est propre à l’entreprise !
           3. Lorsqu’il n’est pas possible de vérifier les
              permissions, s’assurer via une étape additionnelle
              du lancement de la fonction sensible.
                                                                        31
Friday, February 15, 13
32
Friday, February 15, 13
M8- Perte de données via des canaux
                        cachés
        • Mélange de fonctionnalités de la                       Impact
                plateforme et de failles de programmation.
        • Les données sensibles se trouvent un peu
                partout. ou l’on ne s’attend pas....         • Perte
              •       Web caches                               définitive de
              •       Logs de clavier...                       données.
              •       Screenshots
              •       Logs (system, crash)
                                                             • Violation de la
              •       Répertoires temporaires.
                                                               vie privée.
        • Faire attention a ce que font les librairies
                tierces avec les données
                utilisateurs( publicité, analyse, ...)

                                                                                 33
Friday, February 15, 13
M8- Prévention




                                           34
Friday, February 15, 13
M8- Prévention
        1. Ne jamais stocker des authentifiants/passwds ou d’autres
           informations sensibles dans les logs.




                                                                      34
Friday, February 15, 13
M8- Prévention
        1. Ne jamais stocker des authentifiants/passwds ou d’autres
           informations sensibles dans les logs.
        2. Supprimer les données sensibles avant les screenshots,
           utiliser les capacités des caches pour les contenu des
           applications Web, ...




                                                                      34
Friday, February 15, 13
M8- Prévention
        1. Ne jamais stocker des authentifiants/passwds ou d’autres
           informations sensibles dans les logs.
        2. Supprimer les données sensibles avant les screenshots,
           utiliser les capacités des caches pour les contenu des
           applications Web, ...
        3. Debugger avec attention les applications avant mise en
           production pour vérifier les fichiers produits, modifiés, lus, ....




                                                                                 34
Friday, February 15, 13
M8- Prévention
        1. Ne jamais stocker des authentifiants/passwds ou d’autres
           informations sensibles dans les logs.
        2. Supprimer les données sensibles avant les screenshots,
           utiliser les capacités des caches pour les contenu des
           applications Web, ...
        3. Debugger avec attention les applications avant mise en
           production pour vérifier les fichiers produits, modifiés, lus, ....
        4. Porter une attention particulière aux librairies tierces.




                                                                                 34
Friday, February 15, 13
M8- Prévention
        1. Ne jamais stocker des authentifiants/passwds ou d’autres
           informations sensibles dans les logs.
        2. Supprimer les données sensibles avant les screenshots,
           utiliser les capacités des caches pour les contenu des
           applications Web, ...
        3. Debugger avec attention les applications avant mise en
           production pour vérifier les fichiers produits, modifiés, lus, ....
        4. Porter une attention particulière aux librairies tierces.
        5. Tester les applications sur différentes versions de la
           plateforme....



                                                                                 34
Friday, February 15, 13
35
Friday, February 15, 13
M9- Chiffrement défectueux
        • 2 catégories importantes
                                                          Impact
          • Implémentations défectueuses via
                      l’utilisation de librairies de   • Perte de
                      chiffrement.
                                                         confidentialité.
              • Implementations personnelles de
                      chiffrement....                  • Elevation de
        • Bien se rappeler les bases !!!                 privilèges
          • Codage (Base64) != chiffrement
                                                       • Contournemen
          • Obfuscation != chiffrement                   t de la logique
          • Serialization != chiffrement                 métier.
          • Vous vous appelez Bruce ?
                                                                           36
Friday, February 15, 13
M9- Prévention




                                           37
Friday, February 15, 13
M9- Prévention

           1. Stocker la clef et les données chiffrées n’est
              pas correct.




                                                               37
Friday, February 15, 13
M9- Prévention

           1. Stocker la clef et les données chiffrées n’est
              pas correct.
           2. Il vaut mieux utiliser des librairies connues de
              chiffrement que sa propre librairie....




                                                                 37
Friday, February 15, 13
M9- Prévention

           1. Stocker la clef et les données chiffrées n’est
              pas correct.
           2. Il vaut mieux utiliser des librairies connues de
              chiffrement que sa propre librairie....
           3. Utiliser les avantages éventuels de la
              plateforme !




                                                                 37
Friday, February 15, 13
M9- Prévention

           1. Stocker la clef et les données chiffrées n’est
              pas correct.
           2. Il vaut mieux utiliser des librairies connues de
              chiffrement que sa propre librairie....
           3. Utiliser les avantages éventuels de la
              plateforme !
                 • System.Security.Cryptography

                                                                 37
Friday, February 15, 13
M9- Prévention

           1. Stocker la clef et les données chiffrées n’est
              pas correct.
           2. Il vaut mieux utiliser des librairies connues de
              chiffrement que sa propre librairie....
           3. Utiliser les avantages éventuels de la
              plateforme !
                 • System.Security.Cryptography

                                                                 37
Friday, February 15, 13
38
Friday, February 15, 13
39
Friday, February 15, 13
Dark side ?




                                        40
Friday, February 15, 13
M10- Perte d’information sensible
        • M10(enfoui dans le matériel) est                    Impact
                différent de M1 (stocké)
        • Il est assez simple de faire du reverse-         • Perte
                engineer sur des applications mobiles...
                                                             d’authentifiants
        • L’obfuscation de code ne supprime pas
                le risque.                                 • Exposition de
                                                             propriété
        • Quelques informations classiques
                trouvées :                                   intellectuelle ?
              • clefs d’API
              • Passwords
              • Logique métier sensible.
                                                                                41
Friday, February 15, 13
M10- Prévention




                                            42
Friday, February 15, 13
M10- Prévention
         1. Les clefs d’API privées portent bien leur nom.
            Il ne faut pas les stocker sur le client.




                                                             42
Friday, February 15, 13
M10- Prévention
         1. Les clefs d’API privées portent bien leur nom.
            Il ne faut pas les stocker sur le client.
         2. Si il existe une logique métier propriétaire, il
            convient de la faire executée par le serveur !




                                                               42
Friday, February 15, 13
M10- Prévention
         1. Les clefs d’API privées portent bien leur nom.
            Il ne faut pas les stocker sur le client.
         2. Si il existe une logique métier propriétaire, il
            convient de la faire executée par le serveur !
         3. Il n’y a jamais ou presque de réelle raison de
            stocker des mots de passes en dur (si vous le
            pensez, vous avez d’autres problèmes à
            venir...)


                                                               42
Friday, February 15, 13
Conclusion



Friday, February 15, 13
Conclusion




                                       44
Friday, February 15, 13
Conclusion
          • La sécurité mobile en est au début.




                                                  44
Friday, February 15, 13
Conclusion
          • La sécurité mobile en est au début.
          • Nous venons d’identifier quelques problèmes,
                  il est nécessaire de les corriger !




                                                           44
Friday, February 15, 13
Conclusion
          • La sécurité mobile en est au début.
          • Nous venons d’identifier quelques problèmes,
                  il est nécessaire de les corriger !
          • Les plateformes deviennent plus matures, les
                  applications le doivent aussi...




                                                           44
Friday, February 15, 13
Conclusion
          • La sécurité mobile en est au début.
          • Nous venons d’identifier quelques problèmes,
                  il est nécessaire de les corriger !
          • Les plateformes deviennent plus matures, les
                  applications le doivent aussi...
          • Ne pas oublier que la sécurité mobile
                  comporte une partie application
                  serveur !

                                                           44
Friday, February 15, 13
Liens
  •OWASP Mobile Project : https://www.owasp.org/index.php/
           OWASP_Mobile_Security_Project
  •OWASP Top10 : https://www.owasp.org/index.php/
           Category:OWASP_Top_Ten_Project
  •http://www.windowsphone.com/en-US/business/security
  •http://windowsphonehacker.com/articles/
           the_complete_guide_to_jailbreaking_windows_phone_7_an
           d_7.5-09-24-11



                                                              45
Friday, February 15, 13
Vous pouvez donc vous
               protéger de lui maintenant...


                          @SPoint


                          sebastien.gioria@owasp.org




                                                       46

Friday, February 15, 13
Vous pouvez donc vous
               protéger de lui maintenant...


                          @SPoint


                          sebastien.gioria@owasp.org

       Il n'y a qu'une façon d'échouer, c'est d'abandonner avant
                     d'avoir réussi [Olivier Lockert]
                                                                   46

Friday, February 15, 13
1 sur 97

Recommandé

2012 11-07-owasp mobile top10 v01 par
2012 11-07-owasp mobile top10 v012012 11-07-owasp mobile top10 v01
2012 11-07-owasp mobile top10 v01Sébastien GIORIA
1.7K vues95 diapositives
OWASP Top10 2013 - Présentation aux RSSIA 2013 par
OWASP Top10 2013 - Présentation aux RSSIA 2013OWASP Top10 2013 - Présentation aux RSSIA 2013
OWASP Top10 2013 - Présentation aux RSSIA 2013Sébastien GIORIA
1.8K vues86 diapositives
Présentation au CRI-Ouest par
Présentation au CRI-OuestPrésentation au CRI-Ouest
Présentation au CRI-OuestSébastien GIORIA
636 vues50 diapositives
2013 03-01 automatiser les tests sécurité par
2013 03-01 automatiser les tests sécurité2013 03-01 automatiser les tests sécurité
2013 03-01 automatiser les tests sécuritéSébastien GIORIA
1.7K vues54 diapositives
OWASP TOP 10 Proactive par
OWASP TOP 10 ProactiveOWASP TOP 10 Proactive
OWASP TOP 10 ProactiveAbdessamad TEMMAR
928 vues23 diapositives
Revue d'actualité - OSSIR Résist - Janvier 2013 par
Revue d'actualité - OSSIR Résist - Janvier 2013Revue d'actualité - OSSIR Résist - Janvier 2013
Revue d'actualité - OSSIR Résist - Janvier 2013MDAL
473 vues11 diapositives

Contenu connexe

En vedette

Agenda Ciudadana por la Transparencia Sopó, Cundinamarca par
Agenda Ciudadana por la Transparencia Sopó, CundinamarcaAgenda Ciudadana por la Transparencia Sopó, Cundinamarca
Agenda Ciudadana por la Transparencia Sopó, CundinamarcaTransparenciaporColombia
399 vues4 diapositives
Table ronde j.frignet jm.bluet y.basiron par
Table ronde j.frignet jm.bluet y.basironTable ronde j.frignet jm.bluet y.basiron
Table ronde j.frignet jm.bluet y.basironAlliancePalmeDurable
1.3K vues19 diapositives
La veille de Né Kid du 09.11.11 : Les nouveaux business models par
La veille de Né Kid du 09.11.11 : Les nouveaux business modelsLa veille de Né Kid du 09.11.11 : Les nouveaux business models
La veille de Né Kid du 09.11.11 : Les nouveaux business modelsNé Kid
947 vues30 diapositives
Videoconferencia par
VideoconferenciaVideoconferencia
VideoconferenciaCiuad de Asis
192 vues9 diapositives
Affectation pea par
Affectation peaAffectation pea
Affectation peaRodolphe Migaire
527 vues4 diapositives
Migrations PHP 5 - Solutions linux 2009 par
Migrations PHP 5 - Solutions linux 2009Migrations PHP 5 - Solutions linux 2009
Migrations PHP 5 - Solutions linux 2009Eric D.
704 vues13 diapositives

En vedette(20)

La veille de Né Kid du 09.11.11 : Les nouveaux business models par Né Kid
La veille de Né Kid du 09.11.11 : Les nouveaux business modelsLa veille de Né Kid du 09.11.11 : Les nouveaux business models
La veille de Né Kid du 09.11.11 : Les nouveaux business models
Né Kid947 vues
Migrations PHP 5 - Solutions linux 2009 par Eric D.
Migrations PHP 5 - Solutions linux 2009Migrations PHP 5 - Solutions linux 2009
Migrations PHP 5 - Solutions linux 2009
Eric D.704 vues
Cours 1-navigateurs par migau1
Cours 1-navigateursCours 1-navigateurs
Cours 1-navigateurs
migau1392 vues
Qualit'ENR - Les Français et les énergies renouvelables - par OpinionWay - ja... par OpinionWay
Qualit'ENR - Les Français et les énergies renouvelables - par OpinionWay - ja...Qualit'ENR - Les Français et les énergies renouvelables - par OpinionWay - ja...
Qualit'ENR - Les Français et les énergies renouvelables - par OpinionWay - ja...
OpinionWay599 vues
Roadbook Quinzaine de l'Innovation - le rapport complet par Patrick Hollenfeltz
Roadbook Quinzaine de l'Innovation - le rapport completRoadbook Quinzaine de l'Innovation - le rapport complet
Roadbook Quinzaine de l'Innovation - le rapport complet
Anorexia y bulimia par auximar
Anorexia y bulimiaAnorexia y bulimia
Anorexia y bulimia
auximar1.2K vues
Resumen de la propuesta para la reconstrucción de los estatutos par Pablo Dorado
Resumen de la propuesta para la reconstrucción de los estatutosResumen de la propuesta para la reconstrucción de los estatutos
Resumen de la propuesta para la reconstrucción de los estatutos
Pablo Dorado328 vues
Tratado de extradicion ven y usa mesicic3 ven anexo36 par Solo Clic Vzla
Tratado de extradicion ven y usa  mesicic3 ven anexo36Tratado de extradicion ven y usa  mesicic3 ven anexo36
Tratado de extradicion ven y usa mesicic3 ven anexo36
Solo Clic Vzla389 vues
La veille de ne kid du 09.12.10 : les tricheurs du web par Né Kid
La veille de ne kid du 09.12.10 : les tricheurs du webLa veille de ne kid du 09.12.10 : les tricheurs du web
La veille de ne kid du 09.12.10 : les tricheurs du web
Né Kid176 vues

Similaire à 2013 02-12-owasp top10 mobile - attaques et solutions sur windows phone (sec309)

OWASP Top10 Mobile - Attaques et solutions sur Windows Phone par
OWASP Top10 Mobile - Attaques et solutions sur Windows PhoneOWASP Top10 Mobile - Attaques et solutions sur Windows Phone
OWASP Top10 Mobile - Attaques et solutions sur Windows PhoneMicrosoft
728 vues97 diapositives
OWASP Mobile Top10 - Les 10 risques sur les mobiles par
OWASP Mobile Top10 -  Les 10 risques sur les mobilesOWASP Mobile Top10 -  Les 10 risques sur les mobiles
OWASP Mobile Top10 - Les 10 risques sur les mobilesSébastien GIORIA
3.5K vues96 diapositives
ASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien Gioria par
ASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien GioriaASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien Gioria
ASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien GioriaCyber Security Alliance
763 vues95 diapositives
2012 03-02-sdl-sgi-v03 par
2012 03-02-sdl-sgi-v032012 03-02-sdl-sgi-v03
2012 03-02-sdl-sgi-v03Sébastien GIORIA
1.1K vues86 diapositives
2012 03-01-ror security v01 par
2012 03-01-ror security v012012 03-01-ror security v01
2012 03-01-ror security v01Sébastien GIORIA
761 vues94 diapositives
Sécurité des applications mobiles par
Sécurité des applications mobilesSécurité des applications mobiles
Sécurité des applications mobilesSebastien Gioria
2.5K vues19 diapositives

Similaire à 2013 02-12-owasp top10 mobile - attaques et solutions sur windows phone (sec309)(20)

OWASP Top10 Mobile - Attaques et solutions sur Windows Phone par Microsoft
OWASP Top10 Mobile - Attaques et solutions sur Windows PhoneOWASP Top10 Mobile - Attaques et solutions sur Windows Phone
OWASP Top10 Mobile - Attaques et solutions sur Windows Phone
Microsoft728 vues
OWASP Mobile Top10 - Les 10 risques sur les mobiles par Sébastien GIORIA
OWASP Mobile Top10 -  Les 10 risques sur les mobilesOWASP Mobile Top10 -  Les 10 risques sur les mobiles
OWASP Mobile Top10 - Les 10 risques sur les mobiles
Sébastien GIORIA3.5K vues
ASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien Gioria par Cyber Security Alliance
ASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien GioriaASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien Gioria
ASFWS 2012 - OWASP Top 10 Mobile, risques et solutions par Sébastien Gioria
Cyber risques: Etes-vous prêts ? 7 prévisions pour 2015 par Symantec
Cyber risques: Etes-vous prêts ? 7 prévisions pour 2015Cyber risques: Etes-vous prêts ? 7 prévisions pour 2015
Cyber risques: Etes-vous prêts ? 7 prévisions pour 2015
Symantec783 vues
Présentation pfe inchaallah par Ilyass_rebla
Présentation pfe inchaallahPrésentation pfe inchaallah
Présentation pfe inchaallah
Ilyass_rebla6K vues
Traitement d’incidents de sécurité : cas pratiques, retours d’expérience et r... par Microsoft
Traitement d’incidents de sécurité : cas pratiques, retours d’expérience et r...Traitement d’incidents de sécurité : cas pratiques, retours d’expérience et r...
Traitement d’incidents de sécurité : cas pratiques, retours d’expérience et r...
Microsoft524 vues
Avast 10 points clés de la sécurité informatique des pme par AntivirusAvast
Avast   10 points clés de la sécurité informatique des pmeAvast   10 points clés de la sécurité informatique des pme
Avast 10 points clés de la sécurité informatique des pme
AntivirusAvast353 vues
Le bon, la brute et le truand dans les nuages par ConFoo
Le bon, la brute et le truand dans les nuagesLe bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuages
ConFoo1.2K vues
Webinar EEIE #05 - Cybersécurité : Best Practices par Groupe EEIE
Webinar EEIE #05 - Cybersécurité : Best PracticesWebinar EEIE #05 - Cybersécurité : Best Practices
Webinar EEIE #05 - Cybersécurité : Best Practices
Groupe EEIE694 vues
Sécurité informatique par hediajegham
Sécurité informatiqueSécurité informatique
Sécurité informatique
hediajegham1.2K vues

Plus de Sébastien GIORIA

OWASP Top10 IoT - CLUSIR Infornord Décembre 2014 par
OWASP Top10 IoT - CLUSIR Infornord Décembre 2014OWASP Top10 IoT - CLUSIR Infornord Décembre 2014
OWASP Top10 IoT - CLUSIR Infornord Décembre 2014Sébastien GIORIA
2K vues25 diapositives
Analyser la sécurité de son code source avec SonarSource par
Analyser la sécurité de son code source avec SonarSourceAnalyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSourceSébastien GIORIA
3.9K vues23 diapositives
2014 09-25-club-27001 iso 27034-presentation-v2.2 par
2014 09-25-club-27001 iso 27034-presentation-v2.22014 09-25-club-27001 iso 27034-presentation-v2.2
2014 09-25-club-27001 iso 27034-presentation-v2.2Sébastien GIORIA
1.8K vues32 diapositives
SonarQube et la Sécurité par
SonarQube et la SécuritéSonarQube et la Sécurité
SonarQube et la SécuritéSébastien GIORIA
3.1K vues15 diapositives
2014 09-04-pj par
2014 09-04-pj2014 09-04-pj
2014 09-04-pjSébastien GIORIA
1.7K vues34 diapositives
Owasp top 10 2010 Resist toulouse par
Owasp top 10   2010  Resist toulouseOwasp top 10   2010  Resist toulouse
Owasp top 10 2010 Resist toulouseSébastien GIORIA
1.2K vues41 diapositives

Plus de Sébastien GIORIA(20)

OWASP Top10 IoT - CLUSIR Infornord Décembre 2014 par Sébastien GIORIA
OWASP Top10 IoT - CLUSIR Infornord Décembre 2014OWASP Top10 IoT - CLUSIR Infornord Décembre 2014
OWASP Top10 IoT - CLUSIR Infornord Décembre 2014
Analyser la sécurité de son code source avec SonarSource par Sébastien GIORIA
Analyser la sécurité de son code source avec SonarSourceAnalyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSource
Sébastien GIORIA3.9K vues
2014 09-25-club-27001 iso 27034-presentation-v2.2 par Sébastien GIORIA
2014 09-25-club-27001 iso 27034-presentation-v2.22014 09-25-club-27001 iso 27034-presentation-v2.2
2014 09-25-club-27001 iso 27034-presentation-v2.2
Sébastien GIORIA1.8K vues
2010 03-10-web applications firewalls v 0.8 par Sébastien GIORIA
2010 03-10-web applications firewalls v 0.82010 03-10-web applications firewalls v 0.8
2010 03-10-web applications firewalls v 0.8
Sébastien GIORIA1.2K vues

2013 02-12-owasp top10 mobile - attaques et solutions sur windows phone (sec309)

  • 1. The OWASP Foundation http://www.owasp.org OWASP Top10 Mobile Risks Sébastien Gioria OWASP France Leader OWASP Global Education Committee Microsoft TechDays 2013 - 12 Février 2013 - Paris Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. Friday, February 15, 13
  • 2. http://www.google.fr/#q=sebastien gioria ‣Consultant Indépendant en Sécurité des Systèmes, spécialisé en Sécurité des Applications ‣OWASP France Leader & Founder - Evangéliste ‣OWASP Global Education Comittee Member (sebastien.gioria@owasp.org) ‣Responsable du Groupe Sécurité des Applications Web au CLUSIF Twitter :@SPoint CISA && ISO 27005 Risk Manager ‣ +13 ans d’expérience en Sécurité des Systèmes d’Information ‣ Différents postes de manager SSI dans la banque, l’assurance et les télécoms ‣ Expertise Technique - PenTesting, - Secure-SDLC - Gestion du risque, Architectures fonctionnelles, Audits - Consulting et Formation en Réseaux et Sécurité 2 2 Friday, February 15, 13
  • 3. Top 10 Risques Friday, February 15, 13
  • 4. Top 10 Risques • Vision multi-plateforme : • Windows Phone, Android, IOS, Nokia, ... • Focus sur les risques plutôt que les vulnérabilités. • Utilisation de l’OWASP Risk Rating Methodology pour le classement • https://www.owasp.org/index.php/ OWASP_Risk_Rating_Methodology 4 Friday, February 15, 13
  • 5. Les 10 risques Risque M1 - Stockage de données non sécurisé M2 - Contrôles serveur défaillants M3 - Protection insuffisante lors du transport de données M4 - Injection client M5 - Authentification et habilitation defaillante M6 - Mauvaise gestion des sessions M7- Utilisation de données d’entrée pour effectuer des décisions sécurité. M8 - Perte de données via des canaux cachés M9 - Chiffrement défectueux M10 - Perte d’information sensible 5 Friday, February 15, 13
  • 7. M1 - Stockage de données non sécurisé • Les données sensibles ne sont pas Impact protégées • Perte de • S’applique aux données locales, tout confidentialité sur comme celles disponibles dans le cloud les données • Généralement du à : • Divulgation • Défaut de chiffrement des données d’authentifiants • Cache de données qui n’est pas généralement prévu • Violation de vie • Permissions globales ou faibles privée • Non suivi des bonnes pratiques de la • Non-compliance plateforme 7 Friday, February 15, 13
  • 8. M1 - Stockage de données non sécurisé 8 Friday, February 15, 13
  • 9. M1 - Stockage de données non sécurisé 8 Friday, February 15, 13
  • 10. M1 - Stockage de données non sécurisé 8 Friday, February 15, 13
  • 11. M1 - Prévention 9 Friday, February 15, 13
  • 12. M1 - Prévention 1. Ne stocker que ce qui est réellement nécessaire 9 Friday, February 15, 13
  • 13. M1 - Prévention 1. Ne stocker que ce qui est réellement nécessaire 2. Ne jamais stocker de données sur des éléments publics (SD-Card...) 9 Friday, February 15, 13
  • 14. M1 - Prévention 1. Ne stocker que ce qui est réellement nécessaire 2. Ne jamais stocker de données sur des éléments publics (SD-Card...) 3. Utiliser les APIs de chiffrement et les conteneurs sécurisés fournis par la plateforme: 9 Friday, February 15, 13
  • 15. M1 - Prévention 1. Ne stocker que ce qui est réellement nécessaire 2. Ne jamais stocker de données sur des éléments publics (SD-Card...) 3. Utiliser les APIs de chiffrement et les conteneurs sécurisés fournis par la plateforme: 4. Utilisation d’InTune 9 Friday, February 15, 13
  • 16. M1 - Prévention 1. Ne stocker que ce qui est réellement nécessaire 2. Ne jamais stocker de données sur des éléments publics (SD-Card...) 3. Utiliser les APIs de chiffrement et les conteneurs sécurisés fournis par la plateforme: 4. Utilisation d’InTune 5. Utilisation de DPAPI pour une réelle protection et pas juste le stockage : 9 Friday, February 15, 13
  • 17. M1 - Prévention 1. Ne stocker que ce qui est réellement nécessaire 2. Ne jamais stocker de données sur des éléments publics (SD-Card...) 3. Utiliser les APIs de chiffrement et les conteneurs sécurisés fournis par la plateforme: 4. Utilisation d’InTune 5. Utilisation de DPAPI pour une réelle protection et pas juste le stockage : • System.Security.Cryptography.ProtectedData 9 Friday, February 15, 13
  • 19. M2- Contrôles serveur défaillants • S’applique uniquement aux Impact services de backend. • Perte de • Non spécifique aux mobiles. confidentialité sur des • Il n’est pas plus facile de données faire confiance au client. • Il est nécessaire de revoir les • Perte d’intégrité sur contrôles actuels classiques. des données 11 Friday, February 15, 13
  • 20. M2 - Contrôles serveur défaillants OWASP Top 10 OWASP Cloud Top 10 • https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project • https://www.owasp.org/images/4/47/Cloud- Top10-Security-Risks.pdf 12 Friday, February 15, 13
  • 21. M2- Prévention 13 Friday, February 15, 13
  • 22. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : 13 Friday, February 15, 13
  • 23. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : • exemple : JSON, ...REST, .... 13 Friday, February 15, 13
  • 24. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : • exemple : JSON, ...REST, .... 2. OWASP Top 10, Cloud Top 10, Web Services Top 10 13 Friday, February 15, 13
  • 25. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : • exemple : JSON, ...REST, .... 2. OWASP Top 10, Cloud Top 10, Web Services Top 10 • https://www.owasp.org/index.php/ Category:OWASP_Top_Ten_Project 13 Friday, February 15, 13
  • 26. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : • exemple : JSON, ...REST, .... 2. OWASP Top 10, Cloud Top 10, Web Services Top 10 • https://www.owasp.org/index.php/ Category:OWASP_Top_Ten_Project • https://www.owasp.org/index.php/Category:OWASP_Cloud_ %E2%80%90_10_Project 13 Friday, February 15, 13
  • 27. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : • exemple : JSON, ...REST, .... 2. OWASP Top 10, Cloud Top 10, Web Services Top 10 • https://www.owasp.org/index.php/ Category:OWASP_Top_Ten_Project • https://www.owasp.org/index.php/Category:OWASP_Cloud_ %E2%80%90_10_Project 3. Voir les Cheat sheets, guides de développement, l’ESAPI 13 Friday, February 15, 13
  • 28. M2- Prévention 1. Comprendre les nouveaux risques induits par les applications mobiles sur les architectures existantes : • exemple : JSON, ...REST, .... 2. OWASP Top 10, Cloud Top 10, Web Services Top 10 • https://www.owasp.org/index.php/ Category:OWASP_Top_Ten_Project • https://www.owasp.org/index.php/Category:OWASP_Cloud_ %E2%80%90_10_Project 3. Voir les Cheat sheets, guides de développement, l’ESAPI • https://www.owasp.org/index.php/Cheat_Sheets 13 Friday, February 15, 13
  • 30. M3 - Protection insuffisante lors du transport de données • Perte complète de chiffrement Impact des données transmises. • Attacks MITM • Faible chiffrement des données transmises. • Modification des données • Fort chiffrement, mais oubli transmises des alertes sécurité • Perte de • Ignorer les erreurs de validation de certificats confidentialité • Retour en mode non chiffré après erreurs 15 Friday, February 15, 13
  • 31. M3 - Protection insuffisante lors du transport de données Exemple : Protocole d’authentification des clients Google • L’entete d’authentification est envoyé sur HTTP • Lorsqu’un utilisateur se connecte via un WIFI, l’application automatiquement envoie le jeton dans le but de synchroniser les données depuis le serveur. • Il suffit d’écouter le réseau et de voler cet élément pour usurper l’identité • http://www.uni-ulm.de/in/mi/mitarbeiter/koenings/catching-authtokens.html 16 Friday, February 15, 13
  • 32. M3 - Prévention 17 Friday, February 15, 13
  • 33. M3 - Prévention 1. Vérifier que les données sensibles quittent l’appareil chiffrées. 17 Friday, February 15, 13
  • 34. M3 - Prévention 1. Vérifier que les données sensibles quittent l’appareil chiffrées. 2. Quelque soit les données et les réseaux : Wifi, NFC( coucou Renaud :) ), GSM, .... 17 Friday, February 15, 13
  • 35. M3 - Prévention 1. Vérifier que les données sensibles quittent l’appareil chiffrées. 2. Quelque soit les données et les réseaux : Wifi, NFC( coucou Renaud :) ), GSM, .... • http://2012.hackitoergosum.org/blog/wp- content/uploads/2012/04/HES-2012-rlifchitz- contactless-payments-insecurity.pdf 17 Friday, February 15, 13
  • 36. M3 - Prévention 1. Vérifier que les données sensibles quittent l’appareil chiffrées. 2. Quelque soit les données et les réseaux : Wifi, NFC( coucou Renaud :) ), GSM, .... • http://2012.hackitoergosum.org/blog/wp- content/uploads/2012/04/HES-2012-rlifchitz- contactless-payments-insecurity.pdf 3. Ne pas ignorer les erreurs de sécurité ! 17 Friday, February 15, 13
  • 40. M4- Injection Client • Utilisation des fonctions de Impact navigateurs dans les applications • Apps pure Web • Compromission • Apps hybrides de l’appareil • On retrouve les vulnérabilités connues • Fraude à l’appel • Injection XSS et HTML • SQL Injection • Augmentation de privilèges • Des nouveautés interessantes • Abus d’appels et de SMS • Abus de paiements ? 20 Friday, February 15, 13
  • 41. M4 - Injection client Facilité d’envoi de SMS SmsComposeTask  smsComposeTask  =  new  SmsComposeTask(); smsComposeTask.To  =  "2065550123"; smsComposeTask.Body  =  "Try  this  new  application.  It's  great!"; smsComposeTask.Show(); Erreur, classique.... 21 Friday, February 15, 13
  • 42. M4 - Prévention 22 Friday, February 15, 13
  • 43. M4 - Prévention 1. Valider les données d’entrée avant utilisation 22 Friday, February 15, 13
  • 44. M4 - Prévention 1. Valider les données d’entrée avant utilisation 2. Nettoyer les données en sortie avant affichage. 22 Friday, February 15, 13
  • 45. M4 - Prévention 1. Valider les données d’entrée avant utilisation 2. Nettoyer les données en sortie avant affichage. 3. Minimiser les capacités/privilèges des applications hybrides Web. 22 Friday, February 15, 13
  • 47. M5- Authentification et habilitation defaillante • 50% du a des problèmes d’architecture, Impact 50% du à des problèmes du mobile • Certaines applications se reposent • Elevation de uniquement sur des éléments Privileges théoriquement inchangeables, mais pouvant être compromis (IMEI, IMSI, UUID) • Accès non autorisé. • Les identifiants matériels persistent apres les resets ou les nettoyages de données. • De l’information contextuelle ajoutée, est utile, mais pas infaillible. 24 Friday, February 15, 13
  • 48. M5 - Prevention 25 Friday, February 15, 13
  • 49. M5 - Prevention 1. De l’information contextuelle peut améliorer les choses, mais uniquement en cas d’implementation d’authentification multi- facteur. 25 Friday, February 15, 13
  • 50. M5 - Prevention 1. De l’information contextuelle peut améliorer les choses, mais uniquement en cas d’implementation d’authentification multi- facteur. 2. Impossible de faire du “Out-of-band” sur le même matériel (eg SMS...) 25 Friday, February 15, 13
  • 51. M5 - Prevention 1. De l’information contextuelle peut améliorer les choses, mais uniquement en cas d’implementation d’authentification multi- facteur. 2. Impossible de faire du “Out-of-band” sur le même matériel (eg SMS...) 3. Ne jamais utiliser l’ID machine ou l’ID opérateur (subscriber ID), comme élément unique d’authentification. 25 Friday, February 15, 13
  • 53. M6 - Mauvaise gestion des sessions • Les sessions applicatives mobiles sont Impact généralement plus longues que sur une application normale. • Dans un but de facilité d’utilisation • Elévation de • Parceque le réseau est plus “lent” et moins privilèges. “sur” • Accès non • Le maintien de session applicative se fait via autorisé. • HTTP cookies • OAuth tokens • Contournement des licenses et • SSO authentication services des éléments de • Très mauvaise idée d’utiliser l’ID matériel paiements comme identification de session. 27 Friday, February 15, 13
  • 54. M6- Prévention 28 Friday, February 15, 13
  • 55. M6- Prévention 1. Ne pas avoir peur de redemander aux utilisateurs de se ré-authentifier plus souvent. 28 Friday, February 15, 13
  • 56. M6- Prévention 1. Ne pas avoir peur de redemander aux utilisateurs de se ré-authentifier plus souvent. 2. S’assurer que les ID/token peuvent rapidement être révoqués en cas de perte. 28 Friday, February 15, 13
  • 57. M6- Prévention 1. Ne pas avoir peur de redemander aux utilisateurs de se ré-authentifier plus souvent. 2. S’assurer que les ID/token peuvent rapidement être révoqués en cas de perte. 3. Utiliser des outils de gestion des sessions éprouvés 28 Friday, February 15, 13
  • 58. M7- Utilisation de données d’entrée pour effectuer des décisions sécurité. • Peut être exploité pour passer Impact outre les permissions et les modèles de sécurité. • Utilisation de ressources • Globalement similaires sur les payantes. différentes plateformes • Des vecteurs d’attaques • Exfiltration de importants données • Applications malveillantes • Elevation de • Injection client privilèges. 29 Friday, February 15, 13
  • 59. M7- Utilisation de données d’entrée pour effectuer des décisions sécurité. Exemple : gestion de skype dans l’URL sur IOS... • http://software-security.sans.org/blog/2010/11/08/ insecure-handling-url-schemes-apples-ios/ 30 Friday, February 15, 13
  • 60. M7- Prévention 31 Friday, February 15, 13
  • 61. M7- Prévention 1. Vérifier les permissions lors de l’utilisation de données d’entrée. 31 Friday, February 15, 13
  • 62. M7- Prévention 1. Vérifier les permissions lors de l’utilisation de données d’entrée. 2. Demander à l’utilisateur une confirmation avant l’utilisation de fonctions sensibles ou de données personnelles. 31 Friday, February 15, 13
  • 63. M7- Prévention 1. Vérifier les permissions lors de l’utilisation de données d’entrée. 2. Demander à l’utilisateur une confirmation avant l’utilisation de fonctions sensibles ou de données personnelles. • Meme si l’application est propre à l’entreprise ! 31 Friday, February 15, 13
  • 64. M7- Prévention 1. Vérifier les permissions lors de l’utilisation de données d’entrée. 2. Demander à l’utilisateur une confirmation avant l’utilisation de fonctions sensibles ou de données personnelles. • Meme si l’application est propre à l’entreprise ! 3. Lorsqu’il n’est pas possible de vérifier les permissions, s’assurer via une étape additionnelle du lancement de la fonction sensible. 31 Friday, February 15, 13
  • 66. M8- Perte de données via des canaux cachés • Mélange de fonctionnalités de la Impact plateforme et de failles de programmation. • Les données sensibles se trouvent un peu partout. ou l’on ne s’attend pas.... • Perte • Web caches définitive de • Logs de clavier... données. • Screenshots • Logs (system, crash) • Violation de la • Répertoires temporaires. vie privée. • Faire attention a ce que font les librairies tierces avec les données utilisateurs( publicité, analyse, ...) 33 Friday, February 15, 13
  • 67. M8- Prévention 34 Friday, February 15, 13
  • 68. M8- Prévention 1. Ne jamais stocker des authentifiants/passwds ou d’autres informations sensibles dans les logs. 34 Friday, February 15, 13
  • 69. M8- Prévention 1. Ne jamais stocker des authentifiants/passwds ou d’autres informations sensibles dans les logs. 2. Supprimer les données sensibles avant les screenshots, utiliser les capacités des caches pour les contenu des applications Web, ... 34 Friday, February 15, 13
  • 70. M8- Prévention 1. Ne jamais stocker des authentifiants/passwds ou d’autres informations sensibles dans les logs. 2. Supprimer les données sensibles avant les screenshots, utiliser les capacités des caches pour les contenu des applications Web, ... 3. Debugger avec attention les applications avant mise en production pour vérifier les fichiers produits, modifiés, lus, .... 34 Friday, February 15, 13
  • 71. M8- Prévention 1. Ne jamais stocker des authentifiants/passwds ou d’autres informations sensibles dans les logs. 2. Supprimer les données sensibles avant les screenshots, utiliser les capacités des caches pour les contenu des applications Web, ... 3. Debugger avec attention les applications avant mise en production pour vérifier les fichiers produits, modifiés, lus, .... 4. Porter une attention particulière aux librairies tierces. 34 Friday, February 15, 13
  • 72. M8- Prévention 1. Ne jamais stocker des authentifiants/passwds ou d’autres informations sensibles dans les logs. 2. Supprimer les données sensibles avant les screenshots, utiliser les capacités des caches pour les contenu des applications Web, ... 3. Debugger avec attention les applications avant mise en production pour vérifier les fichiers produits, modifiés, lus, .... 4. Porter une attention particulière aux librairies tierces. 5. Tester les applications sur différentes versions de la plateforme.... 34 Friday, February 15, 13
  • 74. M9- Chiffrement défectueux • 2 catégories importantes Impact • Implémentations défectueuses via l’utilisation de librairies de • Perte de chiffrement. confidentialité. • Implementations personnelles de chiffrement.... • Elevation de • Bien se rappeler les bases !!! privilèges • Codage (Base64) != chiffrement • Contournemen • Obfuscation != chiffrement t de la logique • Serialization != chiffrement métier. • Vous vous appelez Bruce ? 36 Friday, February 15, 13
  • 75. M9- Prévention 37 Friday, February 15, 13
  • 76. M9- Prévention 1. Stocker la clef et les données chiffrées n’est pas correct. 37 Friday, February 15, 13
  • 77. M9- Prévention 1. Stocker la clef et les données chiffrées n’est pas correct. 2. Il vaut mieux utiliser des librairies connues de chiffrement que sa propre librairie.... 37 Friday, February 15, 13
  • 78. M9- Prévention 1. Stocker la clef et les données chiffrées n’est pas correct. 2. Il vaut mieux utiliser des librairies connues de chiffrement que sa propre librairie.... 3. Utiliser les avantages éventuels de la plateforme ! 37 Friday, February 15, 13
  • 79. M9- Prévention 1. Stocker la clef et les données chiffrées n’est pas correct. 2. Il vaut mieux utiliser des librairies connues de chiffrement que sa propre librairie.... 3. Utiliser les avantages éventuels de la plateforme ! • System.Security.Cryptography 37 Friday, February 15, 13
  • 80. M9- Prévention 1. Stocker la clef et les données chiffrées n’est pas correct. 2. Il vaut mieux utiliser des librairies connues de chiffrement que sa propre librairie.... 3. Utiliser les avantages éventuels de la plateforme ! • System.Security.Cryptography 37 Friday, February 15, 13
  • 83. Dark side ? 40 Friday, February 15, 13
  • 84. M10- Perte d’information sensible • M10(enfoui dans le matériel) est Impact différent de M1 (stocké) • Il est assez simple de faire du reverse- • Perte engineer sur des applications mobiles... d’authentifiants • L’obfuscation de code ne supprime pas le risque. • Exposition de propriété • Quelques informations classiques trouvées : intellectuelle ? • clefs d’API • Passwords • Logique métier sensible. 41 Friday, February 15, 13
  • 85. M10- Prévention 42 Friday, February 15, 13
  • 86. M10- Prévention 1. Les clefs d’API privées portent bien leur nom. Il ne faut pas les stocker sur le client. 42 Friday, February 15, 13
  • 87. M10- Prévention 1. Les clefs d’API privées portent bien leur nom. Il ne faut pas les stocker sur le client. 2. Si il existe une logique métier propriétaire, il convient de la faire executée par le serveur ! 42 Friday, February 15, 13
  • 88. M10- Prévention 1. Les clefs d’API privées portent bien leur nom. Il ne faut pas les stocker sur le client. 2. Si il existe une logique métier propriétaire, il convient de la faire executée par le serveur ! 3. Il n’y a jamais ou presque de réelle raison de stocker des mots de passes en dur (si vous le pensez, vous avez d’autres problèmes à venir...) 42 Friday, February 15, 13
  • 90. Conclusion 44 Friday, February 15, 13
  • 91. Conclusion • La sécurité mobile en est au début. 44 Friday, February 15, 13
  • 92. Conclusion • La sécurité mobile en est au début. • Nous venons d’identifier quelques problèmes, il est nécessaire de les corriger ! 44 Friday, February 15, 13
  • 93. Conclusion • La sécurité mobile en est au début. • Nous venons d’identifier quelques problèmes, il est nécessaire de les corriger ! • Les plateformes deviennent plus matures, les applications le doivent aussi... 44 Friday, February 15, 13
  • 94. Conclusion • La sécurité mobile en est au début. • Nous venons d’identifier quelques problèmes, il est nécessaire de les corriger ! • Les plateformes deviennent plus matures, les applications le doivent aussi... • Ne pas oublier que la sécurité mobile comporte une partie application serveur ! 44 Friday, February 15, 13
  • 95. Liens •OWASP Mobile Project : https://www.owasp.org/index.php/ OWASP_Mobile_Security_Project •OWASP Top10 : https://www.owasp.org/index.php/ Category:OWASP_Top_Ten_Project •http://www.windowsphone.com/en-US/business/security •http://windowsphonehacker.com/articles/ the_complete_guide_to_jailbreaking_windows_phone_7_an d_7.5-09-24-11 45 Friday, February 15, 13
  • 96. Vous pouvez donc vous protéger de lui maintenant... @SPoint sebastien.gioria@owasp.org 46 Friday, February 15, 13
  • 97. Vous pouvez donc vous protéger de lui maintenant... @SPoint sebastien.gioria@owasp.org Il n'y a qu'une façon d'échouer, c'est d'abandonner avant d'avoir réussi [Olivier Lockert] 46 Friday, February 15, 13