L’omniprésence du mobile dans les usages professionnels et personnels a transformé le périmètre de sécurité des entreprises. Aujourd’hui, une application mobile n’est pas simplement une extension de votre site web ; c’est une porte d’entrée directe vers votre système d’information, souvent stockée dans la poche de vos utilisateurs. Les briefs déposés sur notre plateforme le confirment : les projets d’applications mobiles se multiplient, qu’il s’agisse de solutions B2C, d’outils métiers ou de plateformes e-commerce. Cependant, un constat alarmant émerge de notre analyse quotidienne des cahiers des charges : la sécurité est encore trop souvent traitée comme une fonctionnalité additionnelle, voire une réflexion de dernière minute, plutôt que comme une fondation structurelle.
Les conséquences de cette négligence peuvent être désastreuses. Au-delà des amendes liées au RGPD, qui peuvent atteindre des montants colossaux, c’est la réputation de l’entreprise qui est en jeu. Une fuite de données via une API mal sécurisée ou un stockage local compromis peut anéantir la confiance de vos utilisateurs en quelques heures. Une constante du marché : les demandes de « pompiers », ces entreprises cherchant en urgence une agence de cybersécurité après un incident. Notre rôle, à travers cet article, est de vous fournir une méthodologie préventive et exhaustive.
Établir une politique de sécurité pour vos applications mobiles ne consiste pas uniquement à écrire du code sécurisé. C’est une démarche globale qui englobe l’architecture, le cycle de développement, la conformité légale et la gestion des risques. Forts de notre expérience d’intermédiation et des retours terrain de nos agences partenaires spécialisées, nous avons structuré ce guide pour vous aider à définir, implémenter et maintenir un niveau de sécurité optimal pour vos actifs mobiles.
Le chiffrement des données locales et la gestion du stockage sécurisé
La première ligne de défense d’une application mobile concerne les données qui résident physiquement sur l’appareil de l’utilisateur. Contrairement à un serveur sécurisé dans un data center, un smartphone est un environnement hostile : il peut être volé, perdu, ou infecté par des malwares. Le stockage local non protégé est un classique du Top 10 OWASP Mobile : une part majeure des vulnérabilités critiques provient d’un stockage local défaillant.
Les risques liés au stockage non sécurisé
Les développeurs, souvent par souci de rapidité ou de facilité d’accès, ont tendance à stocker des informations sensibles (tokens d’authentification, données personnelles, clés API) dans des espaces de stockage clairs comme les `SharedPreferences` sur Android ou les fichiers `plist` standards sur iOS. Cette pratique est dangereuse. Un attaquant ayant un accès physique à l’appareil, ou parvenant à injecter un code malveillant, peut lire ces fichiers sans aucune difficulté.
Nous observons également des erreurs fréquentes liées à la mise en cache involontaire. Les claviers virtuels, les captures d’écran automatiques du système lors de la mise en arrière-plan de l’application, ou encore les logs de débogage oubliés en production sont autant de vecteurs de fuite de données. Pour une application bancaire ou médicale, cela constitue une violation majeure des obligations réglementaires.
Bonnes pratiques et implémentation technique
Pour pallier ces risques, l’utilisation des mécanismes de stockage sécurisé natifs est impérative. Sur iOS, le Keychain est conçu pour stocker des petits secrets (mots de passe, clés cryptographiques) de manière chiffrée par le matériel. Sur Android, le Keystore System offre des fonctionnalités similaires. Pour les bases de données locales plus volumineuses (comme SQLite), l’utilisation d’extensions de chiffrement comme SQLCipher est devenue un standard indispensable.
Il est crucial de chiffrer les données non seulement au repos, mais aussi de s’assurer que les clés de chiffrement ne sont pas codées « en dur » dans l’application. C’est une erreur que nos experts partenaires relèvent régulièrement lors de tests d’intrusion. Les clés doivent être générées dynamiquement ou stockées dans les enclaves sécurisées du processeur (Secure Enclave sur iOS, Trusted Execution Environment sur Android).
La sécurisation des échanges réseaux et des API
Une application mobile moderne est avant tout un client qui communique avec des serveurs distants via des API (Application Programming Interfaces). C’est lors de ce transit que les données sont le plus vulnérables aux interceptions, notamment via des attaques de type « Man-in-the-Middle » (MitM). Si les protocoles de base sont généralement connus, leur implémentation rigoureuse laisse souvent à désirer dans les projets audités.
Au-delà du HTTPS : le Certificate Pinning

