mercredi 23 mai 2012

Acheter et vendre des exploits - part2

[EDIT 1/06/2012 ajout de 2 liens en conclusion]

Ce post est la suite du message http://exploitability.blogspot.fr/2012/05/acheter-et-vendre-des-exploits-part1.html. Ce second post va reparcourir les sept points soulevées par Charlie Miller en les adaptant à la situation actuelle.

1/ Valeur de l'exploit
Ce point particulier varie légèrement puisqu'une faille corrigée peut conserver de la valeur. On voit apparaître des failles demi-days qui sont des failles de sécurité patchées récemment. Selon le but de l'acheteur (cible localisée ou ratissage large), une exploitation fiable d'une faille corrigée peut avoir un interêt certain. A ce titre, on observe que la faille MS12-020 continue d'être la plus recherchée sur les modules metasploit, alors même que le patch existe, et que la faille n'a toujours pas été prouvée! Toujours chez metasploit, un programme d'achat de fiabilisation de failles de sécurités existe, prouvant ainsi qu'un patch publié n'enterre pas forcément la faille de sécurité associée.

2/ Prix de vente
Depuis 2007, quelques prix ont commencé à apparaître. Certains fiables, d'autres moins. Pour la fiabilité, il suffit de se référer aux programmes de bug bounty des éditeurs (une recherche google donne un grand nombre de sociétés offrant des bug bounty). Différents prix sont proposés:
Dans le moins fiable, il y a les prix du "marché noir". Une grille circule:
(tirée de l'article http://www.forbes.com/sites/andygreenberg/2012/03/23/shopping-for-zero-days-an-price-list-for-hackers-secret-software-exploits/ )
On retrouve peu ou prou les prix du pw2own contest (20000-60000$) et celui de Charlie Miller (80000$). Cette grille à un autre interêt, j'y reviendrai plus tard.

Enfin, il existe entre les deux les sociétés spécialisées (voir point 3/ ) et les prix sont soit absents, soit aux alentours de 10000$ la faille.

Ce qui saute aux yeux, c'est la disparité des tarifs (!). Les bounty sont complètements décorrélés des autres prix. Par exemple pour un bounty chrome à 3000$, on doit trouver une société spécialisée à 10000$, ou le pw2own à 20000 et enfin le marché noir à +80000$ (!).

Enfin, on lit beaucoup d'autres prix, pas toujours réalistes. VUPEN, à la suite de sa victoire au pwn2own indique vouloir conserver une faille Chrome et refuse même le prix de 60000$. Il ajoute qu'il conserverai cette faille même dans l'hypothèse ou Google lui proposerai 1 million de dollars! Plusieurs spéculations sur le prix délirant des failles ont démarré sur internet. Néanmoins Tavis Ormandy fait remarquer "It's common to see the shadier side of infosec exaggerate about big money deals, you can lookup actual revenue data at http://www.infogreffe.fr", ce qui signifie que Vupen surévalue le prix de vente de ses failles, car une faille à 1M lui fait presque 2 ans de chiffre d'affaire. [mais cela semble logique pour un vendeur de gonfler les tarifs :-) et il y a peut-être des clauses de confidentialités sur cette faille par ailleurs.. ]

3/ Trouver l'acheteur
Cela semble beaucoup plus facile qu'en 2007 pour les programmes bounty et les sociétés spécialisées. Je ne les listerai pas toutes ici, on peut en trouver un grand nombre sur ce lien (la liste date de 2009, cela a pu évoluer) ou celui-ci (qui contient aussi une bonne liste de bounty programs).
Pour le marché noir, c'est toujours aussi opaque, mais c'est aussi la définition du marché noir (on connait quelqu'un qui connait quelqu'un de fiable qui connait quelqu'un... :) ).
Il semble donc beaucoup plus simple aujourd'hui de vendre des failles de sécurité, en tout cas à bas prix.

4/ Vérification de l'acheteur
Charlie Miller souhaitait connaître les intentions de l'acheteur avant de vendre. Pour les bug bounty, pas de problèmes moraux à avoir. Pour les sociétés généralistes d'achats, il est fait mention de diffusion contrôlée, limitée, réservée aux spécialistes et chercheurs. Je ne sais pas jusqu'a quel degré de cynisme on peut le lire. Il s'agit généralement de sociétés vendant de l'outil cyber-offensif ou des prestations cyber-offensives. Je regarderai plutôt du côté des clients de ces sociétés, mais il n'y a aucune publicité à ce sujet. Vupen indique travailler avec des gouvernements entre autre.

5/ Démonstration de l'exploit
Actuellement, c'est un jeu de confiance. Pour les bounty ou les sociétés ayant pignon sur rue, c'est le chercheur qui doit fournir la preuve de sa faille avant toute négociation ultérieure. Pour le marché noir, étant opaque, pas d'autres infos. Par contre, il est fait mention d'un tiers de confiance qui met en relation des vendeurs et des acheteurs (moyennant pourcentage toutefois), bien qu'il faille lui fournir les preuves complètes d'un exploit. Il se fait joindre sur twitter et s'appelle thegrugq. Apparemment, il suffit de lui fournir un exploit, et il trouve un vendeur. Toutefois, je n'ai pas trouvé d'information fiable à ce sujet, uniquement des liens citant un autre lien "qui dit que", donc je ne garantirai pas la fiabilité de cette méthode. (d'ailleurs si quelqu'un à des infos fiables là-dessus...)

6/ Propriété intellectuelle de l'exploit
Quelques sociétés d'achat de failles font signer des NDA, mais comme le disait déjà Charlie Miller, il existe toujours pour le vendeur un moyen de vendre deux fois un exploit sans que cela ne soit prouvable par le premier ou le second acheteur. C'est une forme d'honnêteté de la part du vendeur. Parmi les sociétés qui achètent, on trouve d'ailleurs des exigences délirantes comme la fourniture de plusieurs pièces d'identités, plus des adresses postales et numéros de téléphones [Et là, c'est une question de paranoïa ou de cupidité sachant qu'avec tout ce qui est demandé la société peut facilement voler l'identité de ceux qui traitent avec eux...].

Conclusion/
Contrairement à 2007, il est aujourd'hui plus simple de vendre des exploits (à bas prix) à l'aide des bugs bounty. Les sociétés spécialisées ou le marché noir n'offrant pas suffisamment de garanties de sérénité au vendeur.
Le tableau montré plus haut est intéressant à plus d'un titre. La liste des exploits présentée fait immédiatement à une volonté offensive et ciblée. On cherche des failles dans pdf, doc (spear phishing), les navigateurs les plus courants, ou les systèmes (l'élévation de privilège je pense) ou les smartphones qui sont remplis d'informations personnelles à haute valeur (carnet d'adresses, appels émis et reçus, position géographique etc..). Cette liste semble à des antipodes des préoccupations d'un chercheur en sécurité de l'information. Elle semble plutôt construite sur des besoins d'espionnage, ce qui fait penser aux états. On sait que la guerre cyber va devenir de plus en plus importante jusqu'à imaginer des mécanismes de vente d'armes cyber aussi protégées que les armes chimiques ou nucléaire (Kaspersky, Cebit 2012). Comme le fait remarquer Ben Nagy sur une mailing list, vendre des exploits ne fait pas de vous un inconscient qui dégoupille une grenade au milieu d'une foule. Vendre un exploit aujourd'hui, c'est le fournir à un gouvernement qui va s'en servir à la manière d'un sniper dans un but précis et encadré [1] (on retrouve encore cet aspect sécurité informatique et gouvernements..).
Cela tend donc à signifier que la faille qui se vend aujourd'hui est forcément offensive, ciblée vers l'utilisateur final et achetée par les gouvernements. Pour le reste, s'il n'existe pas de bounty, publiez un CVE, ou sur full-disclosure, ça vous apportera au moins la gloire :-) Il est d'ailleurs possible de contacter secunia qui s'occupe de gérer toute la partie ennuyeuse (communication à l'éditeur concerné, prévention des différents CERT, numérotation CVE etc...) et qui conserve votre nom au crédit de la faille! Bon, la rémunération oscille entre rien du tout et un tee-shirt, mais c'est toujours un début :-)

