La politique de divulgation de vulnérabilités vue par un hacker éthique

Une politique de divulgation des vulnérabilités (VDP) aide les organisations à être plus sécurisées. Pourtant, trop peu de personnes comprennent encore ce qu’est une VDP et pourquoi chaque organisation en a besoin. Nous avons discuté avec SaxX, hacker éthique français, afin qu’il nous partage son point de vue et son expérience en matière de divulgation de vulnérabilités.

Bonjour Saxx, est-ce que tu peux te présenter rapidement ?

Je m’appelle Clément Domingo alias Saxx. Je suis ingénieur en cybersécurité, chasseur de bugs et je fais partie de l’équipe de CTF Hexpresso.

J’ai commencé à faire du Bug Bounty il y a maintenant quatre ans. Je n’en avais jamais entendu parler avant de rencontrer Freeman et Onemore, les co-fondateurs de YesWeHack, à « La Nuit du Hack ». Après de nombreuses discussions, une chose en entraînant une autre, ils m’ont finalement dit : « Hey, pourquoi tu ne ferais pas du Bug Bounty ? ». Je suis rapidement tombé dedans et j’ai beaucoup chassé pendant trois ans. Depuis l’année dernière, je lève un peu le pied pour m’impliquer dans d’autres projets.

Cela dit, je vais m’y remettre un peu car je n’aime pas me voir 4ème au classement sur la plateforme ! (rires)

Consultez le classement général de YesWeHack ici.

Aujourd’hui, nous allons parler de politique de divulgation de vulnérabilités (VDP). Pourrais-tu nous expliquer avec tes mots ce qu’est une VDP ?

Tout d’abord, une VDP n’a rien à voir avec le Bug Bounty. Lorsque nous parlons de VDP, le mieux est même de bannir le mot Bug Bounty.

Une VDP, pour l’expliquer simplement, est un canal de communication qu’une organisation peut mettre en place sur son site web. Il peut s’agir d’un simple fichier texte ou d’une page web plus détaillée. C’est via ce canal que des vulnérabilités peuvent être notifiées.

Vous avez probablement déjà vu de nombreux articles dans les médias relatant toujours la même histoire : “L’entreprise X a été piratée. Cependant, nous avons appris qu’il y a 6 mois, un chercheur en cybersécurité avait tenté de contacter cette entreprise pour lui signaler la vulnérabilité critique exploitée aujourd’hui par des hackers malveillants. Malheureusement, il n’a jamais réussi à entrer en contact avec la bonne personne au sein de l’entreprise”.

En résumé, une politique de divulgation de vulnérabilités est un canal de communication en direction des chercheurs qui pourraient souhaiter remonter des vulnérabilités.

C’est clair, merci. Cela dit, beaucoup de personnes confondent le Bug Bounty et la VDP. Peux-tu, toujours avec tes mots, expliquer la différence entre ces deux approches ?

La première chose, c’est la dimension financière. Quand on parle de Bug Bounty, on fait automatiquement le parallèle avec l’argent. Le Bug Bounty, c’est une question d’argent, de primes (le bounty).

Au contraire, avec la VDP, il n’y a pas de récompense financière. Lorsque vous signalez une vulnérabilité dans le cadre d’une VDP, c’est que votre conscience civique et morale vous pousse à le faire. Par conséquent, vous n’attendez aucune récompense, vous le faites uniquement pour que l’entreprise puisse prendre conscience de la vulnérabilité, la qualifier et la corriger le plus rapidement possible.

Ainsi, la différence majeure entre la VDP et le Bug Bounty est une question d’argent !

Une autre différence est le temps investi lorsqu’on fait du Bug Bounty. Vous êtes invité à participer à un programme par une plateforme et vous allez y consacrer du temps pour trouver une vulnérabilité.

La VDP est plus une question de coïncidence, un “one-shot deal”. Vous utilisez un produit sur Internet, dans votre vie quotidienne et vous voyez quelque chose de suspect. En tant que chercheur en cybersécurité, vous allez vouloir aller plus loin, étudier cette vulnérabilité pour comprendre son impact potentiel. Et puis, si cette vulnérabilité est avérée, et qu’elle est critique pour l’entreprise mais aussi pour vous puisque vous utilisez ce produit, vous allez essayer de prendre contact avec eux pour leur signaler.


