Recherche de contacts COVID-19 : Quelle est la situation en matière de codage sécurisé ?
Une version de cet article a été publiée dans DevOps Digest. Elle a été mise à jour et publiée ici.
À ce stade, je suis sûr que nous sommes tous un peu fatigués de l'expression "en ces temps sans précédent"... mais nous vivons vraiment des temps sans précédent. Qui aurait pensé, à la fin de l'année dernière, que nous serions en train de courir pour vaincre une pandémie destructrice à l'échelle mondiale cette année, et que nous ferions tout ce qui est en notre pouvoir pour y parvenir ? Cela aurait semblé presque risible et relever davantage d'une nouvelle série de science-fiction de Netflix que de notre réalité mondiale. Le COVID-19 a complètement transformé notre vie sociale, notre économie et notre sécurité d'emploi, sans parler des priorités politiques.
L'une des contre-attaques contre le COVID-19 a été la technologie, de nombreux pays ayant mis en place des applications de recherche de contacts. L'Australie dispose de l'application COVIDSafe, inspirée de l'application TraceTogether de Singapour. Hong Kong, Taïwan, la Chine, la Corée du Sud, Israël et l'Allemagne ont tous mis en place une technologie de recherche des contacts ou sont sur le point de le faire. Le Royaume-Uni a été la région la plus durement touchée en Europe, avec des dizaines de milliers de décès liés au virus et un taux d'infection élevé. Le lancement de leur application est imminent. Les États-Unis, également très touchés par la perte tragique de nombreuses personnes, ont également mis en place une technologie, mais leur approche de la recherche des contacts, État par État, rend leur situation assez complexe.
À l'exception des pays les plus contrôlés par l'État, comme la Chine et Taïwan, l'utilisation de ces applications est volontaire, les citoyens devant télécharger et utiliser la technologie de leur propre chef. Certains taux d'adoption sont plus satisfaisants que d'autres ; par exemple, l'application TraceTogether de Singapour a eu un taux d'adoption de 25 %, ce qui l'a rendue tout à fait inefficace par rapport à l'objectif recherché.
L'idée qui sous-tend les applications de recherche de contacts est judicieuse. Cette technologie, lorsqu'elle fonctionne bien, permettrait de révéler rapidement les points chauds et d'effectuer des tests complets, deux éléments essentiels pour lutter contre la propagation d'un virus contagieux. Cependant, les mots "gouvernement" et "traçage" ne sont pas très engageants, et il est naturel que les gens soient prudents quant à ce que le téléchargement d'une telle application signifierait pour eux.
Quelles sont donc les principales préoccupations des utilisateurs ? Si l'on en croit les commentaires en ligne, ces inquiétudes portent notamment sur les points suivants :
- Manque de confiance dans le gouvernement pour utiliser les données collectées de manière responsable
- Appréhension quant à la protection des données personnelles contre les cyberattaques
- Manque de clarté quant aux données réellement collectées, à l'endroit où elles sont stockées et à leurs destinataires.
- ... et pour les développeurs/geeks parmi nous, la solidité des applications.
C'est toujours un peu inquiétant lorsque les applications sont créées rapidement, et ces applications de recherche de contacts doivent être déployées en un temps record. C'est un cauchemar pour les développeurs, les responsables de la sécurité et les agences gouvernementales.
La méfiance est-elle donc une réaction valable ? Et que devrions-nous considérer comme une priorité dans notre assessment des applications de recherche de contacts COVID-19 et de la sécurité de l'utilisateur final ? En tant que spécialiste de la sécurité, mon instinct me pousse bien sûr à me pencher sur les éléments de cybersécurité du programme, à savoir la sécurité de la base de code d'une application que l'on nous pousse tous (avec les meilleures intentions du monde) à installer.
De nombreuses applications sont des copies les unes des autres (et héritent des mêmes problèmes).
L'application australienne COVIDSafe est essentiellement basée sur OpenTrace, tout comme le logiciel TraceTogether de Singapour. Le problème, cependant, est que TraceTogether a connu une série de problèmes signalés et un faible taux d'adoption, avec seulement 25 % de la population qui a choisi d'utiliser le logiciel - bien loin des 75 % requis pour qu'il soit efficace. Des plaintes ont été formulées concernant ses performances générales, en particulier sur iOS, notamment en ce qui concerne l'épuisement très rapide des batteries. COVIDSafe présente une faille potentielle dans sa version iOS: le téléphone doit être déverrouillé et l'application doit tourner au premier plan pour enregistrer correctement toutes les données.
Bien que ces problèmes soient ennuyeux, le problème le plus urgent est que les vulnérabilités Bluetooth sont nombreuses et que ni TraceTogether, ni l'application australienne COVIDSafe ne sont à l'abri de ces vulnérabilités. Le 14 mai, le NIST a signalé que COVIDSafe présentait une vulnérabilité de déni de service, permettant à un attaquant de planter l'application à distance s'il se trouve à distance de la poignée de main Bluetooth. Cela permettrait à une attaque organisée de perturber la recherche de contacts dans les zones densément peuplées, là où elle est la plus utile - ce qu'explique en détail le chercheur en sécurité Richard Nelson. On sait que COVIDSafe, TraceTogether, ProteGO (Pologne) et ABTraceTogether (Canada) sont concernés par ce problème, qui découle de l'appel manuData.subdata défectueux d'OpenTrace.
Il existe également d'autres problèmes de confidentialité et de sécurité liés à la fonctionnalité Bluetooth en général. Le fait que cette technologie soit utilisée pour suivre les mouvements humains au moyen d'un identifiant unique (TempID) et pour collecter des données significatives suscitera inévitablement un regain d'intérêt de la part des attaquants qui testeront les faiblesses de cette technologie, et il faudra alors examiner de près ce qui est collecté, où cela est stocké et pendant combien de temps.
Certaines applications montrent déjà des signes d'erreurs simples qui entraînent des faiblesses complexes.
L'ingénieur logiciel australien Geoffrey Huntley a étudié le code source de COVIDSafe et, malheureusement, il y a des problèmes qui ne sont pas nécessairement mis en évidence pour nous, les utilisateurs finaux.
Un exemple critique était une erreur de logique portant atteinte à la vie privée, qui permettait à un pirate d'effectuer un suivi à long terme des appareils, ce qui représente un risque énorme pour les utilisateurs vulnérables, sans parler du fait que cela contrevient à la politique de protection de la vie privée de l'application elle-même.
Il est important de noter que ces vulnérabilités logiques ont été corrigées le 14 mai, mais le problème le plus urgent est que ces vulnérabilités n'ont pas été corrigées, dans la nature, pendant 17 jours après que M. Huntley les ait signalées. Ce dernier et d'autres membres de la communauté de sécurité awesome suivent les CVEs relatifs à l'application COVIDSafe ici.
Une chose que Huntley souligne, après le correctif, c'est que même le correctif montre des signes d'incompétence. Dans son journal public, il note que le correctif impliquait l'ajout d'une logique plutôt que la simple suppression d'un cache défectueux, cette dernière solution étant beaucoup plus robuste. Les deux fonctionnent, mais la solution en direct manque de finesse, ce qui est préoccupant pour une application aussi importante.
Bien que des membres diligents de la société consacrent leur temps et leur expertise à examiner le code source et à mettre en évidence les problèmes, leur travail est beaucoup plus difficile que si le code était ouvert dès le départ. À l'heure actuelle, 28 applications sont toujours inaccessibles aux chercheurs en sécurité.
Le codage sécurisé continue de nous faire trébucher sur la ligne d'arrivée.
Bien que je puisse certainement compatir avec les développeurs surchargés de travail - ainsi qu'avec la situation très inhabituelle de devoir produire une application vitale au milieu d'une pandémie - ce qui précède devrait souligner que quelques simples vulnérabilités dans ce qui est essentiellement une base de code commune pourraient entraîner des problèmes importants pour des millions d'utilisateurs.
J'aime à penser que la plupart des gens veulent être de bons citoyens, soutenir l'application et donner à chacun les meilleures chances possibles de retrouver les contacts et de contrôler les épidémies de ce terrible virus. Je soutiens moi aussi la technologie qui peut aider à atteindre cet objectif, mais à bien des égards, cette affaire a mis en lumière le manque général de principes de codage sécurisés inhérents aux développeurs du monde entier.
Dans toute situation où un logiciel doit être écrit rapidement, les erreurs ne sont pas vraiment inattendues. Toutefois, les failles de sécurité courantes telles que les défauts de logique, les mauvaises configurations et les erreurs d'injection de code devraient pouvoir être évitées au moment de l'écriture du code, et non après que des "chapeaux blancs" bénévoles ont décortiqué la base de code.
Et ce n'est pas la faute des développeurs, d'ailleurs. Ils sortent de l'enseignement supérieur avec peu de compétences en matière de codage sécurisé et, au cours de leur carrière, leurs indicateurs clés de performance sont presque toujours liés à la fonctionnalité et à la rapidité de livraison - la partie sécurité est réservée à quelqu'un d'autre une fois qu'ils ont terminé. Nous devons parvenir rapidement à un état final de codage sécurisé, et même si ce n'est pas le moment de procéder à des changements culturels radicaux dans les services qui créent ces applications, il est opportun de rappeler que notre zone de risque numérique s'étend, et qu'ils sont en pole position pour faire la différence si on leur donne les outils et les connaissances nécessaires pour partager la responsabilité des meilleures pratiques en matière de sécurité.
Le téléchargement de l'application est-il sûr ?
Voici ce qu'il en est : en tant que spécialiste de la sécurité, je suis arrivé à la conclusion que les avantages de l'application l'emportent sur les problèmes. Il n'est pas idéal que les vulnérabilités susmentionnées soient - ou aient été - présentes dans ce logiciel, mais les implications de leur utilisation à des fins militaires relèvent du pire des scénarios. À l'heure actuelle, la recherche des contacts est un élément essentiel pour aider nos héros médicaux du monde entier à contrôler la propagation, à endiguer le flux des admissions à l'hôpital et à se protéger les uns les autres autant que possible.
Cela montre qu'il reste encore beaucoup à faire pour que les meilleures pratiques en matière de sécurité soient intégrées par défaut dans les logiciels, et il est important que le public dispose des informations nécessaires pour prendre des décisions en connaissance de cause.
Ma famille et moi-même continuerons à l'utiliser, même si nous restons vigilants quant à la mise à jour de nos correctifs Android, comme nous devrions tous le faire.
L'idée qui sous-tend les applications de recherche de contacts est judicieuse. Cette technologie, lorsqu'elle fonctionne bien, permet de révéler rapidement les points chauds et d'effectuer des tests complets, deux éléments essentiels pour lutter contre la propagation d'un virus contagieux.
Directeur général, président et cofondateur
Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démonstrationDirecteur général, président et cofondateur
Pieter Danhieux est un expert en sécurité mondialement reconnu, avec plus de 12 ans d'expérience en tant que consultant en sécurité et 8 ans en tant qu'instructeur principal pour SANS, enseignant des techniques offensives sur la façon de cibler et d'évaluer les organisations, les systèmes et les individus pour les faiblesses de sécurité. En 2016, il a été reconnu comme l'une des personnes les plus cool d'Australie dans le domaine de la technologie (Business Insider), a reçu le prix du professionnel de la cybersécurité de l'année (AISA - Australian Information Security Association) et détient les certifications GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA.
Une version de cet article a été publiée dans DevOps Digest. Elle a été mise à jour et publiée ici.
À ce stade, je suis sûr que nous sommes tous un peu fatigués de l'expression "en ces temps sans précédent"... mais nous vivons vraiment des temps sans précédent. Qui aurait pensé, à la fin de l'année dernière, que nous serions en train de courir pour vaincre une pandémie destructrice à l'échelle mondiale cette année, et que nous ferions tout ce qui est en notre pouvoir pour y parvenir ? Cela aurait semblé presque risible et relever davantage d'une nouvelle série de science-fiction de Netflix que de notre réalité mondiale. Le COVID-19 a complètement transformé notre vie sociale, notre économie et notre sécurité d'emploi, sans parler des priorités politiques.
L'une des contre-attaques contre le COVID-19 a été la technologie, de nombreux pays ayant mis en place des applications de recherche de contacts. L'Australie dispose de l'application COVIDSafe, inspirée de l'application TraceTogether de Singapour. Hong Kong, Taïwan, la Chine, la Corée du Sud, Israël et l'Allemagne ont tous mis en place une technologie de recherche des contacts ou sont sur le point de le faire. Le Royaume-Uni a été la région la plus durement touchée en Europe, avec des dizaines de milliers de décès liés au virus et un taux d'infection élevé. Le lancement de leur application est imminent. Les États-Unis, également très touchés par la perte tragique de nombreuses personnes, ont également mis en place une technologie, mais leur approche de la recherche des contacts, État par État, rend leur situation assez complexe.
À l'exception des pays les plus contrôlés par l'État, comme la Chine et Taïwan, l'utilisation de ces applications est volontaire, les citoyens devant télécharger et utiliser la technologie de leur propre chef. Certains taux d'adoption sont plus satisfaisants que d'autres ; par exemple, l'application TraceTogether de Singapour a eu un taux d'adoption de 25 %, ce qui l'a rendue tout à fait inefficace par rapport à l'objectif recherché.
L'idée qui sous-tend les applications de recherche de contacts est judicieuse. Cette technologie, lorsqu'elle fonctionne bien, permettrait de révéler rapidement les points chauds et d'effectuer des tests complets, deux éléments essentiels pour lutter contre la propagation d'un virus contagieux. Cependant, les mots "gouvernement" et "traçage" ne sont pas très engageants, et il est naturel que les gens soient prudents quant à ce que le téléchargement d'une telle application signifierait pour eux.
Quelles sont donc les principales préoccupations des utilisateurs ? Si l'on en croit les commentaires en ligne, ces inquiétudes portent notamment sur les points suivants :
- Manque de confiance dans le gouvernement pour utiliser les données collectées de manière responsable
- Appréhension quant à la protection des données personnelles contre les cyberattaques
- Manque de clarté quant aux données réellement collectées, à l'endroit où elles sont stockées et à leurs destinataires.
- ... et pour les développeurs/geeks parmi nous, la solidité des applications.
C'est toujours un peu inquiétant lorsque les applications sont créées rapidement, et ces applications de recherche de contacts doivent être déployées en un temps record. C'est un cauchemar pour les développeurs, les responsables de la sécurité et les agences gouvernementales.
La méfiance est-elle donc une réaction valable ? Et que devrions-nous considérer comme une priorité dans notre assessment des applications de recherche de contacts COVID-19 et de la sécurité de l'utilisateur final ? En tant que spécialiste de la sécurité, mon instinct me pousse bien sûr à me pencher sur les éléments de cybersécurité du programme, à savoir la sécurité de la base de code d'une application que l'on nous pousse tous (avec les meilleures intentions du monde) à installer.
De nombreuses applications sont des copies les unes des autres (et héritent des mêmes problèmes).
L'application australienne COVIDSafe est essentiellement basée sur OpenTrace, tout comme le logiciel TraceTogether de Singapour. Le problème, cependant, est que TraceTogether a connu une série de problèmes signalés et un faible taux d'adoption, avec seulement 25 % de la population qui a choisi d'utiliser le logiciel - bien loin des 75 % requis pour qu'il soit efficace. Des plaintes ont été formulées concernant ses performances générales, en particulier sur iOS, notamment en ce qui concerne l'épuisement très rapide des batteries. COVIDSafe présente une faille potentielle dans sa version iOS: le téléphone doit être déverrouillé et l'application doit tourner au premier plan pour enregistrer correctement toutes les données.
Bien que ces problèmes soient ennuyeux, le problème le plus urgent est que les vulnérabilités Bluetooth sont nombreuses et que ni TraceTogether, ni l'application australienne COVIDSafe ne sont à l'abri de ces vulnérabilités. Le 14 mai, le NIST a signalé que COVIDSafe présentait une vulnérabilité de déni de service, permettant à un attaquant de planter l'application à distance s'il se trouve à distance de la poignée de main Bluetooth. Cela permettrait à une attaque organisée de perturber la recherche de contacts dans les zones densément peuplées, là où elle est la plus utile - ce qu'explique en détail le chercheur en sécurité Richard Nelson. On sait que COVIDSafe, TraceTogether, ProteGO (Pologne) et ABTraceTogether (Canada) sont concernés par ce problème, qui découle de l'appel manuData.subdata défectueux d'OpenTrace.
Il existe également d'autres problèmes de confidentialité et de sécurité liés à la fonctionnalité Bluetooth en général. Le fait que cette technologie soit utilisée pour suivre les mouvements humains au moyen d'un identifiant unique (TempID) et pour collecter des données significatives suscitera inévitablement un regain d'intérêt de la part des attaquants qui testeront les faiblesses de cette technologie, et il faudra alors examiner de près ce qui est collecté, où cela est stocké et pendant combien de temps.
Certaines applications montrent déjà des signes d'erreurs simples qui entraînent des faiblesses complexes.
L'ingénieur logiciel australien Geoffrey Huntley a étudié le code source de COVIDSafe et, malheureusement, il y a des problèmes qui ne sont pas nécessairement mis en évidence pour nous, les utilisateurs finaux.
Un exemple critique était une erreur de logique portant atteinte à la vie privée, qui permettait à un pirate d'effectuer un suivi à long terme des appareils, ce qui représente un risque énorme pour les utilisateurs vulnérables, sans parler du fait que cela contrevient à la politique de protection de la vie privée de l'application elle-même.
Il est important de noter que ces vulnérabilités logiques ont été corrigées le 14 mai, mais le problème le plus urgent est que ces vulnérabilités n'ont pas été corrigées, dans la nature, pendant 17 jours après que M. Huntley les ait signalées. Ce dernier et d'autres membres de la communauté de sécurité awesome suivent les CVEs relatifs à l'application COVIDSafe ici.
Une chose que Huntley souligne, après le correctif, c'est que même le correctif montre des signes d'incompétence. Dans son journal public, il note que le correctif impliquait l'ajout d'une logique plutôt que la simple suppression d'un cache défectueux, cette dernière solution étant beaucoup plus robuste. Les deux fonctionnent, mais la solution en direct manque de finesse, ce qui est préoccupant pour une application aussi importante.
Bien que des membres diligents de la société consacrent leur temps et leur expertise à examiner le code source et à mettre en évidence les problèmes, leur travail est beaucoup plus difficile que si le code était ouvert dès le départ. À l'heure actuelle, 28 applications sont toujours inaccessibles aux chercheurs en sécurité.
Le codage sécurisé continue de nous faire trébucher sur la ligne d'arrivée.
Bien que je puisse certainement compatir avec les développeurs surchargés de travail - ainsi qu'avec la situation très inhabituelle de devoir produire une application vitale au milieu d'une pandémie - ce qui précède devrait souligner que quelques simples vulnérabilités dans ce qui est essentiellement une base de code commune pourraient entraîner des problèmes importants pour des millions d'utilisateurs.
J'aime à penser que la plupart des gens veulent être de bons citoyens, soutenir l'application et donner à chacun les meilleures chances possibles de retrouver les contacts et de contrôler les épidémies de ce terrible virus. Je soutiens moi aussi la technologie qui peut aider à atteindre cet objectif, mais à bien des égards, cette affaire a mis en lumière le manque général de principes de codage sécurisés inhérents aux développeurs du monde entier.
Dans toute situation où un logiciel doit être écrit rapidement, les erreurs ne sont pas vraiment inattendues. Toutefois, les failles de sécurité courantes telles que les défauts de logique, les mauvaises configurations et les erreurs d'injection de code devraient pouvoir être évitées au moment de l'écriture du code, et non après que des "chapeaux blancs" bénévoles ont décortiqué la base de code.
Et ce n'est pas la faute des développeurs, d'ailleurs. Ils sortent de l'enseignement supérieur avec peu de compétences en matière de codage sécurisé et, au cours de leur carrière, leurs indicateurs clés de performance sont presque toujours liés à la fonctionnalité et à la rapidité de livraison - la partie sécurité est réservée à quelqu'un d'autre une fois qu'ils ont terminé. Nous devons parvenir rapidement à un état final de codage sécurisé, et même si ce n'est pas le moment de procéder à des changements culturels radicaux dans les services qui créent ces applications, il est opportun de rappeler que notre zone de risque numérique s'étend, et qu'ils sont en pole position pour faire la différence si on leur donne les outils et les connaissances nécessaires pour partager la responsabilité des meilleures pratiques en matière de sécurité.
Le téléchargement de l'application est-il sûr ?
Voici ce qu'il en est : en tant que spécialiste de la sécurité, je suis arrivé à la conclusion que les avantages de l'application l'emportent sur les problèmes. Il n'est pas idéal que les vulnérabilités susmentionnées soient - ou aient été - présentes dans ce logiciel, mais les implications de leur utilisation à des fins militaires relèvent du pire des scénarios. À l'heure actuelle, la recherche des contacts est un élément essentiel pour aider nos héros médicaux du monde entier à contrôler la propagation, à endiguer le flux des admissions à l'hôpital et à se protéger les uns les autres autant que possible.
Cela montre qu'il reste encore beaucoup à faire pour que les meilleures pratiques en matière de sécurité soient intégrées par défaut dans les logiciels, et il est important que le public dispose des informations nécessaires pour prendre des décisions en connaissance de cause.
Ma famille et moi-même continuerons à l'utiliser, même si nous restons vigilants quant à la mise à jour de nos correctifs Android, comme nous devrions tous le faire.
Une version de cet article a été publiée dans DevOps Digest. Elle a été mise à jour et publiée ici.
À ce stade, je suis sûr que nous sommes tous un peu fatigués de l'expression "en ces temps sans précédent"... mais nous vivons vraiment des temps sans précédent. Qui aurait pensé, à la fin de l'année dernière, que nous serions en train de courir pour vaincre une pandémie destructrice à l'échelle mondiale cette année, et que nous ferions tout ce qui est en notre pouvoir pour y parvenir ? Cela aurait semblé presque risible et relever davantage d'une nouvelle série de science-fiction de Netflix que de notre réalité mondiale. Le COVID-19 a complètement transformé notre vie sociale, notre économie et notre sécurité d'emploi, sans parler des priorités politiques.
L'une des contre-attaques contre le COVID-19 a été la technologie, de nombreux pays ayant mis en place des applications de recherche de contacts. L'Australie dispose de l'application COVIDSafe, inspirée de l'application TraceTogether de Singapour. Hong Kong, Taïwan, la Chine, la Corée du Sud, Israël et l'Allemagne ont tous mis en place une technologie de recherche des contacts ou sont sur le point de le faire. Le Royaume-Uni a été la région la plus durement touchée en Europe, avec des dizaines de milliers de décès liés au virus et un taux d'infection élevé. Le lancement de leur application est imminent. Les États-Unis, également très touchés par la perte tragique de nombreuses personnes, ont également mis en place une technologie, mais leur approche de la recherche des contacts, État par État, rend leur situation assez complexe.
À l'exception des pays les plus contrôlés par l'État, comme la Chine et Taïwan, l'utilisation de ces applications est volontaire, les citoyens devant télécharger et utiliser la technologie de leur propre chef. Certains taux d'adoption sont plus satisfaisants que d'autres ; par exemple, l'application TraceTogether de Singapour a eu un taux d'adoption de 25 %, ce qui l'a rendue tout à fait inefficace par rapport à l'objectif recherché.
L'idée qui sous-tend les applications de recherche de contacts est judicieuse. Cette technologie, lorsqu'elle fonctionne bien, permettrait de révéler rapidement les points chauds et d'effectuer des tests complets, deux éléments essentiels pour lutter contre la propagation d'un virus contagieux. Cependant, les mots "gouvernement" et "traçage" ne sont pas très engageants, et il est naturel que les gens soient prudents quant à ce que le téléchargement d'une telle application signifierait pour eux.
Quelles sont donc les principales préoccupations des utilisateurs ? Si l'on en croit les commentaires en ligne, ces inquiétudes portent notamment sur les points suivants :
- Manque de confiance dans le gouvernement pour utiliser les données collectées de manière responsable
- Appréhension quant à la protection des données personnelles contre les cyberattaques
- Manque de clarté quant aux données réellement collectées, à l'endroit où elles sont stockées et à leurs destinataires.
- ... et pour les développeurs/geeks parmi nous, la solidité des applications.
C'est toujours un peu inquiétant lorsque les applications sont créées rapidement, et ces applications de recherche de contacts doivent être déployées en un temps record. C'est un cauchemar pour les développeurs, les responsables de la sécurité et les agences gouvernementales.
La méfiance est-elle donc une réaction valable ? Et que devrions-nous considérer comme une priorité dans notre assessment des applications de recherche de contacts COVID-19 et de la sécurité de l'utilisateur final ? En tant que spécialiste de la sécurité, mon instinct me pousse bien sûr à me pencher sur les éléments de cybersécurité du programme, à savoir la sécurité de la base de code d'une application que l'on nous pousse tous (avec les meilleures intentions du monde) à installer.
De nombreuses applications sont des copies les unes des autres (et héritent des mêmes problèmes).
L'application australienne COVIDSafe est essentiellement basée sur OpenTrace, tout comme le logiciel TraceTogether de Singapour. Le problème, cependant, est que TraceTogether a connu une série de problèmes signalés et un faible taux d'adoption, avec seulement 25 % de la population qui a choisi d'utiliser le logiciel - bien loin des 75 % requis pour qu'il soit efficace. Des plaintes ont été formulées concernant ses performances générales, en particulier sur iOS, notamment en ce qui concerne l'épuisement très rapide des batteries. COVIDSafe présente une faille potentielle dans sa version iOS: le téléphone doit être déverrouillé et l'application doit tourner au premier plan pour enregistrer correctement toutes les données.
Bien que ces problèmes soient ennuyeux, le problème le plus urgent est que les vulnérabilités Bluetooth sont nombreuses et que ni TraceTogether, ni l'application australienne COVIDSafe ne sont à l'abri de ces vulnérabilités. Le 14 mai, le NIST a signalé que COVIDSafe présentait une vulnérabilité de déni de service, permettant à un attaquant de planter l'application à distance s'il se trouve à distance de la poignée de main Bluetooth. Cela permettrait à une attaque organisée de perturber la recherche de contacts dans les zones densément peuplées, là où elle est la plus utile - ce qu'explique en détail le chercheur en sécurité Richard Nelson. On sait que COVIDSafe, TraceTogether, ProteGO (Pologne) et ABTraceTogether (Canada) sont concernés par ce problème, qui découle de l'appel manuData.subdata défectueux d'OpenTrace.
Il existe également d'autres problèmes de confidentialité et de sécurité liés à la fonctionnalité Bluetooth en général. Le fait que cette technologie soit utilisée pour suivre les mouvements humains au moyen d'un identifiant unique (TempID) et pour collecter des données significatives suscitera inévitablement un regain d'intérêt de la part des attaquants qui testeront les faiblesses de cette technologie, et il faudra alors examiner de près ce qui est collecté, où cela est stocké et pendant combien de temps.
Certaines applications montrent déjà des signes d'erreurs simples qui entraînent des faiblesses complexes.
L'ingénieur logiciel australien Geoffrey Huntley a étudié le code source de COVIDSafe et, malheureusement, il y a des problèmes qui ne sont pas nécessairement mis en évidence pour nous, les utilisateurs finaux.
Un exemple critique était une erreur de logique portant atteinte à la vie privée, qui permettait à un pirate d'effectuer un suivi à long terme des appareils, ce qui représente un risque énorme pour les utilisateurs vulnérables, sans parler du fait que cela contrevient à la politique de protection de la vie privée de l'application elle-même.
Il est important de noter que ces vulnérabilités logiques ont été corrigées le 14 mai, mais le problème le plus urgent est que ces vulnérabilités n'ont pas été corrigées, dans la nature, pendant 17 jours après que M. Huntley les ait signalées. Ce dernier et d'autres membres de la communauté de sécurité awesome suivent les CVEs relatifs à l'application COVIDSafe ici.
Une chose que Huntley souligne, après le correctif, c'est que même le correctif montre des signes d'incompétence. Dans son journal public, il note que le correctif impliquait l'ajout d'une logique plutôt que la simple suppression d'un cache défectueux, cette dernière solution étant beaucoup plus robuste. Les deux fonctionnent, mais la solution en direct manque de finesse, ce qui est préoccupant pour une application aussi importante.
Bien que des membres diligents de la société consacrent leur temps et leur expertise à examiner le code source et à mettre en évidence les problèmes, leur travail est beaucoup plus difficile que si le code était ouvert dès le départ. À l'heure actuelle, 28 applications sont toujours inaccessibles aux chercheurs en sécurité.
Le codage sécurisé continue de nous faire trébucher sur la ligne d'arrivée.
Bien que je puisse certainement compatir avec les développeurs surchargés de travail - ainsi qu'avec la situation très inhabituelle de devoir produire une application vitale au milieu d'une pandémie - ce qui précède devrait souligner que quelques simples vulnérabilités dans ce qui est essentiellement une base de code commune pourraient entraîner des problèmes importants pour des millions d'utilisateurs.
J'aime à penser que la plupart des gens veulent être de bons citoyens, soutenir l'application et donner à chacun les meilleures chances possibles de retrouver les contacts et de contrôler les épidémies de ce terrible virus. Je soutiens moi aussi la technologie qui peut aider à atteindre cet objectif, mais à bien des égards, cette affaire a mis en lumière le manque général de principes de codage sécurisés inhérents aux développeurs du monde entier.
Dans toute situation où un logiciel doit être écrit rapidement, les erreurs ne sont pas vraiment inattendues. Toutefois, les failles de sécurité courantes telles que les défauts de logique, les mauvaises configurations et les erreurs d'injection de code devraient pouvoir être évitées au moment de l'écriture du code, et non après que des "chapeaux blancs" bénévoles ont décortiqué la base de code.
Et ce n'est pas la faute des développeurs, d'ailleurs. Ils sortent de l'enseignement supérieur avec peu de compétences en matière de codage sécurisé et, au cours de leur carrière, leurs indicateurs clés de performance sont presque toujours liés à la fonctionnalité et à la rapidité de livraison - la partie sécurité est réservée à quelqu'un d'autre une fois qu'ils ont terminé. Nous devons parvenir rapidement à un état final de codage sécurisé, et même si ce n'est pas le moment de procéder à des changements culturels radicaux dans les services qui créent ces applications, il est opportun de rappeler que notre zone de risque numérique s'étend, et qu'ils sont en pole position pour faire la différence si on leur donne les outils et les connaissances nécessaires pour partager la responsabilité des meilleures pratiques en matière de sécurité.
Le téléchargement de l'application est-il sûr ?
Voici ce qu'il en est : en tant que spécialiste de la sécurité, je suis arrivé à la conclusion que les avantages de l'application l'emportent sur les problèmes. Il n'est pas idéal que les vulnérabilités susmentionnées soient - ou aient été - présentes dans ce logiciel, mais les implications de leur utilisation à des fins militaires relèvent du pire des scénarios. À l'heure actuelle, la recherche des contacts est un élément essentiel pour aider nos héros médicaux du monde entier à contrôler la propagation, à endiguer le flux des admissions à l'hôpital et à se protéger les uns les autres autant que possible.
Cela montre qu'il reste encore beaucoup à faire pour que les meilleures pratiques en matière de sécurité soient intégrées par défaut dans les logiciels, et il est important que le public dispose des informations nécessaires pour prendre des décisions en connaissance de cause.
Ma famille et moi-même continuerons à l'utiliser, même si nous restons vigilants quant à la mise à jour de nos correctifs Android, comme nous devrions tous le faire.
Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.
Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Voir le rapportRéservez une démonstrationDirecteur général, président et cofondateur
Pieter Danhieux est un expert en sécurité mondialement reconnu, avec plus de 12 ans d'expérience en tant que consultant en sécurité et 8 ans en tant qu'instructeur principal pour SANS, enseignant des techniques offensives sur la façon de cibler et d'évaluer les organisations, les systèmes et les individus pour les faiblesses de sécurité. En 2016, il a été reconnu comme l'une des personnes les plus cool d'Australie dans le domaine de la technologie (Business Insider), a reçu le prix du professionnel de la cybersécurité de l'année (AISA - Australian Information Security Association) et détient les certifications GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA.
Une version de cet article a été publiée dans DevOps Digest. Elle a été mise à jour et publiée ici.
À ce stade, je suis sûr que nous sommes tous un peu fatigués de l'expression "en ces temps sans précédent"... mais nous vivons vraiment des temps sans précédent. Qui aurait pensé, à la fin de l'année dernière, que nous serions en train de courir pour vaincre une pandémie destructrice à l'échelle mondiale cette année, et que nous ferions tout ce qui est en notre pouvoir pour y parvenir ? Cela aurait semblé presque risible et relever davantage d'une nouvelle série de science-fiction de Netflix que de notre réalité mondiale. Le COVID-19 a complètement transformé notre vie sociale, notre économie et notre sécurité d'emploi, sans parler des priorités politiques.
L'une des contre-attaques contre le COVID-19 a été la technologie, de nombreux pays ayant mis en place des applications de recherche de contacts. L'Australie dispose de l'application COVIDSafe, inspirée de l'application TraceTogether de Singapour. Hong Kong, Taïwan, la Chine, la Corée du Sud, Israël et l'Allemagne ont tous mis en place une technologie de recherche des contacts ou sont sur le point de le faire. Le Royaume-Uni a été la région la plus durement touchée en Europe, avec des dizaines de milliers de décès liés au virus et un taux d'infection élevé. Le lancement de leur application est imminent. Les États-Unis, également très touchés par la perte tragique de nombreuses personnes, ont également mis en place une technologie, mais leur approche de la recherche des contacts, État par État, rend leur situation assez complexe.
À l'exception des pays les plus contrôlés par l'État, comme la Chine et Taïwan, l'utilisation de ces applications est volontaire, les citoyens devant télécharger et utiliser la technologie de leur propre chef. Certains taux d'adoption sont plus satisfaisants que d'autres ; par exemple, l'application TraceTogether de Singapour a eu un taux d'adoption de 25 %, ce qui l'a rendue tout à fait inefficace par rapport à l'objectif recherché.
L'idée qui sous-tend les applications de recherche de contacts est judicieuse. Cette technologie, lorsqu'elle fonctionne bien, permettrait de révéler rapidement les points chauds et d'effectuer des tests complets, deux éléments essentiels pour lutter contre la propagation d'un virus contagieux. Cependant, les mots "gouvernement" et "traçage" ne sont pas très engageants, et il est naturel que les gens soient prudents quant à ce que le téléchargement d'une telle application signifierait pour eux.
Quelles sont donc les principales préoccupations des utilisateurs ? Si l'on en croit les commentaires en ligne, ces inquiétudes portent notamment sur les points suivants :
- Manque de confiance dans le gouvernement pour utiliser les données collectées de manière responsable
- Appréhension quant à la protection des données personnelles contre les cyberattaques
- Manque de clarté quant aux données réellement collectées, à l'endroit où elles sont stockées et à leurs destinataires.
- ... et pour les développeurs/geeks parmi nous, la solidité des applications.
C'est toujours un peu inquiétant lorsque les applications sont créées rapidement, et ces applications de recherche de contacts doivent être déployées en un temps record. C'est un cauchemar pour les développeurs, les responsables de la sécurité et les agences gouvernementales.
La méfiance est-elle donc une réaction valable ? Et que devrions-nous considérer comme une priorité dans notre assessment des applications de recherche de contacts COVID-19 et de la sécurité de l'utilisateur final ? En tant que spécialiste de la sécurité, mon instinct me pousse bien sûr à me pencher sur les éléments de cybersécurité du programme, à savoir la sécurité de la base de code d'une application que l'on nous pousse tous (avec les meilleures intentions du monde) à installer.
De nombreuses applications sont des copies les unes des autres (et héritent des mêmes problèmes).
L'application australienne COVIDSafe est essentiellement basée sur OpenTrace, tout comme le logiciel TraceTogether de Singapour. Le problème, cependant, est que TraceTogether a connu une série de problèmes signalés et un faible taux d'adoption, avec seulement 25 % de la population qui a choisi d'utiliser le logiciel - bien loin des 75 % requis pour qu'il soit efficace. Des plaintes ont été formulées concernant ses performances générales, en particulier sur iOS, notamment en ce qui concerne l'épuisement très rapide des batteries. COVIDSafe présente une faille potentielle dans sa version iOS: le téléphone doit être déverrouillé et l'application doit tourner au premier plan pour enregistrer correctement toutes les données.
Bien que ces problèmes soient ennuyeux, le problème le plus urgent est que les vulnérabilités Bluetooth sont nombreuses et que ni TraceTogether, ni l'application australienne COVIDSafe ne sont à l'abri de ces vulnérabilités. Le 14 mai, le NIST a signalé que COVIDSafe présentait une vulnérabilité de déni de service, permettant à un attaquant de planter l'application à distance s'il se trouve à distance de la poignée de main Bluetooth. Cela permettrait à une attaque organisée de perturber la recherche de contacts dans les zones densément peuplées, là où elle est la plus utile - ce qu'explique en détail le chercheur en sécurité Richard Nelson. On sait que COVIDSafe, TraceTogether, ProteGO (Pologne) et ABTraceTogether (Canada) sont concernés par ce problème, qui découle de l'appel manuData.subdata défectueux d'OpenTrace.
Il existe également d'autres problèmes de confidentialité et de sécurité liés à la fonctionnalité Bluetooth en général. Le fait que cette technologie soit utilisée pour suivre les mouvements humains au moyen d'un identifiant unique (TempID) et pour collecter des données significatives suscitera inévitablement un regain d'intérêt de la part des attaquants qui testeront les faiblesses de cette technologie, et il faudra alors examiner de près ce qui est collecté, où cela est stocké et pendant combien de temps.
Certaines applications montrent déjà des signes d'erreurs simples qui entraînent des faiblesses complexes.
L'ingénieur logiciel australien Geoffrey Huntley a étudié le code source de COVIDSafe et, malheureusement, il y a des problèmes qui ne sont pas nécessairement mis en évidence pour nous, les utilisateurs finaux.
Un exemple critique était une erreur de logique portant atteinte à la vie privée, qui permettait à un pirate d'effectuer un suivi à long terme des appareils, ce qui représente un risque énorme pour les utilisateurs vulnérables, sans parler du fait que cela contrevient à la politique de protection de la vie privée de l'application elle-même.
Il est important de noter que ces vulnérabilités logiques ont été corrigées le 14 mai, mais le problème le plus urgent est que ces vulnérabilités n'ont pas été corrigées, dans la nature, pendant 17 jours après que M. Huntley les ait signalées. Ce dernier et d'autres membres de la communauté de sécurité awesome suivent les CVEs relatifs à l'application COVIDSafe ici.
Une chose que Huntley souligne, après le correctif, c'est que même le correctif montre des signes d'incompétence. Dans son journal public, il note que le correctif impliquait l'ajout d'une logique plutôt que la simple suppression d'un cache défectueux, cette dernière solution étant beaucoup plus robuste. Les deux fonctionnent, mais la solution en direct manque de finesse, ce qui est préoccupant pour une application aussi importante.
Bien que des membres diligents de la société consacrent leur temps et leur expertise à examiner le code source et à mettre en évidence les problèmes, leur travail est beaucoup plus difficile que si le code était ouvert dès le départ. À l'heure actuelle, 28 applications sont toujours inaccessibles aux chercheurs en sécurité.
Le codage sécurisé continue de nous faire trébucher sur la ligne d'arrivée.
Bien que je puisse certainement compatir avec les développeurs surchargés de travail - ainsi qu'avec la situation très inhabituelle de devoir produire une application vitale au milieu d'une pandémie - ce qui précède devrait souligner que quelques simples vulnérabilités dans ce qui est essentiellement une base de code commune pourraient entraîner des problèmes importants pour des millions d'utilisateurs.
J'aime à penser que la plupart des gens veulent être de bons citoyens, soutenir l'application et donner à chacun les meilleures chances possibles de retrouver les contacts et de contrôler les épidémies de ce terrible virus. Je soutiens moi aussi la technologie qui peut aider à atteindre cet objectif, mais à bien des égards, cette affaire a mis en lumière le manque général de principes de codage sécurisés inhérents aux développeurs du monde entier.
Dans toute situation où un logiciel doit être écrit rapidement, les erreurs ne sont pas vraiment inattendues. Toutefois, les failles de sécurité courantes telles que les défauts de logique, les mauvaises configurations et les erreurs d'injection de code devraient pouvoir être évitées au moment de l'écriture du code, et non après que des "chapeaux blancs" bénévoles ont décortiqué la base de code.
Et ce n'est pas la faute des développeurs, d'ailleurs. Ils sortent de l'enseignement supérieur avec peu de compétences en matière de codage sécurisé et, au cours de leur carrière, leurs indicateurs clés de performance sont presque toujours liés à la fonctionnalité et à la rapidité de livraison - la partie sécurité est réservée à quelqu'un d'autre une fois qu'ils ont terminé. Nous devons parvenir rapidement à un état final de codage sécurisé, et même si ce n'est pas le moment de procéder à des changements culturels radicaux dans les services qui créent ces applications, il est opportun de rappeler que notre zone de risque numérique s'étend, et qu'ils sont en pole position pour faire la différence si on leur donne les outils et les connaissances nécessaires pour partager la responsabilité des meilleures pratiques en matière de sécurité.
Le téléchargement de l'application est-il sûr ?
Voici ce qu'il en est : en tant que spécialiste de la sécurité, je suis arrivé à la conclusion que les avantages de l'application l'emportent sur les problèmes. Il n'est pas idéal que les vulnérabilités susmentionnées soient - ou aient été - présentes dans ce logiciel, mais les implications de leur utilisation à des fins militaires relèvent du pire des scénarios. À l'heure actuelle, la recherche des contacts est un élément essentiel pour aider nos héros médicaux du monde entier à contrôler la propagation, à endiguer le flux des admissions à l'hôpital et à se protéger les uns les autres autant que possible.
Cela montre qu'il reste encore beaucoup à faire pour que les meilleures pratiques en matière de sécurité soient intégrées par défaut dans les logiciels, et il est important que le public dispose des informations nécessaires pour prendre des décisions en connaissance de cause.
Ma famille et moi-même continuerons à l'utiliser, même si nous restons vigilants quant à la mise à jour de nos correctifs Android, comme nous devrions tous le faire.
Table des matières
Directeur général, président et cofondateur
Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démonstrationTéléchargerRessources pour vous aider à démarrer
Évaluation comparative des compétences en matière de sécurité : Rationalisation de la conception sécurisée dans l'entreprise
Le mouvement "Secure-by-Design" (conception sécurisée) est l'avenir du développement de logiciels sécurisés. Découvrez les éléments clés que les entreprises doivent garder à l'esprit lorsqu'elles envisagent une initiative de conception sécurisée.
DigitalOcean réduit sa dette de sécurité avec Secure Code Warrior
L'utilisation par DigitalOcean de la formation Secure Code Warrior a considérablement réduit la dette de sécurité, permettant aux équipes de se concentrer davantage sur l'innovation et la productivité. L'amélioration de la sécurité a renforcé la qualité des produits et l'avantage concurrentiel de l'entreprise. À l'avenir, le score de confiance SCW les aidera à améliorer leurs pratiques de sécurité et à continuer à stimuler l'innovation.
Ressources pour vous aider à démarrer
La note de confiance révèle la valeur des initiatives d'amélioration de la sécurité par la conception
Nos recherches ont montré que la formation au code sécurisé fonctionne. Le Trust Score, qui utilise un algorithme s'appuyant sur plus de 20 millions de points de données d'apprentissage issus du travail de plus de 250 000 apprenants dans plus de 600 organisations, révèle son efficacité à réduire les vulnérabilités et la manière de rendre l'initiative encore plus efficace.
Sécurité réactive contre sécurité préventive : La prévention est un meilleur remède
L'idée d'apporter une sécurité préventive aux codes et systèmes existants en même temps qu'aux applications plus récentes peut sembler décourageante, mais une approche "Secure-by-Design", mise en œuvre en améliorant les compétences des développeurs, permet d'appliquer les meilleures pratiques de sécurité à ces systèmes. C'est la meilleure chance qu'ont de nombreuses organisations d'améliorer leur sécurité.
Les avantages de l'évaluation des compétences des développeurs en matière de sécurité
L'importance croissante accordée au code sécurisé et aux principes de conception sécurisée exige que les développeurs soient formés à la cybersécurité dès le début du cycle de développement durable, et que des outils tels que le Trust Score de Secure Code Warriorles aident à mesurer et à améliorer leurs progrès.
Assurer le succès des initiatives de conception sécurisée de l'entreprise
Notre dernier document de recherche, Benchmarking Security Skills : Streamlining Secure-by-Design in the Enterprise est le résultat d'une analyse approfondie d'initiatives réelles de conception sécurisée au niveau de l'entreprise, et de l'élaboration d'approches de meilleures pratiques basées sur des conclusions fondées sur des données.