1 points par GN⁺ 2024-01-20 | 1 commentaires | Partager sur WhatsApp
  • En Allemagne, un développeur a découvert des identifiants d’accès à la base de données du fournisseur en examinant les journaux d’un logiciel dans le cadre de son travail et les a signalés, mais le tribunal a estimé qu’il s’agissait de piratage
  • Le logiciel en question établissait une connexion MySQL au serveur de base de données du fournisseur, qui contenait non seulement les données du client du développeur, mais aussi celles de tous les clients du fournisseur
  • Les identifiants étaient codés en dur en clair dans l’application, au point qu’il n’était même pas nécessaire de la décompiler pour les voir
  • Le tribunal a considéré que la simple présence d’un mot de passe constituait un mécanisme de protection et que le fait de le contourner relevait du piratage
  • Un tel jugement risque de freiner la recherche légitime en sécurité et de permettre à des entreprises aux pratiques de sécurité défaillantes d’échapper à leurs responsabilités tout en exposant davantage les utilisateurs

De la découverte à la plainte

  • Cette affaire suscite des inquiétudes quant au fait que le droit allemand puisse rendre la recherche en sécurité risquée
  • Un développeur avait été chargé d’examiner un logiciel qui générait un volume excessif de messages de journal
  • Au cours de son enquête, il a constaté que ce logiciel établissait une connexion MySQL vers le serveur de base de données du fournisseur
  • La base de données contenait non seulement les données de son client, mais aussi celles de tous les clients du fournisseur
  • Après l’avoir vérifié, le développeur en a immédiatement informé le fournisseur, qui a corrigé la vulnérabilité, mais a ensuite engagé des poursuites pénales contre lui

Le mécanisme de protection selon le tribunal

  • La question centrale était de savoir si des identifiants de base de données codés en dur dans l’application constituaient une protection suffisante pour justifier une accusation de piratage
  • Ces identifiants étaient exposés en clair et ne nécessitaient même pas de décompilation
  • Le tribunal a estimé que, puisqu’il y avait un mot de passe, un mécanisme de protection existait, et que le fait de le contourner constituait un piratage

Les risques persistants pour la recherche en sécurité

  • Si beaucoup espèrent que la décision sera infirmée en appel, c’est parce que, selon cette logique, l’existence même d’une protection, aussi faible soit-elle, pourrait faire de la recherche en sécurité un piratage criminel au regard du droit allemand
  • Si la recherche légitime est découragée, les entreprises peuvent conserver une sécurité inadéquate tout en échappant à leurs responsabilités, ce qui finit par mettre les utilisateurs en danger

Source originale