[1] Je ne fais que résumer le propos de Ben Nagy, ce n'est pas une opinion personnelle.

[EDIT 01/06/2012] : Bruce Schneier revient sur le concept de marché de la vente de vulnérabilité : http://www.schneier.com/blog/archives/2012/06/the_vulnerabili.html et fournit un autre tableau qui est un sondage effectué en 2010 auprès des vendeurs de failles de sécurité http://unsecurityresearch.com/index.php?option=com_content&view=article&id=52&Itemid=57
Il ajoute qu'un des problèmes avec des prix d'achats trop élevés réside chez les éditeurs de logiciels. A +100k$ la faille, un programmeur pourrait laisser de manière intentionnelle un léger bug exploitable afin de le revendre sous le manteau un peu plus tard.

5 commentaires:

  1. Même si les valeurs absolues sont discutables, les échelles de prix donnent également une idée de la robustesse intrinsèque de la cible. Tu noteras que Windows est 3x plus cher que Mac OS X :)

    Quant à la liste des logiciels que tu cites, on ne peut rien en conclure.

    Si tu as une faille dans Cisco ASA ou le VPN-SSL de Juniper, je ne suis pas sûr que l'intérêt soit moindre pour un "cyber-attaquant". Ou dans RSA SecurID. Ou dans un PLC Siemens. Si tu n'as pas d'acheteur ta faille vaut zéro. Mais si tu as le "bon" acheteur, alors ...

    RépondreSupprimer
  2. @newsoft:
    les échelles de prix sont évidemment discutables, je n'ai pas la source de ce document, donc cela reste ouvert à toute réfutation. Ceci dit, si windows est 3x plus cher que MacOSX, c'est peut-être dû aussi à sa popularité. Il est plus intéressant de posséder une faille qui va toucher 90% de cibles qu'une autre qui va toucher moins de 5% :-)

    Pour les failles touchant Cisco ASA ou des VPN SSL, je pense qu'il existe trois réponses.

    La première concerne comme tu le dis l'acheteur. Avoir la bonne faille au bon moment avec ce bon acheteur aura des chances d'être rémunérateur. Mais cela reste une conjonction de nombreux évènements distincts difficilement productible à souhait. Je doute qu'un acheteur aille clamer : "j'ai besoin d'une faille sur un cisco ASAP". Il est sûrement plus intéressant pour ce genre d'acheteur de provisionner de la faille windows ou pdf par dizaines et d'en utiliser une au bon moment.

    La seconde réponse concerne cet effet d'opportunités. De fait, la répétition de ventes de failles pdf permet ainsi de dégager un marché, ou tout du moins une fourchette de prix. Des failles dans les gateway SSL ou les cisco ASA, il y en a moins souvent que des failles dans pdf ou windows. Cela ne veut pas dire que cela intéresse personne, mais c'est un épiphénomène ayant une occurence trop faible pour être critérisé. Il est simple de connaître la côte des voitures d'occasion, il est plus compliqué de connaître celle des porte-avions car forcément, ça se vend moins souvent :)

    La troisième réponse est plus liée aux équipements cités. Je pense simplement que ce genre de faille n'intéresse personne. Pourquoi vouloir prendre la main sur un firewall alors qu'il est si simple de pwner la machine de l'utilisateur final? Les firewalls (tout comme les antivirus) n'ont jamais bloqué le duo fatal (mail ciblé piégé) + (exfiltration https), donc pourquoi passer du temps à prendre la main sur un firewall ou un endpoint SSL alors qu'on a un accès direct à l'infrastructure derrière? pwner un firewall n'a aucun interêt en tant que finalité propre (mis à part les effets d'égo). A ce sujet, Joanna Rutkowska dit que "ultimately, all your secrets goes through your computer". Et puisque n'importe quel APT permet de prendre la main sur cet ordinateur, le reste est moins important.
    Pour les securID ou les PLC Siemens, ça va s'internaliser chez l'attaquant, ou alors on retombe dans le point 1 dans lequel la probabilité d'occurence oscille entre le très faible et le pas grand chose.

    En conclusion, je dirais comme toi: "il est difficile de conclure"

    RépondreSupprimer
  3. > Contrairement à 2007, il est aujourd'hui plus simple
    > de vendre des exploits (à bas prix) à l'aide des bugs
    > bounty. Les sociétés spécialisées ou le marché noir
    > n'offrant pas suffisamment de garanties de sérénité
    > au vendeur.

    Une simple question : avez vous déja vendu des bugs par l'une des méthodes que vous évoquez, ou donnez-vous des conseils sur base de recherches google ? Personnellement, je me sens tout aussi serein en traitant avec Hewlett-Packard (ZDI) que je l'aurais été avec Google ou Microsoft. C'est mieux payé, et avec la disclosure policy de ZDI je suis au moins sur que le bug sera corrigé rapidement.

    RépondreSupprimer
  4. Merci Kévin pour ces super articles et le boulot de fond .... :)

    Pour la vente d'exploit il n'y a clairement pas de science exacte par contre on peut distinguer quelques critères de pondération :

    - catégorie d'acheteur potentiel (bb, blackmarket etc.)
    - temps de travail nécessaire au chercheur (qui inclut donc la complexité, ce qui est je l'avoue assez subjectif)
    - popularité / part de marché du ou des système concernés (avec portabilité de l'exploit également)
    - criticité de la vulnérabilité exploitée
    - stabilité de l'exploit
    - disponibilité ou non d'un patch

    bon la liste n'est pas forcément exhaustive ...

    RépondreSupprimer
  5. @sam280: de quelle sérénité parlons nous? celle de voir le bug corrigé, celle de toucher son argent, ou celle de ne pas donner son identité à une société? Certaines demandent deux pièces d'identités, plus téléphone, adresse, etc...

    @GZH: Merci

    RépondreSupprimer