La sécurité est l'affaire de tous : du CEO au développeur

Publié le · 1 h 15 min

Wlad
Wlad
Fondateur & CEO

Passionné et curieux de l'univers de la sécurité dans nos projets IT — en particulier sur iOS et macOS — je suis aussi très inquiet de voir, quasi chaque semaine, des annonces de X millions de données utilisateurs piratées et parties dans la nature. Et de constater une forme de politique de l'autruche : on punit, on inflige des amendes, et pendant ce temps les données sensibles restent dans la nature pour toujours. Ça ne devrait plus arriver.

Je ne suis pas expert en cybersécurité, ni en cryptographie. Juste quelqu'un qui se sent concerné, interpellé, avec une grande soif d'apprendre sur ces sujets — creuser les cadres, comprendre les standards, et voir comment on peut les mettre en œuvre dans nos projets en impliquant tout le monde.

Cet article n'engage que moi. Comme tout le monde, je suis humain, je peux me tromper. Je suis très ouvert aux feedbacks pour m'améliorer, apprendre, mais aussi corriger et enrichir cet article au fil du temps.

En 2024, les données personnelles de plusieurs millions de Français ont été exposées. Dans les équipes projet, on continue pourtant d'entendre "la sécu, c'est pour la V2".

Cet article s'adresse à tous ceux qui construisent des produits numériques : dirigeants, product managers, designers, développeurs, QA, DevOps. Il traite autant de l'organisation du travail et de la culture d'équipe que de la conception technique. Parce que la sécurité est l'affaire de tous, et que "je ne savais pas" n'est plus une défense recevable.

Le constat qui fait mal

Commençons par les chiffres. Pas ceux qu'on lit distraitement dans la presse tech, mais ceux qui concernent directement les Français, leurs données, leur vie privée.

2024-2026 : l'hémorragie des données françaises

En janvier 2024, les opérateurs de tiers payant Viamedis et Almerys subissent une cyberattaque. Selon la CNIL, 33 millions de personnes voient leurs données de santé exposées — état civil, date de naissance, numéro de sécurité sociale, nom de l'assureur, garanties du contrat. C'est près d'un Français sur deux.

Deux mois plus tard, en mars 2024, c'est au tour de France Travail. D'après l'enquête de la CNIL, 43 millions de personnes sont potentiellement touchées — tous les inscrits actuels et ceux des 20 dernières années. Nom, prénom, date de naissance, identifiant France Travail, numéros de téléphone, adresses mail et postales.

En octobre 2024, Free annonce une fuite massive : 19 millions d'abonnés et 5 millions d'IBAN. En novembre, Auchan révèle 550 000 clients touchés — puis rebelote en août 2025 avec une nouvelle fuite. En janvier 2026, selon ZATAZ, l'URSSAF confirme l'exposition des données de 12 millions de salariés ayant fait l'objet d'une embauche au cours des trois dernières années.

Et entre ces incidents majeurs ? Cultura avec 1,5 million de clients, Boulanger, Kiabi, La Poste, MAIF, BPCE via leur prestataire Harvest, le ministère de l'Intérieur, celui des Sports, la Fédération Française de Football...

Statistiquement, vos données personnelles circulent déjà quelque part.

Les coûts qui explosent

Le rapport IBM Cost of a Data Breach 2024 pose les chiffres : le coût moyen mondial d'une fuite de données atteint 4,88 millions de dollars — une hausse de 10% en un an, la plus forte depuis la pandémie. Pour le secteur de la santé, on dépasse les 10 millions de dollars. Pour la finance, 6 millions.

Et le temps de détection ? Toujours selon IBM, en moyenne 168 jours pour identifier une brèche, puis 64 jours pour la contenir. Six mois pendant lesquels les attaquants se promènent dans vos systèmes.

Mais le plus parlant reste peut-être l'équation économique de la prévention :

    • 1€ investi en conception pour sécuriser une feature
    • 100€ en développement pour corriger une faille identifiée
    • 10 000€ (ou plus) en production pour gérer une crise

L'Europe frappe fort

Les régulateurs ne regardent plus ailleurs. Selon le DLA Piper GDPR Survey de janvier 2025, depuis l'entrée en vigueur du RGPD en 2018, les sanctions cumulées dépassent 5,88 milliards d'euros en Europe.

Le record ? 1,2 milliard d'euros infligé à Meta en 2023 par la DPC irlandaise pour ses transferts de données EU-US. Derrière : Amazon avec 746 millions au Luxembourg, TikTok avec 530 millions en 2025 pour les transferts vers la Chine, Instagram avec 405 millions pour les données des mineurs, LinkedIn avec 310 millions, Uber avec 290 millions aux Pays-Bas.

En France, selon le bilan 2024 de la CNIL, 87 sanctions ont été prononcées pour un total de 55 millions d'euros. FREE vient d'écoper de 42 millions d'euros en janvier 2026. NEXPUBLICA : 1,7 million pour "mesures de sécurité insuffisantes" de son logiciel. MOBIUS, sous-traitant de Deezer : 1 million d'euros. Oui, le sous-traitant trinque aussi.

Et ce ne sont que les amendes administratives. Le Code pénal (articles 226-16 à 226-24) prévoit jusqu'à 5 ans d'emprisonnement et 300 000 euros d'amende pour les dirigeants en cas de manquement grave.

La question miroir

Avant de continuer, une question :

“Sur mon dernier projet, à quel moment avons-nous parlé sécurité ? Lors du kick-off ? Du sprint planning ? Jamais ?”
— Question miroir

Si la réponse est "jamais" ou "vaguement en fin de projet", cet article est pour vous.

La sécurité est un socle, pas une couche

L'analogie qui dit tout

On ne construit pas une maison, puis on ajoute les fondations. On ne creuse pas les fondations "en V2". On ne dit pas "pour l'instant on pose les murs directement sur le sol, on verra plus tard pour la stabilité".

Pourtant, c'est exactement ce qu'on fait avec la sécurité dans beaucoup de projets numériques.

La sécurité n'est pas une feature qu'on ajoute. Ce n'est pas une couche technique qu'on branche en fin de développement. Ce n'est pas un audit qu'on commande avant la mise en prod pour "valider" ce qui a été fait.

La sécurité, ce sont les fondations. Elle conditionne tout ce qu'on peut construire dessus. Elle définit les choix d'architecture, les technologies utilisables, les flux de données possibles, les interactions permises.

Ce que ça change concrètement

Quand la sécurité est pensée comme un socle :

L'architecture se dessine différemment. On ne demande pas "comment implémenter cette feature ?" mais "comment implémenter cette feature de manière sécurisée ?". Les deux questions n'ont pas les mêmes réponses.

Certains choix s'imposent. Stocker des tokens ? Keychain obligatoire, pas UserDefaults. Appeler une API sensible ? Certificate pinning, pas de confiance aveugle. Manipuler des données de santé ? Chiffrement bout en bout, pas "on verra".

Le budget et les délais intègrent ces contraintes. On ne découvre pas en fin de sprint qu'il faut "trois jours de plus pour sécuriser". C'est budgété dès le départ, comme l'accessibilité, comme les tests.

Le POC qui devient prod

Combien de fois avez-vous entendu — ou dit — ces phrases ?

    • "C'est juste un POC, on ne fait pas de sécu"
    • "On n'a que 100 users, personne ne va nous attaquer"
    • "On refactorera quand on aura le temps"
    • "La sécu, c'est pour la V2"

Le problème : le POC devient la V1. Les 100 users deviennent 100 000. Le temps pour refactorer n'arrive jamais. Et la V2... la V2 ajoute des features sur les fondations bancales de la V1.

Résultat : une dette technique sécuritaire qui s'accumule, des failles qui se multiplient, et un jour, l'incident. Avec cette phrase terrible en réunion de crise : "On savait que c'était fragile, mais on n'a jamais eu le temps de consolider."

Les fondations avant les murs

Un projet avec des fondations sécurité solides, c'est :

    • Une architecture qui sépare clairement les données sensibles
    • Des choix technologiques qui ne compromettent pas la sécurité pour la facilité
    • Des flux de données documentés et contrôlés
    • Des mécanismes d'authentification robustes dès le jour 1
    • Une stratégie de chiffrement cohérente
    • Des logs qui permettent de détecter les anomalies

