Fermer le menu
 

Interview : Hopper, le logiciel qui renverse la sécurité du Mac

Stéphane Moussie | | 21:33 |  41

Comment on crée, techniquement, un logiciel chargé de désassembler d'autres logiciels ? Est-ce que tu t'appuies sur des technologies existantes ?

Concernant la transformation d’une séquence d’octets en une instruction, je m’appuie sur des bibliothèques libres comme Capstone, dont je fais partie des contributeurs. Mais il faut garder à l’esprit qu’il ne s’agit là que de la tâche la plus simple; la plus-value de Hopper réside dans son analyse automatisée, et sa capacité à reconstruire de la structure à partir des instructions décodées, et pour cela, tout a été écrit à la main. Il s’agit d’une quantité ahurissante d’heuristiques, construites minutieusement, année après année…

Comment gères-tu le développement ?

Au départ, je développais Hopper sur mon temps libre, essentiellement la nuit… Mais étant père de famille, et travaillant toute la journée (chez Arobas Music, où je participais au développement de Guitar Pro pour OS X et iOS, bien loin de l'univers de la sécurité), j’ai dû me résoudre à faire un choix.

Fin 2012, j’ai été contacté par Neil Ticktin et Edward Marczak pour présenter Hopper lors des conférences MacTech à Los Angeles. Ça a été pour moi un déclic : le logiciel intéressait bien plus de monde que je le pensais… je devais tenter ma chance. Alors, j'ai quitté mon emploi pour monter une EURL, Cryptic Apps (comprendront les plus mélomanes d’entre vous), entièrement consacrée à son développement.

Malgré tout, développer seul un logiciel de cette ampleur reste assez compliqué. Le volume de code est devenu très important, et j’ai parfois un peu de mal à trouver l’énergie de continuer. Mais dans le même temps, je suis « seul maître à bord » et j’ai donc une vision claire de l’architecture de l’application, ce qui me permet d’être efficace.

Je pense avoir fait le bon choix, et je ne regrette pas d’avoir tenté l’aventure en tant que développeur indépendant sur Mac. Même si l’aspect administratif de la gestion d'une EURL reste parfois… compliqué. :-)

Est-ce que tu as envisagé employer une personne pour t'épauler ?

Ce n’est pas exclu… pour l’instant, le principal problème reste de sécuriser financièrement ma société. Je m’adresse à un marché de niche, et par conséquent, je n’en vends pas des millions. Malgré tout, les choses se goupillent bien, et quand j’estimerai que la situation est parfaitement saine, j’envisagerai certainement l’embauche.

Écran de démarrage d'un Mac compromis par Thunderstrike, une faille qui permet à un périphérique Thunderbolt malveillant de modifier l'EFI (le programme de démarrage) et qui ouvre la voie à d'autres menaces.

Est-ce que les utilisateurs de Hopper aiguillent en partie son développement ? Est-ce que tu reçois par exemple des demandes de nouvelles fonctions ou d'améliorations ?

Je suis en contact avec plusieurs personnes de la communauté sécurité sur OS X, mais paradoxalement, assez peu de Français… D’ailleurs, je serai à la conférence SSTIC à Rennes en juin.

Beaucoup de ces personnes utilisent Hopper au quotidien et je reçois assez régulièrement des suggestions de fonctionnalités qu’ils aimeraient voir ajoutées à Hopper. J’aime beaucoup ces retours. Ils m’ont permis de transformer Hopper en une solution complète et performante. Ainsi, quand l’idée proposée est en accord avec ma vision du produit, je l’implémente.

Quel regard portes-tu sur la sécurité du Mac aujourd'hui, toi qui baignes dans ce milieu depuis des années ?

J’avoue que la politique d’Apple concernant la sécurité de ses OS m’a toujours un peu fait sourire. :-)

L’argument du système fiable et sans virus a toujours été mis en avant, alors qu’il aurait été plus honnête de dire qu’OS X ne compte presque pas de virus… faute d’intérêt des concepteurs pour la plateforme. Pourquoi investir un tel effort pour, au final, ne toucher qu’un faible pourcentage de la population ?