Nous avons réalisé une courte vidéo pour expliquer clairement les différences entre le Bug Bounty et la VDP.
Vous pouvez la visionner ici.

Donc une VDP, comme tu l’as dit, est un canal qu’une organisation met en place pour recevoir des informations de la part de personnes de bonne foi. On pourrait donc penser que toutes les entreprises ont une VDP ?

C’est loin d’être le cas, j’en ai bien peur. Dans un monde idéal, oui, toutes les entreprises (des petites aux multinationales) en auraient une. Mais, en fait, aujourd’hui en France et dans le monde entier, énormément d’entreprises n’ont absolument pas de VDP.

Fun fact, j’ai jeté un coup d’œil sur les 30 premiers sites Alexa en France avant notre appel : seules trois d’entre elles ont une VDP, c’est dire. Et sur les 30, il y en a environ huit ou neuf qui ont un programme de Bug Bounty. Par conséquent, si on étend cela à un secteur d’activité, à une ville ou à un pays, on se rend compte qu’il reste beaucoup à faire.

Pourquoi penses-tu que la majorité des entreprises n’ont pas de VDP ? Peut-être, simplement, elles ignorent ce que c’est ?

Le premier point, comme tu le mentionnes, est que très peu d’entreprises savent exactement ce qu’est une VDP. Et, plus surprenant encore, seuls quelques chercheurs savent exactement ce que c’est. Il y a beaucoup de confusion à ce sujet.

Cette confusion est souvent causée par la publication de programmes de Bug Bounty à côté de VDP par certaines plateformes de Bug Bounty. De temps en temps, on peut voir sur Twitter quelques « conflits » entre chercheurs et entreprises : des chercheurs se plaignent de n’avoir reçu qu’un t-shirt en récompense pour une vulnérabilité alors qu’ils s’attendaient à recevoir une prime. Il y a un énorme amalgame.

Il n’y a pas si longtemps, par exemple, une société de boissons énergisantes a lancé un programme wild card via une plateforme de Bug Bounty. Il s’agissait d’un énorme périmètre et d’une grande entreprise donc, naturellement, on aurait pu penser qu’il y aurait des récompenses conséquentes en jeu. Et pourtant, non, il s’agissait d’une VDP « déguisée », sans récompense. Bon nombre de chercheurs ont été trompés et ont été un peu contrariés à cause de cela. Naturellement, puisqu’ils ont donné de leur temps afin de trouver des vulnérabilités pour ne rien recevoir en retour…

Il y a un réel manque de communication, de visibilité et de transparence sur la VDP. Nous devons encore faire beaucoup d’éducation sur le sujet et faire comprendre à chaque partie, entreprises et chasseurs, ce qu’est la VDP.

Tu disais plus tôt que remonter une vulnérabilité identifiée en utilisant un service est un devoir civique. Dis-nous ce que tu fais dans un tel cas.

La première chose que je fais est d’aller directement sur le site web, essayer de voir s’il y a un security.txt ou une mention « vous pouvez nous contacter ici ».

S’il n’y a pas d’information, je vais sur Twitter et je leur envoie un MP (message privé). Dans la moitié des cas, j’obtiens une réponse. Lorsque je n’ai pas de réponse, la troisième étape consiste à activer mon réseau pour essayer d’obtenir des contacts dans l’entreprise. Et si je n’ai toujours pas de résultats, je poste un message sur Twitter.

Je vais te raconter quelques anecdotes qui me sont arrivées ces derniers mois pour que tu comprennes mieux toute l’expérience.

Le premier exemple date du début du premier confinement (mi-mars 2020). Je suis en train de développer un outil OSINT et j’ai essayé de le faire fonctionner sur un gouvernement d’Afrique de l’Ouest. Très vite, je suis tombé sur quelque chose d’assez important. Au bout de 30 minutes, avec un petit script en Python, j’ai eu accès à toutes les informations de ce service qui fournissait : nom, prénom, adresse électronique, adresse postale, numéro de carte d’identité nationale – en somme, des données sensibles.