Ce n'est pas "plus de travail". C'est du travail fait au bon moment. Parce que reprendre les fondations d'un bâtiment déjà construit, ça coûte infiniment plus cher que de les faire correctement dès le départ.

La sécurité comme fondation d'un projet
La sécurité n'est pas une couche qu'on ajoute, ce sont les fondations sur lesquelles tout repose

2024-2026 : le temps des illusions perdues

L'illusion de la taille

"On est une petite structure, les hackers s'attaquent aux gros."

Faux. Les attaques automatisées ne font pas de distinction. Les bots scannent en permanence, cherchent les failles connues, exploitent les configurations par défaut. Votre startup de 10 personnes est autant ciblée qu'un grand groupe — simplement, vous n'avez pas les mêmes moyens de défense.

Selon une étude sur 48 incidents cyber d'entreprises françaises non cotées entre 2017 et 2021, le risque de défaillance augmente d'environ 50% dans les 6 mois suivant l'annonce d'un incident.

Clermont Pièces, PME spécialisée dans les pièces d'électroménager, a dû fermer en 2017 après une cyberattaque qui a détruit ses données stratégiques — fichiers clients, historique de production, données comptables. Tout perdu, entreprise liquidée.

Lise Charmel, fabricant de lingerie, placé en redressement judiciaire en février 2020 après un ransomware. Camaïeu, déjà fragilisé, achevé par une cyberattaque avant sa liquidation en 2022. Octave, éditeur de logiciels, liquidé en mars 2025 après une attaque en août 2024.

L'illusion de l'obscurité

"Notre app n'est pas connue, personne ne va la cibler."

Les attaquants ne ciblent pas des apps connues. Ils ciblent des failles. Si votre API a une injection SQL, elle sera trouvée et exploitée, que vous ayez 100 ou 100 000 utilisateurs. Les outils de scan sont automatisés, gratuits, et tournent 24h/24.

L'illusion du store

"Apple/Google vérifient tout, si l'app est sur le store c'est qu'elle est sécurisée."

Non. Les reviews des stores vérifient la conformité aux guidelines : pas de contenu interdit, pas de crash évident, respect des APIs publiques. Ils ne font pas d'audit de sécurité de votre code métier.

Votre logique d'authentification ? Pas vérifiée. Votre stockage de tokens ? Pas vérifié. Vos appels API ? Pas vérifiés. La validation de vos certificats ? Pas vérifiée.

Votre code, vos données, votre responsabilité.

L'illusion du chiffrement magique

"On utilise HTTPS, c'est sécurisé."

HTTPS protège les données en transit. C'est nécessaire, mais très insuffisant. Ça ne protège pas :

    • Les données stockées en local (si elles sont en clair)
    • Les tokens d'authentification (s'ils sont mal stockés)
    • Les clés de chiffrement (si elles sont dans le code)
    • Contre les attaques man-in-the-middle (si vous ne faites pas de certificate pinning)

L'illusion de la conformité

"On a fait un audit RGPD, on est conformes."

La conformité RGPD est une obligation légale, pas une garantie de sécurité. Vous pouvez avoir une politique de confidentialité parfaite, un registre des traitements impeccable, un DPO consciencieux... et une faille béante dans votre code.

La CNIL sanctionne autant pour les manquements documentaires que pour les manquements techniques. NEXPUBLICA a pris 1,7 million d'euros non pas pour un document manquant, mais pour "mesures de sécurité insuffisantes" dans son logiciel.

Le vibe coding : quand l'IA code et que personne ne comprend

Le phénomène 2024-2026

Une nouvelle façon de coder a émergé. On l'appelle "vibe coding" — demander à une IA de générer du code, constater que ça fonctionne, et l'intégrer au projet. Pas de revue approfondie, pas d'analyse de sécurité, pas de compréhension réelle de ce que fait le code.

"J'ai demandé à ChatGPT de me faire l'authentification." "Copilot m'a généré l'appel API, ça marche." "J'ai trouvé la solution sur Stack Overflow via l'IA, c'est intégré."

Le code fonctionne. On passe au ticket suivant.

Mais qui a vérifié comment les tokens sont stockés ? Qui a validé que les certificats sont correctement vérifiés ? Qui a relu la logique de validation des entrées ? Qui s'est assuré que les logs ne contiennent pas de données sensibles ?

Le code est là, mais il n'appartient à personne.

Ce que l'IA génère (et qu'on ne vérifie pas)

L'IA optimise pour "fonctionnel". Elle génère du code qui compile, qui s'exécute, qui produit le résultat attendu. Elle n'optimise pas pour "sécurisé".

Voici ce qu'on voit régulièrement dans du code généré par IA, copié-collé sans vérification :

Tokens stockés en clair dans UserDefaults :

UserDefaults n'est pas chiffré. N'importe quelle app avec les bons outils peut lire ces données. Le token d'authentification de votre utilisateur est accessible.

Requêtes HTTP sans validation de certificat :

Ce code désactive la vérification SSL. N'importe qui sur le même réseau peut intercepter le trafic.

Mots de passe hashés en MD5 :

MD5 n'est plus considéré comme sûr depuis 2004. Mais l'IA continue de le proposer parce qu'il est présent dans son dataset d'entraînement.

Clés d'API en dur dans le code :

Cette clé sera extraite du binaire en quelques minutes par n'importe qui sachant utiliser strings ou un désassembleur.

"Ça marche" ≠ "C'est sécurisé"

C'est la phrase centrale de ce problème. Le code fonctionne. Les tests passent. La feature est livrée. Le sprint est bouclé.

Mais "ça marche" n'a jamais voulu dire "c'est sécurisé". Un code peut parfaitement fonctionner tout en étant une passoire.

L'IA ne sait pas ce qu'elle ne sait pas. Elle ne connaît pas votre contexte métier, vos contraintes réglementaires, la sensibilité de vos données. Elle génère du code qui répond à la question posée, pas du code qui anticipe les attaques.

Et surtout : l'IA ne sera pas devant le juge si ça fuite. Vous, si.

La question miroir pour chaque développeur

Avant de merger du code généré par IA, posez-vous ces questions :

“Où sont stockés les secrets dans ce code ? Comment sont validés les certificats ? Que contiennent les logs en cas d'erreur ? Quelles données sont transmises, et comment ? Ai-je compris chaque ligne, ou juste constaté que "ça marche" ?”
— Questions miroir

Si vous ne pouvez pas répondre à ces questions, vous ne maîtrisez pas ce code. Et du code qu'on ne maîtrise pas, c'est du code dont on ne peut pas garantir la sécurité.

La culture du speed : POC → Prod sans retour

Le scénario qu'on connaît tous

Le contexte est toujours le même. Une opportunité business, une deadline serrée, une promesse commerciale déjà faite.

Semaine 1 : "On a trois semaines pour livrer le MVP. Faut que ça marche pour la démo client."

Semaine 2 : "Super, la démo s'est bien passée ! Le client veut la version complète pour le mois prochain."

Semaine 3 : "On n'a pas le temps de refactorer, on continue sur cette base."

Mois 3 : "On a 10 000 utilisateurs maintenant. On ne peut plus tout casser pour refaire proprement."

Mois 12 : "On sait que c'est fragile, mais toucher à l'auth maintenant c'est trop risqué."

Mois 18 : Incident de sécurité. Fuite de données.

Le POC est devenu la V1. La V1 est devenue la prod. La prod a grandi sur des fondations de POC. Et personne n'a jamais eu "le temps" de consolider.

Les phrases qu'on se dit

"C'est juste un POC"

Le POC a une durée de vie prévue de deux semaines. Il sera encore en prod trois ans plus tard, avec 50 000 utilisateurs dessus.

"On n'a que 100 users"

Les 100 users d'aujourd'hui seront 100 000 demain. Et les mauvaises pratiques de l'époque "100 users" seront toujours là, exposées à 1000 fois plus de risques.

"On refactorera"

Personne ne refactore. Jamais. Il y a toujours une nouvelle feature plus urgente, un nouveau client à satisfaire, une nouvelle deadline à tenir. Le refactoring de sécurité est systématiquement sacrifié sur l'autel du "plus tard".

"Personne ne va nous attaquer"

Les bots s'en moquent de votre taille. Ils scannent tout Internet, en permanence, à la recherche de failles connues. Votre petite API mal sécurisée sera trouvée, indexée, exploitée.