Notez bien que cet argument est aussi valable pour les autres ; parlez-en donc à un utilisateur de Linux (que je suis aussi) et dans la majorité des cas, il vous rira au nez, en vous disant que son système est sûr. C’est une erreur, il existe aussi des virus sous Linux. Il y a juste peu de monde pour en développer, toujours pour les mêmes raisons…

Parallèlement à la montée en puissance d’iOS, j’ai vu OS X devenir un système à la mode. Alors qu’il y a une dizaine d’années, j’étais le seul dans mon entourage familial à avoir entendu parler du Mac, aujourd’hui, je compte sur les doigts de la main le nombre de personnes restées sous Windows. La plupart des personnes que je connais ont un iPhone et ont fini par troquer leur PC pour un MacBook.

Et petit à petit, j’ai vu mon OS adopter des mesures de sécurité « drastiques », comme le sandboxing. Car forcément, plus il y a de monde, plus la menace virus / trojan / etc. devient grande, et plus Apple a été contrainte à corriger le tir « en urgence ».

Malgré tout, j’ai aussi récemment été en contact avec des gens de chez Apple qui travaillent sur la sécurité d’OS X et iOS. Et le moins que l’on puisse dire, c’est qu’il s’agit de gens très compétents, et qu’ils sauront répondre aux différentes menaces…

Photo de une John Mitchell CC BY

Catégories: 

Les derniers dossiers

Ailleurs sur le Web


41 Commentaires Signaler un abus dans les commentaires

avatar x6tance 19/04/2015 - 21:48 via iGeneration pour iOS

Très bon article

avatar Fahrenheit 19/04/2015 - 21:51 via iGeneration pour iOS

Excellent article !

Mais je me suis toujours demandé pourquoi continuer à fabriquer des virus sur Windows dont les utilisateurs se blindent de plus en plus au lieu de faire un virus sur OSX qui marchera sur 100% des machines ? On parle de millions d'utilisateurs quand même !

avatar oomu 19/04/2015 - 23:48

"Mais je me suis toujours demandé pourquoi continuer à fabriquer des virus sur Windows dont les utilisateurs se blindent de plus en plus"

parce que c'est faux: les utilisateurs ne se blindent pas.

Nombreux sont ceux qui ont un "antivirus" ou un "antispyware" mais qui n'est pas fonctionnel (pas payé, plus d'abonnements, pas de base de virus à jour, etc) ou est lui même un adware (harcèle l'utilisateur de pub)

Les constructeurs enseignent de très mauvaises habitudes aux nouveaux acheteurs de PC.

de fait, faire exécuter un virus par un utilisateur windows n'est pas très cher: c'est RENTABLE.

" au lieu de faire un virus sur OSX qui marchera sur 100% des machines ? On parle de millions d'utilisateurs quand même !"

parce que cela est faux aussi.

Le PC / windows XP (et maintenant 7/8) est beaucoup plus homogène qu'on le pense. Pas besoin d'écrire du CUDA ou de viser une carte son haut de gamme qui n'existe pratiquement plus de toute façon : on a une base matérielle très unifiée et le windows maintient une compatibilité délirante : le virus peut être écrit pour un nombre gigantesques de machines.

Os X est + cher pour faire exécuter du code : l'interface est + claire, les fonctionnalités d'exécutions de code + rare que sous windows.

Mais Apple sera toujours + drastique: les trojans et adware sont développés pour Mac et les sites web de + en + menteurs et truqués pour encourager les gens sur mac à installer N'IMPORTE QUOI.

ET c'est un gros soucis, ça va encourager apple à imposer l'App Store sur OS X. C'est un enjeu de société (politique) qui est en train de se préparer.



avatar bugman 19/04/2015 - 22:27 via iGeneration pour iOS (edité)

Effectivement terriblement efficace pour faire tomber et comprendre quelques protections logiciel. Si ça peut aider Vincent à dormir, cela ne m'empêche pas de payer mes licences logiciels. Excellent produit.

avatar oomu 19/04/2015 - 23:48

à l'inverse il permet aux auteurs de logiciels de trouver leurs failles et les corriger, donc.

avatar bugman 20/04/2015 - 00:41 (edité)

Aussi. Ce n'est pas incompatible. ;)

avatar @MathieuChabod 19/04/2015 - 22:04 via iGeneration pour iOS

Énorme respect pour ce développeur. Bel article.

avatar garnierobin 19/04/2015 - 22:31 via iGeneration pour iOS

Magnifique !

avatar Xap 19/04/2015 - 22:41 via iGeneration pour iOS

Merci pour cet article très intéressant!

avatar jju17 19/04/2015 - 22:52 via iGeneration pour iOS

Merci énormément pour cet article très instructif pour moi!

avatar Zoupinou 19/04/2015 - 23:22 via iGeneration pour iPad

Cryptic en référence aux Residents je suppose. Une bonne idée !

avatar bsr43 19/04/2015 - 23:33 via iGeneration pour iOS

@Zoupinou: tout à fait :)