J’ai trouvé une adresse e-mail générique sur leur site officiel, j’ai donc envoyé un message. Je n’ai jamais eu de réponse.

Ensuite, j’ai activé mon réseau en envoyant des messages à quelques groupes auxquels j’appartiens. J’ai eu beaucoup de retours, mais on m’a donné des contacts d’ingénieurs qui ne savaient eux-mêmes pas à qui s’adresser en interne. Il y avait un réel manque de visibilité sur les personnes à contacter au sein de l’organisation.

La dernière étape a consisté à poster un message sur Twitter. J’ai reçu beaucoup de réponses, mais surtout de personnes qui voulaient juste savoir de quoi il s’agissait. Dans ces cas-là, je ne donne aucune information pour éviter de compromettre l’organisation concernée.

Aujourd’hui, plus de 6 mois après mon premier message, je n’ai pas eu de contact « sérieux ». La vulnérabilité est toujours là. C’est une expérience assez folle et négative qui montre que même les institutions gouvernementales sont loin du compte. Ici, c’était l’Afrique, c’est un autre sujet, mais cet exemple mérite d’être mentionné.

La deuxième expérience est un peu plus drôle et j’ai été agréablement surpris. J’avais été invité par un ami à participer à une cagnotte en ligne pour acheter un cadeau pour un autre ami. Avant de donner mes coordonnées bancaires, j’ai jeté un coup d’œil à l’application. Très vite, je me suis rendu compte qu’avec une petite vulnérabilité, je pouvais avoir accès aux contacts de toutes les personnes ayant participé à cette cagnotte.

Alors, la première chose que j’ai faite : je suis allé sur Twitter et j’ai envoyé un MP à l’entreprise. Les gars m’ont contacté assez rapidement et, surtout, m’ont mis en contact avec le chef de leur équipe cyber. Je lui ai parlé au téléphone pour lui expliquer mes découvertes. Le lendemain, ils m’ont envoyé un bon d’achat pour me remercier, car la vulnérabilité que j’avais trouvée était assez critique. L’entreprise n’avait pas de programme de Bug Bounty ou de VDP mais, en tout cas, leur compte Twitter était assez efficace car ils ont pu rediriger l’information vers la bonne personne assez rapidement.


Notre Livre Blanc dédié vous guide : vous y trouverez des conseils et recommendations des meilleurs outils.

Et la dernière anecdote concerne une ville, Rennes. De nouveau, je voulais tester l’outil que je développe. Après l’avoir lancé, j’ai rapidement été interpellé par un sous-domaine sur le site d’un lycée. J’ai réalisé que je pouvais réinstaller le site, et en ce faisant, mettre un webshell qui m’aurait permis de mettre un pied dans leur serveur. À partir de leur serveur, j’aurais pu rebondir sur le site principal, avec tout ce que cela implique.

Donc, toujours pareil, je suis allé sur le site du lycée, où il n’y avait pas de mention permettant de signaler une vulnérabilité. J’ai trouvé un numéro de téléphone et j’ai essayé d’appeler, d’autant plus que la vulnérabilité était critique. Je suis tombé sur la messagerie, j’ai laissé deux messages mais je n’ai pas eu de réponse. J’ai également envoyé un message à l’adresse e-mail générique. Pas de réponse.

Comme il s’agit d’une institution religieuse et que j’ai des connaissances dans cette communauté, j’ai rapidement reçu quelques contacts, dont celui du directeur. Malgré les efforts, mais nous n’avons pas réussis à échanger.

Le lendemain, comme j’avais entretemps posté un message sur Twitter, on m’a envoyé le numéro de l’administrateur de l’école. Le gars avait déjà été alerté par d’autres personnes (je devais être la cinquième personne à l’appeler). À ce moment-là, j’ai halluciné : le type n’en avait rien à faire. Je pense avant tout qu’il ne savait pas de quoi nous parlions et, surtout, qu’il n’était pas responsable de ce site. C’était un autre prestataire qui devait s’en occuper.