La dette qui s'accumule

Chaque raccourci de sécurité crée de la dette. Et cette dette a des intérêts composés.

    • Sprint 1 : On stocke le token en UserDefaults "temporairement"
    • Sprint 3 : On ajoute des features qui dépendent de ce stockage
    • Sprint 6 : On a 15 endroits qui lisent ce token
    • Sprint 12 : Migrer vers Keychain impliquerait de revoir toute l'architecture
    • Sprint 18 : Le coût de migration est devenu prohibitif
    • Sprint 24 : Fuite de données. Le token était accessible.

À chaque sprint, le coût de correction augmente. Ce qui aurait pris une heure au sprint 1 prend une semaine au sprint 12 et un mois au sprint 24.

Et quand l'incident arrive, on découvre que le coût de ne pas avoir fait les choses correctement dès le départ dépasse de très loin ce qu'on pensait "économiser".

Les managers : deux profils, deux responsabilités

La sécurité n'est pas qu'une affaire de développeurs. Les décisions managériales — délais, priorités, budgets — ont un impact direct sur la posture de sécurité d'un produit.

Et face à ces enjeux, on rencontre deux profils de managers très différents.

Profil 1 : L'ignorance de bonne foi

"Je ne savais pas que c'était un problème."

Ce manager a un background business, marketing, ou produit. Il n'est pas technique, et c'est normal — ce n'est pas son métier. Il fait confiance aux équipes dev pour "gérer le technique".

Ce qu'il dit :

    • "C'est technique, je vous fais confiance."
    • "L'important c'est que ça marche pour le client."
    • "La sécurité ? C'est le job de l'IT, non ?"

Ce qu'il pense (sincèrement) :

    • "Si c'était vraiment un problème, les devs m'en parleraient."
    • "Apple vérifie les apps, donc on est protégés."
    • "On a un firewall et un antivirus, c'est bon."

Ce manager n'est pas malveillant. Il est simplement non formé aux enjeux cyber. Personne ne lui a jamais expliqué que :

    • Les stores ne font pas d'audit de sécurité
    • Un firewall ne protège pas une application mobile
    • "Faire confiance aux devs" ne suffit pas si on ne leur donne pas le temps de sécuriser

La solution :

    • Formation basique obligatoire — pas technique, juste les enjeux business et légaux
    • Inclusion dans les discussions de conception, pas seulement les démos
    • Vulgarisation systématique des risques en termes qu'il comprend : euros, réputation, sanctions légales

La question miroir pour ce profil :

“Quand ai-je posé la question "et niveau sécurité, on en est où ?" dans une réunion projet ?”
— Question miroir - Manager

Profil 2 : L'ignorance délibérée

"Je sais, mais ma carrière d'abord."

Ce manager est différent. Il sait que la sécurité est un sujet. Il a été alerté — par un dev, par le DPO, par le QA, par un audit. Il comprend les risques.

Et il choisit consciemment de les ignorer.