Utiliser le protocole HTTPS (TLS/SSL) est le strict minimum, mais ce n’est plus suffisant pour garantir une sécurité robuste. Dans un scénario d’attaque, un pirate peut installer un certificat racine frauduleux sur l’appareil de la victime pour déchiffrer le trafic HTTPS. Pour contrer cela, nous recommandons systématiquement la mise en place du Certificate Pinning (ou épinglage de certificat). Et au-delà du transport, le contenu lui-même peut être chiffré : en 2016, WhatsApp a activé le chiffrement de bout en bout par défaut pour plus d’un milliard d’utilisateurs (protocole Signal), sans que personne n’ait rien à configurer. C’est la démonstration grand public qu’une politique de sécurité ambitieuse peut être totalement invisible pour l’utilisateur.
Cette technique consiste à forcer l’application à ne faire confiance qu’à un certificat spécifique (ou à une clé publique spécifique) prédéfini dans son code. Ainsi, même si l’attaquant parvient à tromper le système d’exploitation de l’appareil, l’application refusera la connexion si le certificat présenté par le serveur ne correspond pas à « l’épingle ». Bien que cette pratique ajoute une complexité à la gestion des certificats (notamment lors de leur renouvellement), elle est indispensable pour les applications traitant des données sensibles.
Protection et architecture des API
Le serveur backend est souvent le point de défaillance unique. Une application mobile sécurisée ne doit jamais faire confiance aveuglément aux données envoyées par le serveur, et inversement, le serveur ne doit jamais faire confiance au client mobile. Nous voyons trop souvent des logiques métiers implémentées côté client (par exemple, le calcul d’un prix ou la vérification d’un droit d’accès) qui peuvent être contournées par un attaquant manipulant les requêtes API.
Il est impératif d’utiliser des mécanismes d’authentification forts pour les API, comme OAuth 2.0. De plus, la limitation de débit (rate limiting) doit être configurée pour empêcher les attaques par force brute ou le scraping de données. Enfin, les données envoyées par l’application doivent être systématiquement validées et nettoyées côté serveur pour prévenir les injections SQL ou les attaques XSS, même si le format JSON semble moins propice à ces vecteurs que le HTML classique.
Authentification forte et gestion des sessions mobiles
L’authentification sur mobile présente des défis ergonomiques et sécuritaires spécifiques. Contrairement au web où l’utilisateur se déconnecte souvent, une application mobile est conçue pour rester connectée « indéfiniment » afin de fluidifier l’expérience utilisateur. Cette persistance de la session est un point critique de votre politique de sécurité.
La biométrie : confort vs sécurité
L’intégration de FaceID ou TouchID est devenue une norme demandée par la quasi-totalité des porteurs de projet. Cependant, il est crucial de comprendre que la biométrie sur mobile est souvent une « commodité » locale : elle déverrouille l’accès à un token stocké dans le Keychain, mais ne remplace pas l’authentification serveur. Une politique de sécurité rigoureuse doit prévoir un repli vers le mot de passe ou le code PIN après un certain nombre d’échecs biométriques ou après un redémarrage de l’appareil. C’est exactement la politique des applications bancaires françaises depuis la DSP2 (2019) : Face ID sert de raccourci au quotidien, mais l’authentification forte reste exigée pour les opérations sensibles, et le code est systématiquement redemandé après un redémarrage.
Gestion du cycle de vie des sessions
La gestion des tokens d’accès (comme les JSON Web Tokens, JWT) doit être fine. Les Access Tokens doivent avoir une durée de vie courte (par exemple, 15 minutes), tandis que les Refresh Tokens, qui permettent de renouveler la session sans redemander le mot de passe, doivent être stockés avec le plus haut niveau de sécurité possible et pouvoir être révoqués à distance en cas de vol de l’appareil.
Nous recommandons également d’implémenter une déconnexion automatique ou une demande de ré-authentification pour les actions sensibles (modification de profil, virement bancaire). C’est une fonctionnalité souvent négligée dans les cahiers des charges initiaux mais qui s’avère indispensable pour limiter l’impact en cas de vol de téléphone déverrouillé.
Qualité du code, obfuscation et résistance au reverse engineering
Une application mobile est un exécutable distribué publiquement. N’importe qui peut télécharger votre fichier `.apk` (Android) ou `.ipa` (iOS) et tenter de le désassembler pour comprendre son fonctionnement. Si votre code source est lisible, un attaquant peut y trouver des clés API, comprendre votre logique de chiffrement, ou créer une version « modifiée » de votre application (repackaging) pour voler les données de vos utilisateurs.
Les techniques d’obfuscation
L’obfuscation du code est une étape essentielle du processus de build. Des outils comme ProGuard ou R8 (sur Android) permettent de renommer les classes et les variables en caractères illisibles, rendant la compréhension du code compilé extrêmement ardue. Pour les applications critiques, des solutions commerciales plus avancées (comme DexGuard) offrent des techniques de chiffrement de chaînes de caractères et de virtualisation de code qui élèvent considérablement la barrière à l’entrée pour les pirates.
Détection de l’environnement d’exécution (Root/Jailbreak)
Votre politique de sécurité doit définir si votre application accepte de s’exécuter sur des appareils compromis (rootés ou jailbreakés). Sur ces appareils, les mécanismes de sécurité du système d’exploitation (le « sandbox ») sont désactivés, ce qui permet à d’autres applications malveillantes d’accéder aux données de votre application. De nombreuses agences recommandent d’implémenter des sondes de détection qui, en cas de détection de root, limitent les fonctionnalités de l’application ou empêchent totalement son lancement. Vous avez déjà croisé ces politiques sans le savoir : Google Wallet refuse le paiement sur un téléphone rooté et Pokémon GO bloque carrément le lancement (via l’API Play Integrity, ex-SafetyNet). Dans la même logique de contrôle de ce que l’environnement peut voir, Netflix rend toute capture d’écran noire (écran protégé par DRM) et Snapchat notifie l’expéditeur quand son message est capturé.
Conformité RGPD et gestion des permissions
Le RGPD impose des contraintes spécifiques aux applications mobiles, notamment en matière de collecte de données et de consentement. Les terminaux mobiles regorgent de capteurs (GPS, appareil photo, micro, carnet d’adresses) qui sont autant de données personnelles sensibles. Chez La Fabrique du Net, nous insistons sur le principe de « Privacy by Design ».
Le principe de moindre privilège
Une application ne doit demander que les permissions strictement nécessaires à son fonctionnement. Si vous avez besoin de localiser l’utilisateur uniquement pour lui suggérer un magasin à proximité, vous n’avez pas besoin de la localisation en arrière-plan permanente. Les magasins d’applications (Google Play et App Store) sont de plus en plus stricts à ce sujet et refusent régulièrement des applications demandant des permissions abusives. L’exemple le plus parlant reste l’affaire du presse-papier : quand iOS 14 (2020) a commencé à afficher une bannière à chaque lecture du presse-papier, TikTok et LinkedIn ont été pris la main dans le sac à le lire en continu, et ont dû publier des correctifs sous la pression publique. Une permission invisible hier est une crise de réputation demain.
De plus, la demande de permission doit être contextuelle. Il est préférable de demander l’accès à l’appareil photo au moment précis où l’utilisateur souhaite prendre une photo, plutôt qu’au premier lancement de l’application. Cela renforce la confiance de l’utilisateur et assure une meilleure conformité avec les principes de transparence du RGPD.
Scénario type : l’app santé rattrapée avant la mise en production
Pour illustrer l’importance d’une politique de sécurité rigoureuse, voici un scénario type, représentatif des applications métier manipulant des données sensibles. Les détails sont illustratifs.
Une PME de la santé connectée développe une application de suivi post-opératoire manipulant des données de santé à caractère personnel, soumises à une réglementation stricte. Le MVP a été construit par une équipe freelance ; un pré-audit avant mise en production révèle deux failles critiques : les données médicales sont stockées en clair dans la base locale du téléphone, et les échanges API, pourtant en HTTPS, n’ont pas de certificate pinning, exposant l’application sur les Wi-Fi publics. Le standard public existe pourtant : Doctolib chiffre de bout en bout les documents médicaux depuis 2020, ce qui en fait la référence à opposer à tout prestataire qui manipule des données de santé.
La refonte type de la couche sécurité tient en quatre chantiers : chiffrement local (SQLCipher), authentification forte (OAuth2 avec refresh tokens sécurisés), test d’intrusion complet en boîte noire et boîte grise, et documentation de conformité. Le mécanisme à retenir : le pré-audit avant production coûte une fraction de ce qu’aurait coûté la sanction (jusqu’à 4 % du chiffre d’affaires en cas de manquement RGPD) et l’incident de réputation, et c’est précisément parce que le MVP « fonctionnait » que personne n’avait regardé sous le capot.
Et en vrai ? Sur les 91 missions cybersécurité, cloud et infogérance publiées avec leur budget par les agences référencées sur notre plateforme, la médiane s’établit à 10 000 € (relevé de juillet 2026). Pour un devis d’audit de sécurité applicative, exigez un périmètre écrit (nombre d’écrans et d’API, plateformes couvertes, type de test : boîte noire ou grise) : c’est ce qui rend les devis comparables. Vous pouvez déposer votre projet gratuitement pour en recevoir plusieurs sur la même base.
Les erreurs les plus fréquentes
Certains motifs reviennent systématiquement dans les échecs de sécurité mobile. Voici les erreurs les plus fréquentes, à éviter absolument.
La confiance aveugle dans la validation côté client
C’est l’erreur « numéro 1 » des développeurs juniors. Penser qu’un contrôle de formulaire en JavaScript ou en Swift suffit à empêcher l’envoi de données malveillantes est une illusion. Un attaquant utilisera un proxy (comme Burp Suite) pour intercepter la requête et modifier les données après la validation de l’interface mais avant qu’elles n’atteignent le serveur.
Solution : Toujours revalider intégralement les données côté serveur.
Les clés API et secrets dans le code source
Il est tentant de placer les clés d’API tierces (Google Maps, Firebase, AWS) directement dans le code pour simplifier le développement. Cependant, ces clés peuvent être extraites en quelques minutes par reverse engineering. Nous avons vu des cas où des pirates ont utilisé les clés AWS d’une entreprise pour miner de la cryptomonnaie à leurs frais, générant des factures de plusieurs milliers d’euros en quelques jours.
Solution : Ne stockez jamais de secrets critiques dans l’application. Utilisez un serveur proxy intermédiaire pour injecter les secrets.
L’abus des bibliothèques tierces non auditées
Le développement mobile moderne repose énormément sur des bibliothèques open source. Intégrer une librairie sans vérifier sa maintenance ou sa sécurité revient à inviter un inconnu dans votre système. Des bibliothèques publicitaires, notamment, ont été épinglées pour collecter des données bien au-delà de leurs prérogatives, mettant l’éditeur de l’application en défaut vis-à-vis du RGPD.
Solution : Maintenez un inventaire strict des dépendances (SBoM, Software Bill of Materials) et auditez-les régulièrement.
Comment bien choisir son agence pour la sécurité mobile
Choisir un prestataire pour développer ou auditer la sécurité de votre application mobile est une décision critique. Sur La Fabrique du Net, nous évaluons les agences sur des critères précis que vous devriez également adopter.
Les questions techniques à poser
Ne vous contentez pas d’un « nous suivons les bonnes pratiques ». Demandez : « Quelle est votre approche vis-à-vis du référentiel OWASP Mobile Top 10 et MASVS ? » ou encore « Quels outils utilisez-vous pour l’analyse statique (SAST) et dynamique (DAST) du code ? ». Une agence sérieuse doit être capable de vous parler de MobSF, de Frida, ou de Drozer. Si ces noms leur sont inconnus, c’est un mauvais signal.
Les signaux d’alerte (Red Flags)
Méfiez-vous des agences qui vous garantissent une application « 100 % sécurisée » ou « invulnérable ». La sécurité est un processus continu, pas un état définitif. Un autre signal d’alerte est l’absence de mention de la sécurité dans la phase de conception (Design). Si la sécurité n’apparaît que comme une ligne de test à la fin du devis, fuyez. Elle doit être intégrée dès le début (Security by Design).
Indicateurs de qualité
Privilégiez les agences dont les équipes possèdent des certifications reconnues (CEH, OSCP pour les pentesteurs, ou des certifications spécifiques au développement sécurisé). Demandez également à voir des exemples anonymisés de rapports de pentests précédents pour évaluer la qualité de leur restitution et la clarté de leurs recommandations de correction.
Tendances et évolutions du marché
Le paysage de la sécurité mobile évolue à une vitesse vertigineuse. Plusieurs tendances lourdes redéfinissent les attentes des entreprises et les offres des agences.
DevSecOps et automatisation
L’approche traditionnelle consistant à réaliser un audit de sécurité une fois par an est révolue. La tendance est au DevSecOps, c’est-à-dire l’intégration de tests de sécurité automatisés directement dans le pipeline d’intégration continue (CI/CD). À chaque fois qu’un développeur « pousse » du code, des scanners analysent automatiquement les vulnérabilités potentielles. Cela permet de corriger les failles immédiatement, réduisant drastiquement le coût de correction.
RASP (Runtime Application Self-Protection)
Nous voyons émerger une demande croissante pour les technologies RASP. Il s’agit de briques logicielles intégrées à l’application qui sont capables de détecter et de bloquer des attaques en temps réel (comme une tentative de débogage ou d’injection de code) pendant que l’application tourne sur le téléphone de l’utilisateur. C’est une couche de protection dynamique qui complète les protections statiques.
Évolution des budgets
La prise de conscience des risques fait évoluer les budgets. Il y a 5 ans, la sécurité représentait souvent moins de 5 % du budget de développement mobile. Aujourd’hui, pour des applications critiques, ce poste atteint couramment 15 à 20 % du budget initial selon les pratiques du marché, incluant l’audit de sécurité pré-production (pentest) qui coûte généralement entre 4 000 € et 12 000 € selon la complexité de l’application.
Ressource prête à l’emploi : La Checklist de Sécurité Mobile
Téléchargez la checklist de sécurité mobile en Excel (11 points de contrôle par domaine, importance et statut, référentiel OWASP MASVS), ou parcourez le tableau ci-dessous.
Pour vous aider à structurer votre approche ou à challenger votre prestataire actuel, nous avons élaboré cette grille d’évaluation inspirée du standard OWASP MASVS (Mobile Application Security Verification Standard). Vous pouvez l’utiliser comme base de discussion lors de vos comités de projet.
| Domaine de Sécurité | Point de Contrôle | Importance | Statut (À faire / Fait) |
|---|---|---|---|
| Stockage des Données | Aucune donnée sensible (PWD, Token) n’est stockée en clair dans les fichiers locaux (plist, XML, DB). | Critique | À vérifier |
| Stockage des Données | Utilisation du Keychain (iOS) et Keystore (Android) pour les clés cryptographiques. | Critique | À vérifier |
| Stockage des Données | Les logs de production sont désactivés et ne contiennent aucune info sensible. | Élevé | À vérifier |
| Communication Réseau | Toutes les communications utilisent TLS 1.2 ou 1.3 (HTTPS strict). | Critique | À vérifier |
| Communication Réseau | Le Certificate Pinning est activé pour les endpoints critiques (API bancaire, santé). | Élevé | À vérifier |
| Authentification | La biométrie est utilisée comme raccourci, avec repli obligatoire sur mot de passe. | Moyen | À vérifier |
| Authentification | Les sessions expirent après une période d’inactivité définie. | Élevé | À vérifier |
| Qualité du Code | Le code est obfusqué (ProGuard/R8 ou solution commerciale). | Moyen | À vérifier |
| Qualité du Code | Toutes les bibliothèques tierces sont à jour et auditées. | Élevé | À vérifier |
| Plateforme & RGPD | Les permissions demandées respectent le principe de moindre privilège. | Élevé | À vérifier |
| Plateforme & RGPD | Le texte copié dans le presse-papier est nettoyé ou limité si sensible. | Faible | À vérifier |
FAQ : Questions fréquentes sur la sécurité des applications mobiles
Quelles sont les obligations légales spécifiques pour une application mobile ?
En plus du RGPD qui s’applique à tout traitement de données personnelles (consentement, droit à l’oubli, minimisation des données), les applications mobiles doivent respecter les directives des stores (Apple et Google) en matière de vie privée. Par exemple, depuis iOS 14, l’App Tracking Transparency oblige à demander l’autorisation explicite pour le suivi publicitaire. De plus, les conditions d’utilisation et la politique de confidentialité doivent être accessibles directement depuis l’application.
Combien coûte un test d’intrusion (pentest) pour une application mobile ?
Le budget varie considérablement selon la complexité de l’application (nombre d’écrans, rôles utilisateurs, complexité de l’API). Ordres de grandeur constatés sur le marché : comptez entre 4 000 € pour une application simple et jusqu’à 15 000 € ou plus pour une application bancaire ou e-commerce complexe. C’est un investissement ponctuel qui permet souvent d’économiser des coûts bien supérieurs liés à une faille.
L’authentification biométrique (FaceID, TouchID) est-elle suffisante ?
Non, elle ne doit pas être le seul moyen d’authentification. La biométrie sur mobile valide que c’est bien l’utilisateur du téléphone qui est présent, mais elle repose sur la sécurité locale de l’appareil. Si le modèle biométrique de l’appareil est compromis (ce qui est rare mais possible), l’application est ouverte. Il faut toujours conserver une authentification « forte » (mot de passe) en arrière-plan ou pour les actions critiques (modification de mot de passe, virement important).
iOS est-il plus sécurisé qu’Android ?
Historiquement, iOS a bénéficié d’une réputation de système plus fermé et donc plus sûr (« Walled Garden »). Cependant, l’écart s’est considérablement réduit. Android offre aujourd’hui des fonctionnalités de sécurité très avancées (sandboxing, Keystore). La sécurité dépend moins de l’OS que de la qualité du développement de l’application. Une application mal codée sera tout aussi vulnérable sur un iPhone 15 que sur un Pixel 8. La principale différence réside dans la fragmentation d’Android, qui rend les mises à jour de sécurité de l’OS plus lentes sur certains modèles de téléphones.
À quelle fréquence faut-il mettre à jour la politique de sécurité ?
La sécurité n’est pas statique. Une politique de sécurité doit être revue au moins une fois par an, ou à chaque évolution majeure de l’application. De plus, dès qu’une nouvelle version majeure d’iOS ou d’Android sort, il faut vérifier si de nouvelles protections sont disponibles ou si d’anciennes méthodes sont devenues obsolètes. Nous recommandons un audit de sécurité (même léger) avant chaque mise en production majeure.
Conclusion
La sécurité des applications mobiles est un enjeu qui dépasse largement la simple expertise technique ; c’est un pilier de la pérennité de votre entreprise et de la confiance que vos clients vous accordent. Comme nous l’avons exploré, les vecteurs d’attaque sont nombreux, allant du stockage local imprudent aux interceptions réseaux, en passant par la rétro-ingénierie du code. Cependant, ces risques sont maîtrisables avec une méthodologie rigoureuse, des outils adaptés et, surtout, les bons partenaires.
Il peut être difficile pour un décideur de naviguer dans ce jargon technique et d’évaluer la compétence réelle d’un prestataire. Notre plateforme référence les agences qui ne se contentent pas de développer des applications fonctionnelles, mais qui intègrent la sécurité au cœur de leur ADN (« Security by Design »). Si vous avez un projet d’application mobile ou si vous souhaitez auditer une solution existante, ne restez pas seul face à ces enjeux. Nous sommes là pour vous orienter vers les experts les plus qualifiés pour protéger vos données et celles de vos utilisateurs.
Mettre en place de vraies politiques de sécurité pour vos apps mobiles requiert des spécialistes : sur les 10 951 agences référencées sur notre plateforme, 256 sont positionnées sur la cybersécurité, dont 22 sur l’audit (relevé de juillet 2026). Découvrez les agences de cybersécurité et notre guide des tarifs des agences de cybersécurité.
Pour prolonger : la sécurité des applications Flutter (le cas d’un framework précis) et l’IA dans la sécurité cloud (le versant infrastructure).