Fin mot de cette histoire improbable : un journaliste que je connais a écrit un article à ce sujet et a finalement réussi à faire parvenir l’information aux bonnes personnes. Après cet article, la vulnérabilité a été prise en compte et corrigée…

Cela doit être très frustrant.

Absolument. J’ai parfois l’impression que les organisations n’ont délibérément pas de point de contact pour les chercheurs, parce qu’elles ont toujours cette vieille peur de se retrouver en face de personnes qui vont se montrer menaçantes.

Cependant, de nos jours, il y a beaucoup de chercheurs de bonne foi qui veulent simplement aider ces organisations à se protéger.

La patience a ses limites. En tant que chercheur, vous devez passer des heures, voire des jours, à trouver le bon contact, qui devra ensuite accepter de vous écouter et de prendre vos remarques en considération. C’est très frustrant et, au bout du compte, cela ne donne pas vraiment envie de les aider.

As-tu déjà renoncé ?

Oui, clairement, cela m’est arrivé plus d’une fois. Je m’engage seulement dans ces démarches lorsque je trouve quelque chose de très critique. Je ne vais pas déranger les gens pour quelque chose de mineur. Mais oui, j’ai parfois abandonné au fil des années parce que je n’ai jamais eu de retour.

Quelle est ton approche lorsque tu cherches des vulnérabilités ? Est-ce que tu es vraiment à leur recherche ou bien tu « tombes » dessus par hasard ?

Pour les deux exemples que j’ai donnés concernant le gouvernement et la ville, ce n’était pas vraiment par pure coïncidence puisque j’avais lancé un outil.

Mais dans ma vie quotidienne, dès que j’utilise une plateforme de paiement par exemple, je regarde rapidement ce qu’il y a derrière. Je lance un proxy et je vois les demandes, je vois si je peux ajouter une demande par exemple.

Imaginons que j’aie un montant de 300 euros à payer sur un site web. Si je comprends comment le code est construit et que j’essaie de mettre 5 euros au lieu de 300, est-ce que ça va fonctionner ? Je fais cela par curiosité. Dans 60 à 80 % des cas, ça fonctionne. Et dans ces cas-là, on a le choix entre agir honnêtement comme je le fais et essayer d’alerter l’entreprise, ou profiter de la vulnérabilité.

En fait, je suis un peu comme un taureau qui voit du rouge. Si je vois un peu de rouge, quelque chose qui attire mon attention, je me précipite dessus. En tant que chercheur, je veux voir jusqu’où je peux aller, c’est un petit peu comme un jeu.

As-tu déjà eu des problèmes après avoir contacté une entreprise ?

Non, jamais. J’ai ma propre théorie sur le sujet : je pense qu’il y a différentes façons de signaler une vulnérabilité. Imaginez que vous trouviez une vulnérabilité sur n’importe quel site web. Vous pouvez être très arrogant et dire : « J’ai trouvé une vulnérabilité, votre site n’est pas très sécurisé, c’est vraiment de la m**** ». Vous pouvez aussi adopter une posture professionnelle et aidante en faisant comprendre à votre interlocuteur qu’une vulnérabilité peut arriver à n’importe qui, même aux meilleurs. Et vous pouvez expliquer que vous en avez trouvé une et que vous êtes prêt à l’aider à comprendre le problème et à le résoudre.

De nombreux chercheurs ont peur de signaler des vulnérabilités aux entreprises par crainte d’avoir des problèmes par la suite. Je pense qu’une fois que l’image des hackers aura été démystifiée et que les entreprises auront compris qu’il n’y a pas que des personnes malveillantes dans la communauté des hackers, les choses iront beaucoup mieux.

Aujourd’hui, il y a encore beaucoup de gens qui trouvent des vulnérabilités mais n’osent pas franchir le pas, alors ils les gardent pour eux… Et, malheureusement, cela peut être vraiment dommageable pour les entreprises si une personne mal intentionnée les trouve.

Merci SaxX!

Vous souhaitez plus d’informations sur comment YesWeHack peut vous aider à mettre en place une VDP ? Contactez nous ici.