avatar RoomLight 19/04/2015 - 23:56 via iGeneration pour iOS

Ça peut permettre de retrouver des secrets de fabrication d'un logiciel ? Genre un algorithme secret de Photoshop ?

avatar RyDroid 21/04/2015 - 00:49

Oui.
Mais ce n'est clairement pas le premier logiciel du genre. Par exemple, GDB, qui existe depuis longtemps, permet d'analyser en profondeur un programme même sans annotations de débogage. Il y aussi d'autres logiciels graphiques comme radare. http://linuxfr.org/news/sortie-de-radare2-0-9-6
De plus, on peut obfusquer du code pour le rendre moins lisible avec des opérations inutiles, des opérations inutilement plus compliqués et bien d'autres mécanismes plus sophistiqués. Il me semble que Microsoft utilise assez fortement l'obfuscation sur Skype.

avatar bsr43 21/04/2015 - 07:30 via iGeneration pour iOS

@RyDroid :
Le logiciel GDB n'est pas utilisé pour la même chose, ce n'est pas la même "classe de logiciel" : on utilise GDB pour debugger, ou faire de l'analyse dynamique, pas pour de l'analyse statique, ou alors, c'est qu'on aime se faire du mal :). Quant à l'obfuscation, en effet, beaucoup de développeurs font ça pour compliquer l'analyse statique, moi le premier :) Mais ça n'empêche tout de même pas l'analyse…

avatar Switcher 20/04/2015 - 00:44

J'apprends que la rétro-ingénierie est légale... Moi qui ait toujours cru que ce n'était pas le cas.

Merci pour l'article, on se couche souvent plus cultivé avec MacGé... :)

avatar bsr43 20/04/2015 - 09:07

La rétro-ingénierie est légale, en France, à la condition qu'elle soit faite pour des raisons de recherche en sécurité, ou à des fins d'interopérabilité entre logiciels.

Par exemple, il est tout à fait légal de désassembler Word pour comprendre le format des fichiers DOC, pour ensuite créer un logiciel capable de lire ces fichiers. Il est même légal d'étudier la protection contre la copie d'un logiciel, ou le fonctionnement d'un système de DRM (il y a quand même des subtilités légales dans ce cas précis).

Par contre, dans tous les cas, il interdit de communiquer publiquement le résultat de son travail…

avatar Switcher 21/04/2015 - 00:45 (edité)

Un grand merci pour cet éclaircissement. :)

avatar misstique 20/04/2015 - 00:56

Il ne manque plus que son EURL soit rachetée par Apple et son gérant embauché par Cupertino ! ^^

avatar Ginger bread 20/04/2015 - 01:07 via iGeneration pour iOS

@misstique :
Ca leur ferait pas de mal pr boucher les failles

avatar imnothereee 20/04/2015 - 05:57 via iGeneration pour iOS

Sûrement très intéressant mais pour un néophyte : c'est un peu du charabia

avatar Xalio 20/04/2015 - 07:22 via iGeneration pour iOS

Super! Merci.
Je connaissais Hopper pour m'y être intéressé dans le cadre du boulot. Ce logiciel avait bel et bien l'air d'une référence dans son domaine sur OS X.

avatar san_ 20/04/2015 - 07:48 via iGeneration pour iOS

Passionnant, merci pour cette interview

avatar ZANTAR2054 20/04/2015 - 08:34 via iGeneration pour iOS

merci, article passionnant

avatar Abudah 20/04/2015 - 09:00 via iGeneration pour iOS

Bravo, cet article est au top ! :-)

Pages