1 commentaires

 
GN⁺ 2024-01-20
Avis sur Hacker News
  • Le titre de l’article est un peu confus et frôle presque le clickbait. Si j’ai bien compris, son tort a été de se servir des identifiants de base de données exposés pour se connecter à un serveur de base de données tiers.
    Autrement dit, il n’a pas été poursuivi simplement pour avoir « exposé » des identifiants, comme le suggère le titre, mais plutôt parce qu’il les a effectivement utilisés pour regarder ce qu’il y avait à l’intérieur.

    • Souvent, le seul moyen de savoir ce qu’est un système est de s’y connecter et de l’examiner.
      C’est un peu comme recevoir un badge d’accès à un bâtiment et supposer que les portes qui s’ouvrent donnent sur des pièces où l’on a le droit d’entrer. Si l’équipe de sécurité me trouve dans une pièce où je ne devrais pas être, il est difficile de dire si c’est ma faute ou celle de la personne qui m’a donné une carte avec les mauvais droits.
      Si, après avoir ouvert la porte et jeté un œil à l’intérieur, je comprends immédiatement : « je ne devrais pas être ici » et que je le signale à la sécurité, on peut aussi se demander si je mérite d’être sanctionné.
    • Oui, il s’est connecté au serveur avec les identifiants intégrés à l’app. Comme le serveur contenait les informations d’autres utilisateurs, s’il les avait utilisés de manière malveillante ou s’il s’était connecté en sachant qu’il n’avait pas le droit d’y accéder, cela pourrait clairement constituer un délit.
      Mais le point central est de savoir s’il pouvait le savoir avant de se connecter. Si les identifiants sont dans l’app, faut-il supposer que la sécurité de l’entreprise est tellement négligente qu’elle donne accès à toutes les données clients ? Il a le droit d’utiliser l’app, et comme l’app utilise ces identifiants, ce n’est pas un énorme saut logique de penser qu’il peut lui aussi les utiliser.
      Quoi qu’il en soit, le résultat de ce jugement sera clairement néfaste pour la sécurité informatique. À l’avenir, des personnes découvrant ce type de vulnérabilité pourraient ne pas la signaler par crainte de représailles juridiques.
    • Il n’y a rien de confus. C’est juste que le cadrage n’est pas celui que tu préfères.
      Du point de vue d’un développeur, il est naturel de voir un mot de passe comme un moyen d’empêcher l’accès des non-utilisateurs, pas des utilisateurs légitimes. Au départ, les identifiants n’étaient même pas cachés ni obfusqués.
      Dès qu’il est devenu clair que l’utilisateur ne devait pas y accéder, il l’a signalé au fournisseur. Est-ce que j’ai raté quelque chose ? D’un côté, il y a un développeur qui a fait son travail ; de l’autre, une entreprise mise dans l’embarras qui se venge et intimide d’éventuels signalements de bugs. Ce qui se passe paraît très clair.
    • Dire qu’il « les a effectivement utilisés pour regarder » est exact, mais il pensait que cette base de données était dédiée à ce client et ne contenait donc que les données de ce client, lequel l’avait autorisé à accéder à ses données.
      Le nom de la base de données semblait d’ailleurs aller dans ce sens. Dès qu’il s’est rendu compte qu’elle contenait les données de tous les clients, il s’est déconnecté.
    • Je soutiens le slogan Hacking Is Not A Crime.
      Ce qui compte, c’est ce qu’on fait des données après y avoir accédé. Si l’on n’en fait rien, cela ne devrait pas être un crime ; le crime devrait être constitué lorsque ces données sont effectivement utilisées de manière malveillante.
  • C’est un problème assez important en Allemagne. À cause des articles cités, StGB 202 et suivants, la recherche en sécurité dans le secteur privé est devenue de fait impossible, ou au minimum très peu attractive.
    Il y a eu un vide de près de 20 ans, pendant lequel les jeunes ingénieurs se sont rarement intéressés à ce domaine ou y ont été formés. Les grandes entreprises les plus riches ont raflé les profils qu’elles pouvaient trouver, et les meilleurs talents sont partis à l’étranger. Résultat : les PME, qui représentent la majorité des entreprises allemandes, se font pirater chaque jour davantage. Personne ne fait d’audit. De nos jours, tout ce qui est connecté au réseau constitue un risque de sécurité.
    Penser que cela sera annulé en appel me paraît très naïf. Le prévenu pourrait perdre des années à passer de l’AG au LG, puis à l’OLG et au BGH. J’estime qu’il y laissera aussi environ 100 000 euros. Tout ça pour quoi ? Une entreprise n’a pas correctement protégé ses données et, lorsqu’on le lui a signalé, elle a dit « merci » en l’envoyant au tribunal.
    Mon conseil est le suivant : s’il n’y a pas de programme de bug bounty clair, si ce n’est pas votre propre entreprise, ou si l’entreprise concernée ne vous a pas explicitement mandaté par écrit et rémunéré pour ce travail, n’en faites pas votre problème. Réprimez votre complexe du bon Samaritain, supprimez tous les fichiers et n’en parlez à personne. Surtout pas au travail. Si une procédure démarre, la personne interrogée dira : « Ah, c’est Mike du DevOps qui a trouvé ça dans le dump hexadécimal », et vous le regretterez.
    Certains vieux briscards allemands de la sécurité de l’information sont tellement furieux à ce sujet qu’ils refusent même d’aider les organismes publics en cas d’incident. L’idée étant : qu’ils apprennent dans la douleur.

  • Cette affaire dure depuis plusieurs années.
    L’été dernier, le tribunal avait rejeté le dossier du parquet. Dans ce système, le parquet soumet l’affaire au tribunal, qui l’examine rapidement et peut la rejeter avant même de fixer une audience si elle est manifestement fragile ; c’est assez rare. Le parquet a fait annuler cette décision par une juridiction supérieure, si bien que le procès s’est tenu devant le même tribunal de première instance, mais devant un autre juge que celui qui avait initialement rejeté l’affaire.
    « Selon la décision du tribunal d’instance de Jülich du 10 mai 2023, la procédure pénale contre le chercheur en sécurité a été rejetée. Le tribunal considère qu’aucune infraction pénale n’est constituée, car les données auxquelles le chercheur en sécurité a accédé n’étaient pas suffisamment protégées. “Seules les données spécialement protégées contre un accès non autorisé relèvent du champ de protection de cette infraction. Cela suppose que des mesures objectivement adaptées à empêcher l’accès aux données aient été prises”, indique la décision du tribunal. “Le tribunal ne partage pas l’avis du parquet selon lequel la protection par mot de passe suffit en soi. Par exemple, lorsqu’un mot de passe est trop simple ou utilisé de manière standardisée dans une application donnée, il n’assure pas toujours une protection efficace des données. Dans ce cas, la fourniture d’un accès aux données ne constitue pas une infraction.” »
    « Après sa propre analyse du logiciel de Modern Solution, heise online a pu confirmer qu’il contenait effectivement un mot de passe par défaut intégré. Cela signifie que toute personne ayant examiné le logiciel librement téléchargeable sur le site de l’entreprise pouvait accéder aux données présentes sur les serveurs de Modern Solution. »

  • Non, il a été condamné pour s’être connecté à la base de données en utilisant ces identifiants. Je ne connais pas le droit allemand, mais au moins au Royaume-Uni, ce serait clairement une violation du Computer Misuse Act, donc l’issue serait évidente
    Qu’on aime ça ou non, si l’on est en position de mener ce genre de recherche, il faut connaître au moins les bases de la loi

    • Pour ce qui est de « ce genre de recherche », son travail consistait à « examiner un logiciel qui produisait trop de messages de log »
      On dirait que le développeur n’était pas en train de faire de la recherche en sécurité, mais d’enquêter sur un bug. Se connecter à la base de données, comprendre de quoi il s’agit, puis se déconnecter immédiatement et faire un signalement responsable ne devrait pas mener à une sanction
      Comme quelqu’un d’autre l’a dit, avec ce genre d’approche, on incite les gens à vendre ces connaissances à ceux qui vont réellement les « utiliser à mauvais escient »
    • Lancer l’app revient déjà à « utiliser » ces identifiants. Donc tous les clients de cette entreprise sont-ils coupables de hacking ?
      Je ne vois pas la différence. À la rigueur, on pourrait parler de violation des conditions d’utilisation, mais on est très loin de pouvoir appeler ça du « hacking »
      Le fait qu’il y ait un mot de passe ne veut pas dire qu’ils essayaient d’empêcher les gens d’entrer. Ils ont distribué le mot de passe avec le logiciel
      C’est comme si, à l’entrée d’un bâtiment, on vous donnait une carte d’accès en disant « n’allez pas là où vous ne devez pas aller », puis qu’on découvrait que c’était un passe-partout. Comment savoir, au départ, que cette carte allait ouvrir des endroits auxquels elle n’aurait pas dû donner accès ?
      Moi aussi, j’ai des identifiants pour les services Google, mais ils ne me donnent accès qu’à ce qui m’appartient
    • Je ne suis pas sûr que ce soit aussi simple. D’après ce que je sais, un client lui avait demandé d’enquêter sur la raison pour laquelle un système était inondé de certaines données
      Il a exécuté le connecteur d’un autre service d’où ces données semblaient provenir, et a observé dans le pare-feu l’ouverture d’une connexion en clair vers un serveur MySQL distant. En regardant de plus près, il a constaté que les identifiants utilisés étaient les mêmes pour tous les tenants de la base MySQL. Les données exposées n’étaient donc pas seulement celles du client, mais celles de tous les tenants
      Ensuite, à ce que j’ai compris, il a créé des hachages des données utilisateur et les a exportés pour faire un signalement aux autorités, et pour permettre aux utilisateurs de vérifier s’ils figuraient dans un système qu’il fallait considérer comme compromis. Cette base de données exposait les données d’environ 700 000 utilisateurs finaux. Il a également signalé le problème à l’entreprise qui exploitait la base de données
      Le fournisseur du connecteur a publié un nouveau client utilisant TLS, et il l’a aussi contourné pour montrer que le problème existait toujours
      Il a aussi été accusé d’avoir décompilé le logiciel client pour obtenir le mot de passe, mais si je me souviens bien, il affirmait avoir simplement ouvert le fichier dans le Bloc-notes
    • Si les identifiants de la base de données étaient intégrés dans l’application, il semble prévu que l’application se connecte aux serveurs du fournisseur. Dans ce cas, tous les utilisateurs de ce fournisseur devraient-ils eux aussi être poursuivis pour hacking ?
    • À lire l’article, ce n’est pas si évident. Le développeur enquêtait sur un problème lorsqu’il a découvert les identifiants de la base de données, et comme le logiciel s’y connectait directement, il semble avoir supposé que cette connexion à la base était mono-tenant ou limitée aux droits de l’utilisateur
      Lorsqu’il a compris qu’il pouvait accéder à davantage de données que prévu, il s’est déconnecté
      J’ai déjà fait exactement la même chose dans une situation similaire. Nous avions un fournisseur de logiciel desktop problématique, et en voyant que des identifiants de base de données étaient stockés en clair dans un fichier de configuration, je m’y suis connecté. Dans mon cas, la base de données était mono-tenant et dédiée à notre entreprise, ce qui m’a permis de faire ce que je voulais
      Quand on applique la loi à ce genre d’affaire, l’intention ne devrait-elle pas clairement être prise en compte ? Ce développeur ne semble pas avoir eu l’intention d’accéder à un système restreint
  • Ce genre de loi devrait probablement être réécrit. L’intention compte, et ce « hacker » ne semble pas avoir voulu causer de tort
    L’entreprise a été humiliée parce qu’une faille de sécurité a été révélée, et elle veut punir la personne qui l’a rendue publique

    • Exact. Cela créera un effet dissuasif qui rendra les systèmes allemands moins sûrs, et d’autres pays échappant à la compétence des procureurs allemands en profiteront
      Rien que cette affaire me donne envie de ne pas travailler en Allemagne en tant que développeur, et encore moins dans la sécurité
    • Je suis d’accord. Cette condamnation est en réalité une sanction pour avoir défié le corporatisme et les avoir mis dans l’embarras
      Ils veulent que les « paysans » restent à leur place et ne regardent pas par les fenêtres de la noblesse. À moins que les avocats ne parviennent à faire entrer la lumière de l’opinion publique, l’État prend presque toujours le parti de ceux qui ont le plus d’argent. C’est pour cela qu’il faut faire ce genre de choses anonymement
  • J’ai déjà travaillé dans une startup alimentaire aux Pays-Bas
    Nous travaillions avec PostNL, un grand acteur du courrier et ancien organisme public. Chaque semaine, nous téléchargions nos commandes dans leur système, et nous pouvions consulter notre historique
    Puis un jour, soudainement, nous avons pu accéder à l’historique de tous les autres clients et exporter les données utilisateur. Beaucoup d’entre eux étaient des concurrents directs, et leurs listes de diffusion auraient eu beaucoup de valeur pour nous
    Mon associé a exporté dans Excel l’intégralité des données de Marley Spoon, un concurrent qui avait levé davantage de fonds, ainsi que quelques autres jeux de données. Quand il me l’a dit, je lui ai demandé de les supprimer immédiatement. Ça pouvait être amusant, mais il ne fallait pas créer de responsabilité juridique. Cela dit, si nous les avions utilisées, nous aurions peut-être pu croître de 10 à 30 % en quelques semaines
    Alors qu’ils y étaient obligés par le droit de l’UE, ils ne l’ont jamais signalé
    Au final, quand on obtient les clés du château, mieux vaut parfois ne pas s’en servir. Ou peut-être que si
    Nous aurions pu utiliser cela dans la négociation tarifaire, et peut-être aurions-nous dû. Dans les mois qui ont suivi, ils ont quasiment doublé nos prix et n’ont fait preuve d’aucune pitié. Sans parler du fait qu’ils traitaient mal 3 à 8 % des commandes sans les rembourser
    Mais à la place, nous sommes passés à quelques autres services de livraison, qui avaient chacun leurs propres défauts

    • Si tu crains des représailles, tu peux faire un signalement anonyme à l’Autoriteit Persoonsgegevens et les laisser enquêter
      Des captures d’écran montrant que des données personnelles fuient aideraient certainement, et je doute que PostNL ait corrigé ce système catastrophique
      En droit néerlandais, si ton collègue savait qu’il n’était pas censé y accéder et a quand même téléchargé des données au-delà de ce qui était nécessaire pour vérifier l’existence de la fuite, il a commis une infraction
      Si tu avais « utilisé » ces informations dans une négociation, ce serait du chantage, et c’est absolument quelque chose à éviter, surtout face à une entreprise aussi grande et sans véritable concurrent. Ils iraient voir la police, et tu serais fini
  • Ça ressemble à une affaire qui s’est produite là où je vis
    https://www.techdirt.com/2022/02/25/turns-out-it-was-actuall...
    Ce « piratage » consistait à décoder des numéros de sécurité sociale en Base64

    • Le message dans le Base64 encodé de cet article était amusant, et ça m’a rappelé une idée que j’avais eue autrefois
      Imaginez tout ce que des programmeurs paresseux peuvent coller dans des décodeurs Base64 en ligne. Combien de choses doivent se trouver dans ces payloads
      Exploiter un site comme base64decode.org ferait un excellent honeypot
    • Oui, c’est l’affaire à laquelle j’ai immédiatement pensé en voyant ce titre. Pour une raison quelconque, dès que j’ai posté un commentaire à ce sujet, j’ai été immédiatement downvoté
      Si les données avaient réellement été chiffrées, ça aurait été acceptable, mais l’encodage Base64 n’est pas du chiffrement. Base64 se décode très facilement : https://developer.mozilla.org/en-US/docs/Glossary/Base64#the...
  • Beaucoup de « piratages » reviennent à quelqu’un qui laisse sa porte d’entrée grande ouverte
    Si vous laissez votre porte d’entrée grande ouverte et que vous vous faites cambrioler, le public n’aura pas de compassion, mais quand des entreprises économisent de l’argent et ne font rien pour mettre à jour, maintenir et imposer les bonnes pratiques de sécurité de base, les gens crient sur le hacker

    • Ce n’est pas une question de « compassion », c’est une question de crime
      Si tu laisses ta porte d’entrée grande ouverte et que j’entre voler quelque chose, j’ai commis un crime. « La porte était ouverte » n’est pas une excuse
    • Même si tu laisses ta porte d’entrée grande ouverte et que tu te fais cambrioler, ça reste un crime
      Je mérite d’être blâmé, mais la personne qui m’a cambriolé doit aussi être punie comme il se doit
    • Je ne sais pas où tu vis, mais ce n’est pas normal que quelqu’un entre simplement parce que j’ai laissé la porte ouverte
      Même s’il prétendait « vouloir vérifier que tout était en sécurité »
  • N’est-ce pas l’inverse d’une loi du bon Samaritain ? Si vous voyez quelque chose, ne dites rien et ne faites rien
    Si chercher ce genre de problème est illégal, je me demande si, après avoir remarqué qu’il pourrait y avoir un problème, s’arrêter là et vendre à découvert les actions de l’entreprise serait légal

    • Tant que tu n’utilises pas d’informations privilégiées, ce genre de vente à découvert est parfaitement légal. C’est plus ou moins ce que font des sociétés comme Hindenburg Research
      Le problème que tu rencontrerais en essayant vraiment de le faire, c’est que les investisseurs se soucient très peu des problèmes de sécurité. Donc divulguer une vulnérabilité ne ferait probablement pas baisser le cours. En plus, cette entreprise ne semble pas cotée. Je ne parle pas allemand, donc je ne devrais pas en être certain, mais c’est sans doute celle-ci : https://www.modernsolution.net/
    • Tor + Twitter, ça pourrait suffire, si on peut vraiment s’y inscrire via Tor
      Du genre : « Bonjour, j’ai découvert par hasard qu’il y a un mot de passe à l’offset X de cette application. On voit le mot de passe sur cette capture d’écran du dump hexadécimal. Il y a aussi le nom d’utilisateur et l’hôte à côté, ainsi qu’une indication claire qu’il s’agit d’une connexion SQL, mais je ne peux pas vérifier quel est ce mot de passe. Ne vous connectez pas à cette IP avec ce nom d’utilisateur et ce mot de passe. Merci ! »
    • Ce genre de faille peut passer inaperçu pendant des années, donc pour que la vente à découvert réussisse, il faudrait peut-être lui donner un petit coup de pouce
      Et, d’après les entreprises américaines, les grosses fuites de données ou compromissions n’ont souvent pas d’impact négatif sur les finances de l’entreprise
  • L’article 202a du code pénal dit ceci
    https://www.gesetze-im-internet.de/stgb/__202a.html
    En gros, il s’agit du fait « d’obtenir, pour soi-même ou pour autrui, l’accès à des données spécialement protégées contre l’accès non autorisé »
    apparemment, un mot de passe hardcodé dans le client entre aussi dans ce cadre

    • Oui. C’est connu comme une loi vraiment mauvaise, qui n’aurait jamais dû être adoptée au départ
      Mais la réalité est ce qu’elle est, et ils la corrigeront peut-être vers 2050