Pour rassurer leurs clients sur la sécurité de leurs données, les fournisseurs cloud ont d'abord promis: "nous chiffrons les données au repos", empêchant qu'une sauvegarde égarée ou un disque décommissionné et perdu se promènent avec les données des clients.
Puis ils ont dit : "on va plus loin, on vous permet de chiffrer les données au repos avec VOTRE clé, c'est vous qui maîtrisez le stockage des données" (exemple avec Azure SQL). Et ça, c'est franchement bidon, car pour que les données soient utilisées dans le cloud, il faut leur transmettre notre clé. Que ce soit le client qui l'ait définie dans son coin ou le fournisseur cloud qui l'ait définie, à la fin c'est le fournisseur cloud qui l'a pour permettre aux systèmes de traiter les données. Donc en terme de contrôle, le client ne gagne pas grand chose.
Ce qui permet d'aller réellement plus loin, c'est la "virtualisation confidentielle", i.e. la capacité que peut avoir un système infonuagique de faire tourner du code et des calculs chiffrés, sans pouvoir connaître le contenu des données traitées. Et c'est un peu plus compliqué, notamment parce que ça nécessite une transparence totale de l'infrastructure du fournisseur cloud.
Le proxy SSH fonctionne de façon similaire au proxy HTTP avec CONNECT :
- le client C ouvre une session SSH (http) vers le proxy P
- dans cette session, il demande l'ouverture d'une connexion TCP par le proxy vers le serveur S de destination
- le serveur ouvre la connexion et la redirige vers le client (il encapsule la session TCP dans la session SSH ou HTTP)
- via cette nouvelle connexion TCP, le client démarre une nouvelle session SSH ou HTTP vers S.
Plusieurs conséquences:
- si les conditions de sécurité sont réunies, le proxy ne peut ni déchiffrer ni altérer la communication entre le client et le serveur de destination (conditions réunies = usage de TLS et de certificat valide pour HTTP et préconnaissance mutuelle du serveur et du client pour SSH ou usage de SSHFP ou usage de PKI SSH)
- le proxy P connait l'adresse du client et l'adresse et le nom du serveur de destination (si le client demande un serveur par son nom plutôt que par IP), sauf si plusieurs proxies sont utilisés pour atteindre la destination.
- le serveur S de destination ne voit plus l'adresse du client, mais seulement celle du proxy.
C'est donc une forme de connexion bien plus sécurisée que par l'usage du SSH agent forwarding, qui permet au serveur proxy P d'usurper l'identité du client C auprès de n'importe quel serveur.
Voir aussi man ssh_config#ProxyJump
Pour un projet informatique, l'intégration continue permet de faire des opérations automatiquement: tests, construction de binaires, déploiement. Le déploiement et certains tests utilisent des éléments secrets (clés privées, mots de passe) tandis que d'autres ne nécessitent aucune information privée.
Lors du développement, les tests sont utilisés pour contrôler la qualité de modifications proposées au logiciel. Si les propositions externes sont permises (développement ouvert), L'outil d'intégration continue se retrouve à exécuter le code ainsi soumis, potentiellement malveillant. Celui-ci ne doit pas avoir accès aux secrets, sous peine de voir un attaquant les exfiltrer par ce canal.
Les opérations de déploiement et de tests avec secrets sont donc réservées au code approuvé et seuls les tests n'utilisant pas de secrets peuvent être réalisés sur les propositions externes. De plus, les secrets utilisés dans le premier cas ne doivent pas être exposés dans le second.
Pendant une semaine, Travis CI exposait des secrets aux code qui n'était pas sensé y avoir accès, mettant en danger les nombreux projets utilisant cet outil.
Les États détournent des technologies existantes pour des fins policières et, dans des états non démocratiques, à des fins de police politique. C'est du moins l'argument des oppositions à la technologie anti-pédophilie d'Apple. Est-il fondé ?
Quelques exemples (liste à compléter...) :
- The new warrant: how US police mine Google for your location and search history (The Guardian) : la police requiert de google de lui communiquer la liste des usagers présents dans telle zone à telle moment pour identifier des suspects (et non pas pour confirmer la présence de telle personne déjà suspectée ...), voire de communiquer la liste des usagers ayant cherché tel ou tel mot clé. La collecte de données opérée par Google à des fins commerciales se voit exploitée à des fins policières.
- British Telecom espionne ses usagers de cloud.mail.ru pour identifier des infractions au copyright (section « investigating intent: BT ») : « They also shared that the interception system was originally constructed as part of CleanFeed, a government initiative to block access to images of child abuse. However, it was inevitably repurposed to target copyright abuse. »
- Le fichier national des empreintes génétiques : ciblait initialement les personnes condamnées (ou soupçonnés ?) pour des délits ou crimes de nature sexuelle, et cible aujourd'hui toute infraction.
James 'albinowax' Kettle explore tout un tas de choses qui peuvent mal se passer à cause des proxys web :
- le serveur proxy et celui de destination n'interprètent pas les requêtes de la même façon (http desync attacks)
- le serveur proxy émet des requêtes HTTP ou DNS sur la base de ce qu'il voit passer (cracking the lens)
- ils ne parlent pas le même dialecte (http/2 vs http/1.1) (l'article en question)
Toutes ces choses peuvent permettre à un attaquant de cartographier le réseau cible, d'accéder à des ressources normalement cachées ou d'accéder aux données d'autres utilisateurs du même service.
Seald fournit :
- un SDK fournissant le chiffrement de bout en bout aux applications avec gestion des équipements (sous-identités associées à une identité principale) et des groupes pour partager l'information
- un séquestre stockant les clés de déchiffrement de chaque couple (information, utilisateur OU groupe), clés elles-mêmes chiffrées par le mot de passe utilisateur (le déchiffrement s'opère donc côté client)
Une interview du fondateur présente de manière claire ce dispositif et ses limites. La principale : la "racine de confiance" se résume au code exécuté. S'agissant d'applications web le plus souvent, la principale faille est donc la prise de contrôle du serveur web qui distribue l'application javascript aux clients.
Une isolation insuffisante entre les notebook jupyter exécutés par différents clients sur le cloud Azure (Microsoft) permettait, après plusieurs étapes, à un client mal intentionné d'accéder aux données d'autres clients.
TLS est un protocole de chiffrement permettant à 2 partenaires de mener une discussion sans que celle-ci soit lue par un tiers, et certifiant l'identité d'au moins un des 2 partenaires à l'autre partenaire.
Il est utilisé pour sécuriser d'autres protocoles, répondant à des besoins spécifiques (HTTP pour le web, SMTP et IMAP pour l'envoi d'emails, FTP pour le transfert de fichiers, T-SQL pour l'interrogation de bases de données SQL server).
TLS et le protocole chiffré par TLS peuvent s'articuler de 2 façons :
- on commence par établir la connexion chiffrée avec TLS puis on démarre le second protocole, entièrement chiffré (mode "implicite")
- on commence le protocole d'échange, puis les participants signalent leur souhait de chiffrer la communication, l'échange TLS se met en place puis le premier protocole reprend son cours, désormais protégé par le chiffrement (mode "explicite").
Le premier mode est considéré comme plus sûr mais, pour des raisons de rétrocompatibilité, de nombreux protocoles utilisent encore le mode explicite.
Cette étude fait le point sur de nombreuses failles logicielles permises par le mode explicite de SMTP ("starttls"), le protocole d'envoi de mails. Quasiment tous les clients mails sachant utiliser smtps (TLS implicite pour SMTP), il est recommandé d'autoriser seulement ce mode dans les clients SMTP.
Ayant identifié récemment quelques fragilités dans l'usage de TLS avec SQL Server, je ne serai pas surpris si certaines de ces failles trouvaient à s'appliquer pour le T-SQL :-) .
Les services de certificats AD sont parfois un point faible de l'environnement, permettant des mouvements latéraux ou une escalade de privilèges au sein du domaine.
L'article commence par une introduction très claire à l'authentification dans le monde Active Directory.
Une personne qui observe le trafic chiffré entre un visiteur et un site web peut reconstituer sa navigation en mesurant la taille de chaque page consultée et des autres éléments chargés en même temps, en s'appuyant sur une image précise du site (poids de chaque page, éléments associés à chaque page, liens entre ces pages).
Cela ne permet pas de déchiffrer des messages particuliers envoyés par le visiteur au site web (mot de passe, code de carte bancaire ...).
Cellebrite vend un logiciel pour extraire plein d'informations d'un portable arraché aux mains de son propriétaire (e.g. en garde à vue), dont les clés de déchiffrement de conversations Signal. Signal remarque que leur logiciel n'est pas sécurisé et distribue des fichiers exploitant ces failles aux utilisateurs de l'application.
Anyone familiar with software security will immediately recognize that the primary task of Cellebrite’s software is to parse “untrusted” data from a wide variety of formats as used by many different apps. That is to say, the data Cellebrite’s software needs to extract and display is ultimately generated and controlled by the apps on the device, not a “trusted” source, so Cellebrite can’t make any assumptions about the “correctness” of the formatted data it is receiving. This is the space in which virtually all security vulnerabilities originate.
FS_SECRM_FL 's' Mark the file for secure deletion. This feature is not implemented by any filesystem, since the task of securely erasing a file from a recording medium is surprisingly difficult.
Le Conseil d'État se prononçait sur la possibilité ou non d'héberger des données de santé sur le cloud Microsoft : il constate que Microsoft pourra être soumis à des requêtes des autorités américaines sans que les personnes ciblées n'aient aucun recours. Mais serait-il possible d'héberger les données chez Microsoft sans que Microsoft y ait accès, par exemple avec du chiffrement ? Non.
- Toutefois, la Commission nationale de l'informatique et des libertés, dans les observations qu'elle a produites à la suite de la communication de la requête, estime, en l'état des informations dont elle dispose, que le risque d'une demande telle que celles mentionnées au point 15 ne peut être totalement écarté. En outre, il résulte de l'instruction que les mesures techniques mises en oeuvre par Microsoft ou susceptibles de l'être à brève échéance n'écartent pas toute possibilité pour cette entreprise d'accéder aux données traitées sous la responsabilité de la Plateforme des données de santé, en dépit des précautions, limitant ce risque, qui entourent le chiffrement dont elles font l'objet et le stockage des clés de chiffrement utilisées. Il ne peut ainsi être totalement exclu, sur le plan technique, que Microsoft soit amenée à faire droit à une demande des autorités américaines fondée sur l'article 702 du FISA, ce qui méconnaîtrait alors les articles 28 et 48 du règlement général sur la protection des données, cités au point 5, qui interdisent qu'un sous-traitant transfère des données à caractère personnel vers un pays tiers si ce n'est sur instruction du responsable du traitement ou en vertu d'une obligation prévue par le droit de l'Union européenne ou d'un Etat membre, et que puisse être reconnue ou rendue exécutoire une décision d'une autorité administrative d'un pays tiers exigeant d'un responsable du traitement ou d'un sous-traitant qu'il transfère ou divulgue des données à caractère personnel, sauf sous certaines conditions qui ne seraient en l'espèce pas remplies.
Le Conseil d'État prend acte de la décision du ministère de la Santé de mettre fin à l'hébergement des données de santé sur la plate-forme Microsoft d'ici 2 ans et décide donc de ne pas condamner ledit ministère à une action plus rapide.