Ce qu'il dit :

    • "On verra ça en V2." (qui n'arrive jamais)
    • "Le client veut la feature pour lundi, point."
    • "T'inquiète, c'est couvert par les CGU."
    • "C'est un risque acceptable."

Ce qu'il pense (sans le dire) :

    • "J'ai mes objectifs à tenir."
    • "Ma promotion passe avant."
    • "Si ça fuite, ce sera le problème du prochain."
    • "De toute façon, je serai parti d'ici là."

C'est le profil "Moi d'abord, les autres c'est pas mon problème". La carrière personnelle prime sur la sécurité des utilisateurs, sur la pérennité du produit, sur la responsabilité collective.

Ce qu'il ne réalise pas :

La trace écrite existe. Le mail du dev qui dit "attention, ce n'est pas sécurisé" est archivé. Le Slack du DPO qui alerte sur un risque RGPD est conservé. Le compte-rendu de réunion qui mentionne "décision de livrer malgré les réserves de l'équipe technique" peut être exhumé.

Ignorer une alerte documentée, c'est une faute caractérisée.

Le Code pénal prévoit la responsabilité personnelle du dirigeant. La jurisprudence montre que "je ne savais pas" n'est pas une défense quand on peut prouver que vous saviez. Et les preuves sont dans vos emails, vos Slack, vos tickets Jira.

La question miroir pour ce profil (brutale) :

“Si demain il y a une fuite, est-ce que je pourrai regarder mon équipe dans les yeux et dire que j'ai fait ce qu'il fallait ? Est-ce que je pourrai expliquer au juge pourquoi j'ai ignoré l'alerte du 15 mars ?”
— Question miroir - Manager (brutale)

La pression des deadlines : un système qui fabrique des failles

Le cercle vicieux

Le problème n'est pas toujours un individu. C'est souvent un système — une organisation qui, structurellement, fabrique de l'insécurité.

La réponse : sprint après sprint, décision après décision, chaque fois qu'on a choisi la deadline plutôt que la sécurité.

Ce que personne n'ose dire en réunion

Il y a des phrases qui ne sont presque jamais prononcées :

    • "Ce délai est incompatible avec une implémentation sécurisée."
    • "Si on livre dans deux semaines, on livre avec des failles."
    • "Je préfère décaler que livrer quelque chose de dangereux."
    • "Non, on ne peut pas 'ajouter la sécu plus tard'."

Pourquoi personne ne le dit

La peur d'être "celui qui bloque". Dans beaucoup d'organisations, lever un problème vous rend responsable du problème. Mieux vaut se taire et espérer que ça passe.

La culture du "yes man". Dire oui est récompensé. Dire non est perçu comme un manque d'engagement, d'agilité, de solution.

Le précédent. Ceux qui ont alerté avant ont été ignorés, marginalisés, parfois poussés vers la sortie. Le message est clair : taisez-vous et livrez.

L'absence de soutien hiérarchique. Même si un dev ou un QA veut alerter, il sait que son manager ne le soutiendra pas face à la pression du client ou du commerce.

Ce qui devrait se passer

Dans une organisation mature :

L'alerte est écoutée, pas punie. Le dev qui dit "c'est pas sécurisé" est un signal d'alarme précieux, pas un empêcheur de tourner en rond.

L'alerte est documentée. Par écrit, tracée, horodatée. Pas pour se couvrir, mais pour que la décision soit prise en connaissance de cause.

La décision est assumée. Si le management décide de livrer malgré l'alerte, c'est sa responsabilité, pas celle du dev. Et cette décision doit être explicite, tracée, assumée.

Pas de "c'est le dev qui a mal codé" si le manager a dit "ship quand même". La responsabilité est au niveau de la décision, pas de l'exécution.

Le jeu des responsabilités

Il y a un phénomène fascinant dans les crises de sécurité : le glissement de responsabilité. Avant l'incident, tout le monde pousse pour livrer vite. Après l'incident, tout le monde cherche qui blâmer.

Avant vs Après

Ce qu'on dit AVANT l'incidentCe qu'on dit APRÈS l'incident

"Ship it, on verra plus tard"

"Pourquoi personne n'a alerté ?"

"La sécu c'est pour la V2"

"C'était évident qu'il fallait sécuriser"

"T'inquiète c'est juste un POC"

"Comment un POC s'est retrouvé en prod ?"

"Le dev gère le technique"

"Le dev aurait dû refuser de livrer"

"On n'a pas le budget"

"On aurait dû prioriser"

"C'est un risque acceptable"

"Qui a décidé que c'était acceptable ?"

La constante

La responsabilité glisse toujours vers le bas de la chaîne.

Le commercial qui a promis une date irréaliste ? Il est passé à autre chose. Le manager qui a dit "ship quand même" ? Il a été promu depuis. Le dirigeant qui n'a pas budgété la sécurité ? Il pointe vers l'équipe technique.

Et c'est le dev, le QA, l'ops, qui se retrouvent à expliquer pourquoi "ils n'ont pas fait leur travail".

Le tribunal imaginaire

Imaginez. Demain, il y a une fuite de données. Vous êtes convoqué — par la direction, par les avocats, par la CNIL, par un juge.

Qu'est-ce que vous pourrez montrer ?

    • Un mail d'alerte que vous avez envoyé... et qui a été ignoré ?
    • Un compte-rendu de réunion où vous avez exprimé vos réserves ?
    • Une décision documentée, assumée par le bon niveau hiérarchique ?
    • Ou juste "on m'a dit de livrer" sans aucune trace ?

La différence entre ces situations, c'est la différence entre être victime d'un système dysfonctionnel et être co-responsable d'une négligence.

Documentez. Toujours.

Le glissement de responsabilité avant/après incident
Avant l'incident, tout le monde pousse. Après, tout le monde cherche un coupable.

Le workflow sécurité d'une feature

Si la sécurité est un socle, elle doit être présente à chaque étape du développement d'une feature. Pas uniquement "chez les devs", mais dès la conception, en passant par le design, jusqu'au déploiement.

Voici comment chaque rôle peut — et doit — contribuer à la posture de sécurité d'un produit.

Étape 1 : Business / Stakeholders

Le besoin part toujours d'une demande business. Un nouveau marché à adresser, une fonctionnalité demandée par les clients, une opportunité commerciale.

Le réflexe à avoir :

Avant de foncer tête baissée dans les specs, poser une question simple :

“Quelles données sensibles sont impliquées dans cette feature ?”
— Question clé

Données personnelles ? Données de santé ? Données financières ? Données de localisation ? Comportements utilisateurs ?

Ce que le business doit accepter :

Le coût sécurité fait partie du coût de la feature. Ce n'est pas un surcoût optionnel qu'on peut "négocier". C'est comme l'accessibilité, comme les tests : ça fait partie du prix de faire les choses correctement.

Les alertes à lever :

    • "Cette feature manipule des données de santé — on est soumis à des contraintes HDS."
    • "On va stocker des IBAN — il faut du chiffrement bout en bout."
    • "Ce sont des données de mineurs — RGPD renforcé, design spécifique."

Question miroir pour le business :

“Est-ce que je connais la nature des données que ma feature va manipuler ? Est-ce que j'ai anticipé les contraintes réglementaires ?”
— Question miroir - Business

Étape 2 : Product Manager

Le PM traduit le besoin business en spécifications fonctionnelles. C'est lui qui écrit les user stories, qui définit les critères d'acceptance, qui priorise le backlog.

Le réflexe à avoir :

Chaque user story qui touche à des données doit avoir des critères d'acceptance sécurité, pas seulement fonctionnels.

Exemple pour une feature "Connexion avec biométrie" :

Ce que le PM doit intégrer :

La sécurité n'est pas une user story optionnelle dans la colonne "Nice to have". Elle fait partie de la définition of done de chaque feature qui touche à des données sensibles.

Les alertes à lever :

    • "Cette feature a un impact sécurité — le chiffrage est inclus dans l'estimation."
    • "Le MVP ne peut pas exclure l'auth sécurisée — c'est dans le socle."
    • "On a besoin d'une revue sécu avant de livrer cette feature."

Question miroir pour le PM :

“Mes specs incluent-elles des critères de sécurité explicites ? Ou est-ce que je laisse les devs "se débrouiller" sur ce sujet ?”
— Question miroir - PM

Étape 3 : UX Designer

Le designer conçoit les parcours utilisateur, les écrans, les interactions. Son travail a un impact direct sur la sécurité — souvent sous-estimé.

Le réflexe à avoir :

Chaque écran qui collecte ou affiche des données sensibles doit être pensé avec la sécurité en tête.

Les sujets clés :

Consentement clair (pas de dark patterns) :

    • L'utilisateur comprend-il vraiment ce qu'il accepte ?
    • Le refus est-il aussi simple que l'acceptation ?
    • Les options sont-elles présentées de manière neutre ?

Feedback sécurité :

    • L'utilisateur sait-il que sa connexion est sécurisée ?
    • Comprend-il pourquoi on lui demande son empreinte digitale ?
    • Voit-il quand sa session va expirer ?

Parcours de récupération :

    • Que se passe-t-il si l'utilisateur perd son accès ?
    • Le parcours de reset est-il sécurisé (pas de fuite d'info) ?
    • Comment gérer la suppression de compte (droit à l'oubli RGPD) ?

Exemples concrets :

Les alertes à lever :

    • "Ce parcours collecte des données sensibles — on doit expliquer pourquoi."
    • "Le consentement doit être explicite, pas implicite."
    • "On a besoin d'un écran de gestion des données personnelles."

Question miroir pour le designer :

“Mon design respecte-t-il vraiment le choix de l'utilisateur ? Ou est-ce que je l'oriente subtilement vers ce qui arrange le business ?”
— Question miroir - Designer

Étape 4 : Data Scientist / Data Analyst

Dans beaucoup de projets modernes, il y a une composante data : analytics, ML, personnalisation, recommandations. Le data scientist manipule des datasets, entraîne des modèles, crée des pipelines.

Le réflexe à avoir :

Les données utilisées pour l'analyse ou l'entraînement sont-elles correctement anonymisées ?

Les sujets clés :

Anonymisation vs Pseudonymisation :

    • L'anonymisation est irréversible — on ne peut pas retrouver l'individu
    • La pseudonymisation est réversible — c'est toujours des données personnelles au sens RGPD
    • La CNIL sanctionne régulièrement pour "anonymisation insuffisante"

Données d'entraînement ML :

    • Le dataset contient-il des données personnelles ?
    • Les biais sont-ils identifiés et documentés ?
    • Le modèle peut-il "mémoriser" des données sensibles ?

Accès et stockage :

    • Qui a accès aux datasets bruts ?
    • Où sont-ils stockés ? Comment sont-ils protégés ?
    • Les exports sont-ils tracés ?

Les alertes à lever :

    • "Ce dataset contient des données personnelles — on ne peut pas l'utiliser tel quel."
    • "L'anonymisation actuelle permet la réidentification par croisement."
    • "Le modèle ML a besoin d'un data privacy impact assessment."

Question miroir pour le data scientist :

“Si ce dataset fuitait demain, pourrait-on identifier des individus ? Suis-je sûr que mon "anonymisation" en est vraiment une ?”
— Question miroir - Data Scientist

Étape 5 : Développeurs (Backend, Frontend, Mobile)

Les développeurs écrivent le code. Ce sont eux qui implémentent — ou pas — les bonnes pratiques de sécurité.

Le réflexe à avoir :

Chaque ligne de code qui touche à des données sensibles doit être écrite avec la sécurité en tête.

Pour le développeur Backend :

Pour le développeur Frontend Web :

Pour le développeur Mobile iOS :

Les alertes à lever :

    • "Cette implémentation nécessite X jours de plus pour être sécurisée."
    • "Le délai proposé est incompatible avec une implémentation sécurisée."
    • "Je ne suis pas à l'aise pour livrer ce code en l'état."

Question miroir pour le développeur :

“Si un attaquant avait accès à ce code, que pourrait-il exploiter ? Ai-je stocké des secrets au bon endroit ?”
— Question miroir - Développeur

Étape 6 : QA / Testeur

Le QA valide que le code fonctionne. Mais "fonctionner" doit inclure "résister aux abus".

Le réflexe à avoir :

Tester le happy path ET les cas d'attaque.

Les tests souvent oubliés :

L'état d'esprit à adopter :

Le QA doit penser comme un attaquant. Pas comme un utilisateur bienveillant qui suit le parcours prévu.

“Comment quelqu'un de malveillant essaierait-il de contourner cette feature ?”
— État d'esprit QA

Les alertes à lever :

    • "J'ai réussi à accéder aux données d'un autre utilisateur."
    • "Le token n'expire pas comme prévu."
    • "Je peux bypasser cette validation côté client."

Question miroir pour le QA :

“Ai-je testé ce qu'il se passe quand quelqu'un ESSAIE de casser la feature ? Ou juste quand tout se passe bien ?”
— Question miroir - QA

Étape 7 : DevOps / SRE / Release Manager

Le DevOps gère l'infrastructure, les déploiements, le monitoring. Ses choix ont un impact majeur sur la sécurité en production.

Le réflexe à avoir :

Les secrets ne doivent JAMAIS être dans le code ou les repos.

Les sujets clés :

Ce qu'on voit encore trop souvent :

    • Clés AWS dans un fichier .env commité par erreur
    • Certificats expirés découverts par les utilisateurs
    • Aucun monitoring des tentatives d'intrusion
    • Backups jamais testés (qui ne fonctionnent pas le jour J)

Les alertes à lever :

    • "Ce secret ne doit pas être dans le repo."
    • "Le certificat expire dans 30 jours — on doit planifier le renouvellement."
    • "On n'a pas de runbook pour ce type d'incident."

Question miroir pour le DevOps :

“Si quelqu'un accédait à notre repo Git, quels secrets pourrait-il récupérer ? Ai-je un plan si ça arrive ?”
— Question miroir - DevOps

Le workflow complet : une feature, tous les checkpoints

Voici comment une feature "Paiement in-app" devrait traverser ces étapes :

Business : "On veut permettre l'achat de crédits in-app." → Alerte : Données bancaires = PCI-DSS, contraintes fortes.

Product : Specs avec critères sécurité : tokenisation carte, pas de stockage local des numéros. → Estimation inclut le temps pour l'implémentation sécurisée.

UX : Parcours avec feedback sécurité : "Paiement sécurisé par [prestataire]", indicateurs visuels. → Parcours de contestation et de suppression des moyens de paiement.

Dev : Implémentation via Apple Pay / prestataire certifié, pas de manipulation directe des numéros de carte. → Keychain pour les tokens, certificate pinning sur les appels.

QA : Tests d'injection, tentatives de rejeu de transaction, comportement avec carte refusée. → Tests de l'expiration des tokens de paiement.

DevOps : Secrets du prestataire en vault, monitoring des transactions anormales. → Alertes si pattern inhabituel (fraude potentielle).

Chaque étape a ses checkpoints. Aucune n'est optionnelle.

Le workflow sécurité d'une feature
Chaque rôle a ses checkpoints sécurité, de l'idée business au déploiement

Focus Mobile iOS : les spécificités techniques

Cette section s'adresse particulièrement aux développeurs iOS, mais les concepts sont transposables à d'autres plateformes. C'est mon domaine d'expertise — là où je vois quotidiennement les bonnes et les mauvaises pratiques.

Les sections suivantes seront développées en profondeur dans des articles techniques dédiés. Ici, l'objectif est de poser les bases et de sensibiliser à ce qui compte vraiment.

Le stockage sécurisé : Keychain, pas UserDefaults

C'est la base. Et pourtant, c'est l'erreur qu'on voit le plus souvent.

UserDefaults : ce que c'est vraiment

UserDefaults est un stockage de préférences utilisateur. Pratique, simple d'utilisation, idéal pour stocker "l'utilisateur préfère le mode sombre" ou "dernière date de synchronisation".

Mais UserDefaults :

    • N'est pas chiffré
    • Est accessible par des outils de debug
    • Peut être extrait d'une sauvegarde iTunes non chiffrée
    • N'est pas protégé si le device est jailbreaké

Ce qu'on y trouve quand on audite des apps :

    • Tokens d'authentification
    • Identifiants utilisateur
    • Clés d'API
    • Données personnelles (email, nom, préférences sensibles)

Tout ça, en clair, lisible par n'importe quel outil d'analyse.

Keychain : le coffre-fort iOS

Le Keychain est conçu pour stocker des secrets. Il est :

    • Chiffré par le système
    • Protégé par le Secure Enclave sur les devices modernes
    • Isolé entre les applications (sauf Keychain sharing explicite)
    • Protégeable par des ACL (biométrie, code device, etc.)

L'implémentation correcte :

Les niveaux de protection Keychain :

AttributSignification

kSecAttrAccessibleWhenUnlocked

Accessible quand le device est déverrouillé

kSecAttrAccessibleWhenUnlockedThisDeviceOnly

Idem + non inclus dans les backups

kSecAttrAccessibleAfterFirstUnlock

Accessible après le premier déverrouillage depuis le boot

kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly

Uniquement si un code est configuré

Règle d'or : ThisDeviceOnly pour tout ce qui est sensible. Ça empêche la migration des secrets vers un autre device via backup.

Data Protection : le chiffrement des fichiers

iOS propose un mécanisme de chiffrement automatique des fichiers appelé Data Protection. Chaque fichier peut avoir un niveau de protection qui détermine quand il est accessible.

Les niveaux de protection fichiers :

Ce qu'il faut protéger :

    • Fichiers contenant des données personnelles
    • Cache de données métier sensibles
    • Base de données locale (Core Data, SQLite, Realm)
    • Fichiers téléchargés contenant des informations confidentielles

Ce qu'on voit en audit :

    • Bases SQLite sans protection (lisibles sur device jailbreaké)
    • Cache d'images de documents sensibles sans chiffrement
    • Fichiers JSON de "configuration" contenant des données utilisateur

Réseau et certificats : ne pas faire confiance aveuglément

Quand votre app fait un appel réseau, elle fait confiance au certificat présenté par le serveur. Par défaut, iOS vérifie que le certificat est signé par une autorité de certification reconnue.

Mais cette confiance par défaut peut être exploitée.

L'attaque Man-in-the-Middle (MITM) :

    • L'attaquant se positionne entre l'app et le serveur (WiFi public, proxy d'entreprise, etc.)
    • Il présente son propre certificat, signé par une CA qu'il contrôle
    • Si l'utilisateur a installé cette CA sur son device (volontairement ou non), iOS accepte le certificat
    • L'attaquant peut lire et modifier tout le trafic

La solution : Certificate Pinning

Le certificate pinning consiste à vérifier non seulement que le certificat est valide, mais qu'il correspond exactement à celui qu'on attend.

Implémentation avec URLSession :

Points d'attention :

    • Le pinning doit être sur la clé publique (plus stable) ou le certificat (plus strict)
    • Prévoir un mécanisme de mise à jour en cas de renouvellement de certificat
    • Avoir un backup pin (certificat de secours) pour éviter le blocage total

Ce qu'on voit en audit :

    • Pas de pinning du tout (confiance aveugle)
    • Pinning désactivé en "debug" mais le flag debug en prod
    • Pinning bypassé en cas d'erreur (le pire des deux mondes)

Cryptographie : CryptoKit et le Secure Enclave

iOS fournit des APIs cryptographiques natives robustes. Pas besoin de bibliothèques tierces douteuses.

CryptoKit (iOS 13+) : l'API moderne

Secure Enclave : le hardware de confiance

Le Secure Enclave est un coprocesseur dédié à la sécurité, présent sur tous les iPhones récents. Les clés générées dans le Secure Enclave ne quittent jamais le hardware — même iOS ne peut pas les extraire.

Quand utiliser le Secure Enclave :

    • Authentification biométrique sécurisée
    • Signatures de données critiques
    • Stockage de clés maîtres

Ce qu'on voit en audit :

    • Utilisation de MD5 ou SHA1 pour le hash (obsolètes)
    • Clés de chiffrement en dur dans le code
    • Bibliothèques crypto tierces non maintenues
    • Algorithmes custom "maison" (à fuir absolument)

Ce que les stores ne vérifient pas

Il y a une illusion répandue : "Si mon app est sur l'App Store, c'est qu'Apple a validé sa sécurité."

Ce qu'Apple vérifie :

    • Respect des guidelines (contenu, fonctionnalités interdites)
    • Utilisation correcte des APIs publiques
    • Pas de crash évident
    • Pas de malware connu
    • Déclarations de confidentialité (App Privacy)

Ce qu'Apple ne vérifie PAS :

    • Votre logique d'authentification
    • Comment vous stockez les tokens (UserDefaults ou Keychain)
    • Si vous faites du certificate pinning
    • La robustesse de votre validation d'entrées
    • Si vos logs contiennent des données sensibles
    • La qualité de votre chiffrement
    • Les failles dans votre code métier

La review Apple n'est pas un audit de sécurité.

C'est une vérification de conformité aux règles de l'écosystème, pas une garantie que votre app est sécurisée.

La même logique s'applique à Google Play pour Android.

Votre code, vos données, votre responsabilité.

Cryptographie post-quantique : iOS 26 ouvre la voie

Les ordinateurs quantiques menacent les algorithmes cryptographiques actuels. Ce n'est plus de la science-fiction — c'est une question de "quand", pas de "si".

Ce qui est menacé :

    • RSA, ECC : les algorithmes asymétriques actuels
    • Les signatures, les échanges de clés

Ce qui résiste :

    • AES 256 : reste sûr (mais AES 128 devient fragile)
    • SHA-256, SHA-3 : restent sûrs

Ce qu'Apple a livré avec iOS 26 :

    • iOS 17 avait introduit le support PQ3 pour iMessage
    • iOS 26 intègre désormais les algorithmes post-quantiques dans CryptoKit : ML-KEM (Kyber) pour l'encapsulation de clés et ML-DSA (Dilithium) pour les signatures
    • La Secure Enclave supporte maintenant les clés post-quantiques
    • La transition est amorcée — et c'est le moment de s'y préparer

Ce que vous pouvez faire dès maintenant :

    • Utiliser AES-256 plutôt qu'AES-128
    • Explorer les nouvelles APIs CryptoKit d'iOS 26
    • Concevoir vos systèmes pour que les algorithmes soient interchangeables
    • Ne pas hard-coder les paramètres cryptographiques
    • Commencer à tester les algorithmes post-quantiques sur vos projets

Pour une plongée technique complète sur les nouveaux algorithmes ML-KEM et ML-DSA, consultez notre guide dédié à la cryptographie post-quantique avec iOS 26, publié en parallèle de cet article.

Les couches de sécurité iOS
Du Secure Enclave au Keychain : les différentes couches de protection iOS

Checklist sécurité iOS — Le minimum vital

Avant de livrer une app iOS en production, vérifiez ces points :

Si vous ne pouvez pas cocher tous ces points, vous avez du travail avant la mise en prod.

Au-delà du code : l'organisation et la culture d'équipe

Les sections précédentes ont abordé les aspects techniques de la sécurité. Mais un produit sécurisé ne se construit pas uniquement avec du bon code — il se construit aussi avec une bonne organisation, des process adaptés, et une culture d'équipe qui valorise la sécurité.

Les sections suivantes abordent ces dimensions organisationnelles : le facteur humain (première cause d'incidents), la communication avec les utilisateurs, et les relations entre DSI et équipes métier. Ce n'est plus de la technique — c'est du management, de la culture d'entreprise, de la conduite du changement.

Le facteur humain : la première faille

Spoiler : ce n'est presque jamais un hacker génial qui perce vos défenses techniques avec des outils sophistiqués. C'est presque toujours un humain qui clique où il ne fallait pas, qui utilise un mot de passe faible, ou qui contourne une procédure "pour aller plus vite".

Les vraies causes des incidents

Le rapport IBM Cost of a Data Breach 2025 est édifiant Rapport complet :

    • Phishing : 37% des brèches impliquent du phishing comme vecteur initial
    • Credentials compromis : 16% des brèches, et les plus longues à détecter (292 jours en moyenne)
    • Erreur humaine : 24% des brèches sont dues à des erreurs accidentelles
    • Shadow AI : 20% des brèches impliquent de l'IA non autorisée, ajoutant 670 000$ au coût moyen

Ce ne sont pas des failles zero-day exploitées par des nations hostiles. Ce sont des emails de phishing, des mots de passe réutilisés, des fichiers partagés par erreur.

Les exemples français récents

URSSAF (janvier 2026) : L'accès frauduleux s'est fait via "un compte partenaire habilité dont les identifiants ont été compromis lors d'un piratage antérieur". Pas une attaque sophistiquée — des credentials qui traînaient quelque part, réutilisés. Source

France Travail (mars 2024) : L'attaque a utilisé l'usurpation d'identité de conseillers Cap Emploi. Technique dite "Man in the Middle" : se faire passer pour quelqu'un qui a les accès légitimes. Source CNIL

Viamedis/Almerys (janvier 2024) : Mode opératoire : usurpation d'identifiants et mots de passe de professionnels de santé. 33 millions de personnes touchées parce que des credentials ont été volés, probablement par phishing. Source CNIL

Ce que ça nous dit

La technologie la plus robuste ne résiste pas à un humain qui :

    • Réutilise le même mot de passe partout
    • Clique sur un lien de phishing bien fait
    • Partage ses credentials "exceptionnellement" avec un collègue
    • Utilise son email pro pour s'inscrire sur des sites tiers
    • Contourne les procédures de sécurité "pour gagner du temps"

Le maillon faible peut être n'importe qui. Le stagiaire comme le CEO. L'administrateur système comme le commercial. Et dans les incidents récents, ce sont souvent des comptes à privilèges qui ont été compromis — des gens qui avaient accès à beaucoup de données.

La formation : pas un PDF une fois par an

La plupart des entreprises cochent la case "formation sécurité" avec :

    • Un email annuel "rappel des bonnes pratiques"
    • Un quiz en ligne de 15 minutes
    • Une charte informatique signée à l'embauche

C'est insuffisant. La sensibilisation doit être :

Continue : Pas une fois par an, mais régulièrement, avec des rappels contextuels.

Pratique : Des exercices de phishing simulés, pas juste des slides théoriques.

Adaptée : Le comptable et le développeur n'ont pas les mêmes risques ni les mêmes réflexes à acquérir.

Non culpabilisante : L'objectif est que les gens signalent quand ils ont cliqué sur un truc louche, pas qu'ils cachent leurs erreurs par peur de sanctions.

Les process doivent être simples

Si une procédure de sécurité est trop contraignante, elle sera contournée. C'est humain.

Exemple classique :

    • IT impose des mots de passe de 16 caractères avec majuscules, minuscules, chiffres, symboles, changés tous les 30 jours
    • Résultat : les utilisateurs écrivent leurs mots de passe sur des post-it ou dans des fichiers texte
    • La sécurité apparente a créé une faille réelle

La bonne approche :

    • Authentification moderne (passkeys, biométrie, SSO)
    • Gestionnaire de mots de passe fourni et supporté
    • 2FA simple à utiliser (pas juste SMS, mais authenticator ou hardware key)
    • Process qui s'intègrent dans le workflow, pas qui le bloquent

Question miroir pour chacun :

“Quand ai-je vérifié pour la dernière fois si mes identifiants professionnels n'ont pas fuité ? (Hint : haveibeenpwned.com)”
— Question miroir

Rassurer l'utilisateur (sans mentir)

La sécurité parfaite n'existe pas. Prétendre le contraire serait mentir à vos utilisateurs. Mais vous pouvez leur inspirer confiance en étant transparent sur ce que vous faites pour les protéger.

Ce que l'utilisateur veut savoir

"Mes données sont-elles protégées ?" → Oui, et voici comment : chiffrement, stockage sécurisé, accès contrôlés.

"Que se passe-t-il si vous êtes piratés ?" → Nous avons un plan de réponse aux incidents, nous vous préviendrons dans les délais légaux, voici les mesures que nous prendrons.

"Puis-je supprimer mes données ?" → Oui, facilement, dans les paramètres de l'app ou sur simple demande.

"Qui a accès à mes données ?" → Liste claire des accès internes, politique de confidentialité lisible (pas 40 pages de jargon juridique).

Comment le communiquer (UX)

Transparence sur les données collectées :

Pas une politique de confidentialité illisible, mais des explications claires dans l'app :

    • "Nous collectons votre email pour vous envoyer des notifications"
    • "Votre localisation est utilisée uniquement pour [X], jamais partagée"
    • "Vos données de paiement sont gérées par [prestataire certifié], nous n'y avons pas accès"

Feedback visuel sur les actions sécurisées :

Parcours de gestion des données :

L'utilisateur doit pouvoir facilement :

    • Voir quelles données sont stockées à son sujet
    • Exporter ses données (portabilité RGPD)
    • Supprimer son compte et ses données
    • Révoquer des permissions accordées

Notifications en cas d'activité suspecte :

    • Connexion depuis un nouvel appareil → notification
    • Tentatives de connexion échouées → alerte
    • Changement de mot de passe → confirmation

Ce qu'on ne fait PAS

Promettre l'impossible :

    • ❌ "100% sécurisé"
    • ❌ "Vos données ne seront jamais compromises"
    • ❌ "Sécurité inviolable"

Personne ne peut garantir ça. Et si vous le promettez, vous créez une attente que vous ne pourrez pas tenir.

Cacher les incidents :

Le RGPD impose la notification des violations à la CNIL sous 72h et aux personnes concernées si le risque est élevé. Article 33 RGPD Mais au-delà de l'obligation légale, la transparence en cas d'incident préserve la confiance à long terme.

Les entreprises qui ont communiqué rapidement et honnêtement sur leurs incidents ont généralement mieux préservé leur réputation que celles qui ont tenté de minimiser ou cacher.

Complexifier pour donner l'illusion de sécurité :

Ajouter des étapes inutiles ne sécurise pas, ça frustre. Un CAPTCHA à chaque connexion ne protège pas mieux qu'un bon système d'authentification. Un double email de confirmation n'ajoute pas de sécurité, juste de la friction.

La sécurité efficace est souvent invisible pour l'utilisateur. C'est le chiffrement en arrière-plan, la validation côté serveur, le monitoring des anomalies — pas des écrans de confirmation à répétition.

UX de confiance sécurité
Rassurer l'utilisateur : transparence, feedback visuel, et contrôle de ses données

Quand la DSI ne comprend pas les métiers

Il y a un cas particulier qui mérite attention : quand les mesures de sécurité sont imposées sans compréhension des workflows métier, elles créent plus de problèmes qu'elles n'en résolvent.

Le syndrome du "on a mis un VPN"

Scénario vécu dans de nombreuses organisations :

La décision : "Pour sécuriser les accès, tout le monde doit utiliser le VPN corporate pour tout."

La réalité :

    • Les builds Xcode qui téléchargent des dépendances prennent 3x plus de temps
    • Les déploiements CI/CD timeout régulièrement
    • Les appels aux APIs de test sont lents ou échouent
    • La productivité des équipes dev chute

La conséquence :

    • Les devs trouvent des contournements (hotspot mobile, configs parallèles)
    • Le Shadow IT explose
    • La sécurité réelle diminue car les pratiques deviennent opaques
    • Frustration et perte de confiance envers la DSI

Le VPN n'est pas une solution universelle

Un VPN protège le trafic réseau en le faisant transiter par un tunnel chiffré vers le réseau d'entreprise. C'est utile pour :

    • Accéder à des ressources internes depuis l'extérieur
    • Protéger le trafic sur des réseaux non fiables (WiFi public)

Ce n'est pas utile pour :

    • Sécuriser une application mobile (elle ne tourne pas dans le VPN)
    • Protéger des données stockées localement
    • Empêcher le phishing
    • Remplacer une vraie stratégie de sécurité applicative

Imposer un VPN pour tout, tout le temps, sans comprendre les cas d'usage, c'est de la "security theater" — l'illusion de sécurité sans la substance.

Ce qui marche mieux

Zero Trust plutôt que VPN aveugle :

L'approche Zero Trust part du principe qu'aucune connexion n'est de confiance par défaut, même depuis le réseau interne. Chaque accès est vérifié :

    • Authentification forte de l'utilisateur
    • Vérification de l'appareil (est-il géré ? à jour ? compromis ?)
    • Accès au minimum nécessaire (least privilege)
    • Monitoring continu des comportements

C'est plus granulaire, plus adapté aux usages modernes (cloud, remote, BYOD), et moins intrusif au quotidien.

Segmentation intelligente :

Tout n'a pas besoin du même niveau de protection :

    • Accès au code source : protection forte, authentification renforcée
    • Accès à la doc publique : authentification basique suffit
    • Accès aux outils de communication : selon la sensibilité des échanges

Dialogue avec les équipes :

Avant d'imposer une mesure, demander :

    • Quel est votre workflow actuel ?
    • Qu'est-ce qui vous ralentit déjà ?
    • Quels outils utilisez-vous au quotidien ?
    • Comment cette mesure va-t-elle impacter votre travail ?

Questions miroir pour la DSI

“Ai-je demandé aux équipes dev ce qui les ralentit avant d'imposer mes règles ? Est-ce que je mesure l'impact de mes mesures de sécurité sur la productivité ? Les contournements que je vois (Shadow IT) sont-ils le signe que mes mesures sont inadaptées ? Ma sécurité protège-t-elle vraiment, ou donne-t-elle juste l'impression de protéger ?”
— Questions miroir - DSI

Ce que dit la loi (et ça pique)

La sécurité des données n'est pas qu'une bonne pratique. C'est une obligation légale, avec des sanctions réelles pour ceux qui ne la respectent pas.

Le RGPD : les grandes lignes

Le Règlement Général sur la Protection des Données (RGPD), en vigueur depuis mai 2018, impose Texte complet RGPD :

Pour toute organisation traitant des données personnelles :

    • Minimisation : ne collecter que ce qui est nécessaire
    • Finalité : utiliser les données uniquement pour ce qui a été annoncé
    • Conservation limitée : ne pas garder les données indéfiniment
    • Sécurité : mettre en œuvre des mesures techniques et organisationnelles appropriées
    • Notification : prévenir en cas de violation (CNIL sous 72h, personnes concernées si risque élevé)

Les sanctions possibles :

    • Jusqu'à 20 millions d'euros ou 4% du chiffre d'affaires mondial annuel Article 83 RGPD
    • Publication de la sanction (atteinte réputationnelle)
    • Injonctions de mise en conformité avec astreinte

La responsabilité personnelle du dirigeant

Au-delà des sanctions contre l'entreprise, le Code pénal français prévoit des sanctions personnelles.

Article 226-16 à 226-24 du Code pénal Texte Légifrance :

    • Collecte frauduleuse de données : 5 ans d'emprisonnement, 300 000€ d'amende
    • Traitement sans mesures de sécurité : 5 ans, 300 000€
    • Conservation excessive : 5 ans, 300 000€
    • Détournement de finalité : 5 ans, 300 000€

Ces sanctions visent les personnes physiques responsables, pas seulement l'entreprise.

Qui est responsable ?

Le dirigeant : En tant que représentant légal, le dirigeant est responsable de la mise en conformité de son organisation. Il ne peut pas déléguer cette responsabilité fondamentale, même s'il peut déléguer certaines tâches.

Ce qui engage personnellement le dirigeant :

    • Ignorer les alertes du DPO
    • Ne pas budgéter les mesures de sécurité nécessaires
    • Prendre la décision de livrer malgré des réserves documentées sur la sécurité

Le DPO : Le Délégué à la Protection des Données conseille, informe, contrôle. Mais il ne décide pas. La CNIL et le CEPD (Comité Européen de la Protection des Données) sont clairs : le DPO n'est pas responsable en cas de non-conformité.

C'est le dirigeant qui prend les décisions, c'est lui qui assume.

Le sous-traitant : Le RGPD responsabilise aussi les sous-traitants. MOBIUS, sous-traitant de Deezer, a pris 1 million d'euros d'amende. Source CNIL Le sous-traitant qui ne sécurise pas correctement les données qu'on lui confie engage sa propre responsabilité.

La directive NIS 2 : le durcissement

La directive NIS 2 (Network and Information Security), transposée en droit français, élargit et renforce les obligations de cybersécurité. Source ANSSI

Ce qui change :

    • Plus d'organisations concernées (secteurs essentiels et importants)
    • Obligations de sécurité renforcées
    • Notification des incidents sous 24h (alerte initiale) puis 72h (rapport)
    • Responsabilité personnelle des dirigeants explicitement mentionnée

Article 20 de NIS 2 : Les États membres veillent à ce que les organes de direction des entités essentielles et importantes puissent être tenus responsables en cas de non-conformité.

Autrement dit : les dirigeants peuvent être personnellement poursuivis pour les manquements de leur organisation en matière de cybersécurité.

"Je ne savais pas" n'est pas une défense

La jurisprudence est claire : l'ignorance n'exonère pas.

Ce qui compte :

    • Des alertes ont-elles été émises ? Par qui ? Quand ?
    • Des moyens ont-ils été alloués ?
    • Les bonnes pratiques connues ont-elles été appliquées ?
    • La CNIL et l'ANSSI publient des guides gratuits — ne pas les suivre est difficile à justifier

Ce qui aggrave :

    • Alertes documentées ignorées
    • Choix conscient de ne pas sécuriser pour des raisons de coût ou de délai
    • Récidive après un premier incident

Les sanctions qui parlent

En France (2024-2026) :

    • FREE : 42 millions d'euros — violation de données Source CNIL
    • NEXPUBLICA : 1,7 million — sécurité insuffisante du logiciel Source CNIL
    • MOBIUS (sous-traitant) : 1 million — violation données Deezer Source CNIL
    • DEDALUS Biologie : 1,5 million — fuite données médicales 500k personnes Source CNIL
    • KASPR : 240 000€ — collecte LinkedIn sans consentement Source CNIL

En Europe :

Total cumulé RGPD depuis 2018 : 5,88 milliards d'euros. DLA Piper GDPR Survey janvier 2025

Carte des sanctions RGPD en Europe
5,88 milliards d'euros de sanctions RGPD cumulées depuis 2018

Checklist pragmatique par rôle

La théorie c'est bien. La pratique c'est mieux. Voici ce que chaque rôle peut faire dès lundi matin pour améliorer la posture de sécurité de son organisation.

Ces checklists ne sont pas exhaustives — elles sont un point de départ, le minimum vital pour commencer à intégrer la sécurité dans le quotidien.

CEO / Direction / Comité Exécutif

Vous définissez les priorités, les budgets, la culture d'entreprise. Votre rôle est crucial.

Question clé :

“Si demain nous subissons une fuite de données, pourrai-je démontrer que nous avions pris les mesures raisonnables ?”
— Question clé - CEO

Product Manager

Vous définissez ce qu'on construit. La sécurité commence dans les specs.

Question clé :

“Que se passe-t-il si cette feature est compromise ? Ai-je évalué l'impact ?”
— Question clé - PM

UX Designer

Vous concevez les parcours. L'expérience utilisateur inclut la confiance et le contrôle.

Question clé :

“Mon design respecte-t-il vraiment le choix de l'utilisateur, ou l'oriente-t-il vers ce qui arrange le business ?”
— Question clé - Designer

Développeur (iOS / Mobile)

Vous écrivez le code. C'est dans vos mains que se concrétise — ou pas — la sécurité.

Question clé :

“Si un attaquant avait accès au binaire de cette app, que pourrait-il exploiter ?”
— Question clé - Développeur

QA / Testeur

Vous validez ce qui part en prod. Votre rôle est de penser comme un attaquant.

Question clé :

“Ai-je testé ce qu'il se passe quand quelqu'un ESSAIE de casser la feature ?”
— Question clé - QA

DevOps / SRE / Release Manager

Vous gérez l'infrastructure et les déploiements. Les secrets et les configs passent par vous.

Question clé :

“Si quelqu'un accédait à notre repo ou à notre CI, quels secrets pourrait-il récupérer ?”
— Question clé - DevOps

DSI / IT Manager

Vous définissez les politiques et les outils. Votre impact est organisationnel.

Question clé :

“Mes mesures de sécurité rendent-elles l'organisation plus sûre, ou poussent-elles les gens vers le Shadow IT ?”
— Question clé - DSI

Conclusion : la sécurité comme culture

Nous avons couvert beaucoup de terrain dans cet article. Des chiffres qui font mal, des exemples qui parlent, des pratiques concrètes, des questions qui dérangent.

Mais s'il ne fallait retenir qu'une chose, ce serait celle-ci :

La sécurité n'est pas une checkbox. C'est une culture.

Ce n'est pas quelque chose qu'on "ajoute" en fin de projet. Ce n'est pas une responsabilité qu'on délègue à "l'équipe sécurité". Ce n'est pas un audit qu'on commande pour valider ce qui a déjà été fait.

C'est une façon de penser, à chaque étape, à chaque rôle, à chaque décision.

Ce que chaque acteur peut faire

Le dirigeant peut créer un environnement où la sécurité est une priorité affichée, budgétée, mesurée. Où les alertes sont écoutées, pas punies.

Le product manager peut inclure la sécurité dans les specs dès le départ, pas comme un "nice to have" mais comme une contrainte de conception.

Le designer peut créer des parcours qui respectent vraiment l'utilisateur, qui lui donnent le contrôle, qui le rassurent sans le tromper.

Le développeur peut écrire du code sécurisé, refuser de livrer du code qu'il sait vulnérable, documenter ses alertes.

Le QA peut penser comme un attaquant, tester les cas d'abus, remonter les comportements suspects.

Le DevOps peut sécuriser l'infrastructure, gérer les secrets correctement, préparer la réponse aux incidents.

La DSI peut imposer des mesures qui protègent vraiment sans paralyser, former plutôt que punir, écouter les retours du terrain.

L'équation économique

On revient souvent aux coûts pour convaincre. Alors rappelons-le une dernière fois :

    • 1€ investi en conception pour faire les choses bien
    • 100€ en développement pour corriger une faille découverte
    • 10 000€ (ou beaucoup plus) en production pour gérer une crise

Sans compter les amendes (jusqu'à 4% du CA mondial), l'atteinte à la réputation, la perte de clients, les poursuites judiciaires.

La sécurité est un investissement, pas un coût. Et c'est un investissement qui se fait au bon moment — dès le début — ou qui coûte exponentiellement plus cher plus tard.

L'humilité nécessaire

Une dernière chose : personne n'est à l'abri. Les entreprises les plus avancées en cybersécurité subissent des incidents. Ce qui fait la différence, c'est :

    • La préparation (avoir un plan avant l'incident)
    • La détection (identifier rapidement qu'il se passe quelque chose)
    • La réponse (contenir, communiquer, remédier)
    • L'apprentissage (comprendre ce qui s'est passé, améliorer)

L'objectif n'est pas d'être "invulnérable" — c'est impossible. L'objectif est d'être résilient : capable de résister, de détecter, de réagir, de se relever.

La sécurité comme culture d'équipe
La sécurité n'est pas une checkbox, c'est une culture partagée par toute l'équipe

Pour aller plus loin : les articles techniques

Cet article pose les fondations, la vision, les enjeux. Mais la mise en œuvre concrète nécessite des connaissances techniques approfondies.

Déjà disponible

CryptoKit & Sécurité Post-Quantique avec iOS 26

Notre guide sur les nouvelles APIs cryptographiques post-quantiques d'iOS 26 vient d'être publié en parallèle de cet article :

    • Nouveaux algorithmes ML-KEM (Kyber) et ML-DSA (Dilithium)
    • Intégration avec la Secure Enclave
    • Migration progressive depuis les algorithmes classiques
    • Exemples d'implémentation Swift complets

À venir prochainement

CryptoKit : le guide complet (février)

L'API cryptographique native Apple en profondeur :

    • Chiffrement symétrique (AES-GCM) et asymétrique (P-256, Curve25519)
    • Fonctions de hachage et HMAC
    • Secure Enclave et clés hardware
    • Bonnes pratiques et pièges à éviter

Stratégies d'Audits Swift (février)

Un guide complet sur l'audit de code Swift, incluant :

    • Network Security : ATS et Certificate Pinning
    • Audit de performance et optimisation mémoire
    • Sécurité et bonnes pratiques
    • Accessibilité et conformité

Keychain & Security Framework : le guide complet

Tout ce qu'il faut savoir sur le stockage sécurisé iOS :

    • Architecture du Keychain et classes de protection
    • Implémentation robuste avec Swift moderne
    • Keychain sharing entre apps
    • Access Control Lists et biométrie
    • Migration depuis UserDefaults
    • Tests et validation

mDL & Identité numérique sécurisée

L'identité sur mobile :

    • Standard ISO 18013-5 (Mobile Driving License)
    • Architecture de sécurité mDL
    • Implémentation iOS avec les APIs Apple
    • Enjeux de souveraineté et de vie privée

Ressources et références

Sources officielles

Guides techniques

Veille et actualités

Un dernier mot

Si vous avez lu jusqu'ici, merci. Cet article est long, dense, parfois inconfortable. C'est voulu.

La sécurité n'est pas un sujet confortable. Elle nous confronte à nos raccourcis, nos compromis, nos "on verra plus tard". Elle nous rappelle que nos décisions ont des conséquences — pour nos utilisateurs, pour nos entreprises, pour nous-mêmes.

Mais c'est aussi un sujet passionnant. Parce que bien faire les choses, construire des produits qui protègent vraiment les gens qui les utilisent, c'est gratifiant. C'est du travail bien fait.

Alors, dès lundi matin, posez-vous la question :

“Qu'est-ce que je peux faire, à mon niveau, pour améliorer la sécurité de ce qu'on construit ?”
— Question finale

La réponse existe. Elle est dans les checklists ci-dessus. Elle est dans les questions miroir de cet article. Elle est dans le courage de dire "non, on ne peut pas livrer ça en l'état".

Bonne lecture des articles techniques à venir. Et bonne sécurisation de vos projets.

Cet article fait partie d'une série sur la sécurité des applications mobiles. Retrouvez tous les articles sur le blog d'Atelier Socle.

Des questions, des remarques, des retours d'expérience ? Contactez-nous via le formulaire du site ou sur LinkedIn.