Un serveur mal sécurisé a le même effet sur les hackers qu’un pot de miel pour les ours : la tentation est trop forte et les pirates sont donc iné­vi­ta­ble­ment attirés. C’est pourquoi le symbole du pot de miel s’applique également pour les pirates du Web. Le terme « honeypot » (pot de miel en français) est dans le jargon in­for­ma­tique un mécanisme de sécurité, il permet aux ad­mi­nis­tra­teurs de tromper les pirates et ainsi de déjouer des cy­be­rat­taques. Un honeypot simule des services de réseau ou des pro­grammes d’ap­pli­ca­tion pour attirer les at­ta­quants et ainsi protéger le système de pro­duc­tion de dommages. Dans la pratique, les uti­li­sa­teurs utilisent les tech­no­lo­gies côté serveur et côté client pour con­fi­gu­rer les honeypots.

  • Honeypot côté serveur : l’idée de base d’un honeypot côté serveur est d’attirer les at­ta­quants dans des zones isolées d’un système in­for­ma­tique et de les éloigner ainsi des com­po­sants critiques du réseau. De plus, un honeypot permet de suivre les actions, d’étudier un attaquant. Pour cela, il simule une ap­pli­ca­tion serveur qui mobilise un ou plusieurs services sur le réseau, comme par exemple un serveur Web. Si un attaquant est trompé par une manœuvre de diversion et commence une tentative d’attaque, le honeypot capture et en­re­gistre toutes les activités, alerte et engage des contres mesures. Dans le meilleur des cas, un tel serveur « pot de miel » fournit des in­for­ma­tions sur le dé­rou­le­ment des attaques manuelles ou au­to­ma­tiques. Ainsi, les ad­mi­nis­tra­teurs ac­quiè­rent des données qui per­met­tent de mieux protéger le système de pro­duc­tion contre les futures attaques.
  • Honeypot côté client : un honeypot côté client imite un logiciel d’ap­pli­ca­tion qui recourt aux services du serveur. Le premier exemple de parade est la si­mu­la­tion d’un na­vi­ga­teur qui visite spé­ci­fi­que­ment des pages Internet dan­ge­reuses afin de collecter des données sur les risques de sécurité. Si depuis l’une de ces pages Web une attaque est lancée contre le na­vi­ga­teur ou les plugins du na­vi­ga­teur, alors le processus de l’opération (l’attaque) est consigné. Une analyse des données re­cueil­lies est par la suite utilisée pour améliorer le logiciel simulé.

Les instituts de recherche, les autorités et les mi­li­taires utilisent notamment cette recherche de défense active pour re­cueil­lir des in­for­ma­tions sur les nouveaux modèles d’attaques et de les rendre ainsi moins dangereux pour la com­mu­nauté Internet. Au niveau des en­tre­prises, les mé­ca­nismes de sécurité de ce type sont prin­ci­pa­le­ment utilisés pour protéger le réseau d’en­tre­prise. Pour cela, les ad­mi­nis­tra­teurs ins­tal­lent des honeypots dans les zones du réseau qui ne sont pas traitées par le fonc­tion­ne­ment normal et ne four­nis­sent de services ni aux employés ni aux clients. Le but est bien de leurrer les at­ta­quants qui re­cherchent la vul­né­ra­bi­lité du réseau par des failles de sécurité fictives dans des zones sûres. Tout accès à un tel système qui n’est pas utilisé nor­ma­le­ment est donc considéré comme une attaque et est alors surveillé et analysé.

Si plusieurs pots de miel sont joints ensemble pour simuler un réseau complet, offrant ainsi aux pirates une cible très at­trac­tive, on parle alors de « Honeynet » (réseau de miel).

Comment mettre en places des honeypots ?

Pour im­plé­men­ter un honeypot, les ad­mi­nis­tra­teurs ont prin­ci­pa­le­ment deux choix : soit le pot de miel est réalisé sur un système physique ou bien il est mis en œuvre sur la base d’un logiciel de vir­tua­li­sa­tion.

  • Honeypot physique : un pot de miel physique est un or­di­na­teur autonome qui est connectée à un réseau avec sa propre adresse.
  • Honeypot virtuel : un pot de miel virtuel est un système logique, qui reçoit des res­sources d’un or­di­na­teur physique via un logiciel de vir­tua­li­sa­tion.

Dans les deux cas, le honeypot est isolé. Un attaquant est incapable d’accéder au système en pro­duc­tion à partir du système de diversion.

Clas­si­fi­ca­tion des honeypots.

Le but de cette méthode de défense est de rester in­dé­tec­table. Beaucoup plus d’in­for­ma­tions sur la stratégie et le com­por­te­ment des pirates peuvent être re­cueil­lies par le système lorsqu’un attaquant est leurré plusieurs fois. Un des critères im­por­tants pour classer les pots de miel est le degré d’in­te­rac­ti­vité avec l’attaquant. Dans ce contexte, on distingue aussi bien à la fois le côté serveur et le côté client qu’un honeypot à faible in­te­rac­tion d’un pot de miel à forte in­te­rac­tion.

  • Honeypot à faible in­te­rac­tion : les pots de miel avec un faible degré d’in­te­rac­tion sont basés sur l’imitation de systèmes réels ou d’ap­pli­ca­tions, par l’in­ter­mé­diaire de script. Dans ce processus, les services et les fonctions sont gé­né­ra­le­ment simulés. Ainsi le hacker n’a pas d’in­te­rac­tion avec le système d’ex­ploi­ta­tion, même s’il en a l’im­pres­sion. Les risques sont donc limités au maximum.
  • Honeypot à forte in­te­rac­tion : des pots de miel avec un fort degré d’in­te­rac­ti­vité sont gé­né­ra­le­ment des systèmes réels, qui offrent des services de serveur et sont par con­sé­quent sécurisés et sur­veil­lés. Cette méthode repose donc sur la pos­si­bi­lité par le hacker de rentrer dans le système. Si un honeypot à in­te­rac­tion élevée n’est pas suf­fi­sam­ment protégé, il existe alors le risque qu’un attaquant prenne le relais, infiltre le système à protéger ou lance des attaques sur d’autres serveurs du réseau.

Honeypot à faible in­te­rac­tion s’exécutant côté serveur

La forme le plus basique d’un honeypot côté serveur est sim­ple­ment une seule ap­pli­ca­tion qui simule les services réseau, y compris la con­fi­gu­ra­tion de connexion. Avec cette méthode peu de moyens d’in­te­rac­tion sont offerts à un attaquant, les in­for­ma­tions obtenues sont donc re­la­ti­ve­ment faibles. Enfin les honeypots avec un faible degré d’in­te­rac­ti­vité sont gé­né­ra­le­ment assez ra­pi­de­ment démasqués par les pirates. Les mé­ca­nismes de ce type sont donc prin­ci­pa­le­ment utilisés pour détecter et en­re­gis­trer des attaques au­to­ma­ti­sés venant de logiciels mal­veil­lants. Une solution open source bien connue qui vous permet de con­fi­gu­rer les honeypots à faible in­te­rac­tion s’exécutant côté serveur est Honeyd.

  • Honeyd : le logiciel Honeyd créé par Niels Provos et publié sous licence GPL permet aux ad­mi­nis­tra­teurs de créer dif­fé­rents serveurs virtuels sur un réseau in­for­ma­tique. Ces or­di­na­teurs peuvent être con­fi­gu­rés pour refléter dif­fé­rents types de serveurs afin que tout un système, y compris la pile de protocole TCP/IP, soit simulé. Toutefois le logiciel fait partie des honeypots à faible in­te­rac­tion puisque Honeyd ne simule pas tous les pa­ra­mètres du système et offre donc peu d’in­te­rac­tions et peut être assez ra­pi­de­ment démasqué par les hackers. Enfin, le logiciel ne montre plus de dé­ve­lop­pe­ment visible depuis 2008.

Honeypot à faible in­te­rac­tion s’exécutant côté client

Des pots de miel côté client à faible in­te­rac­tion (également appelés « ho­ney­clients ») sont des pro­grammes qui peuvent être utilisés pour simuler dif­fé­rents na­vi­ga­teurs. Cela permet aux uti­li­sa­teurs de visiter des pages Internet, de détecter et d’en­re­gis­trer des attaques sur le na­vi­ga­teur Web fictif. Les ho­ney­clients open source à faible in­te­rac­tion les plus connus sont HoneyC, Monkey-Spider et PhoneyC.

  • HoneyC : l’ho­ney­client à faible in­te­rac­tion HoneyC permet aux uti­li­sa­teurs d’iden­ti­fier les serveurs dangereux sur Internet. Au lieu d’un système d’ex­ploi­ta­tion en­tiè­re­ment fonc­tion­nel et d’un logiciel client cor­res­pon­dant, HoneyC utilise un client simulé qui examine les réponses du serveur au contenu mal­veil­lant. Dans la structure de base, le logiciel se compose de trois éléments : les moteurs  « visitor », « queue » et « analysis ». Le moteur visiteur est res­pon­sable de l’in­te­rac­tion avec le serveur et simule divers modules de na­vi­ga­teurs Web. Le moteur file d’attente crée une liste de serveurs qui seront traitées par le moteur visiteur. Une éva­lua­tion de l’in­te­rac­tion avec le serveur Web est effectuée par le moteur analyse, qui après chaque visite contrôle si les règles de sécurité du logiciel ont été en­freintes.
  • Monkey-Spider : Monkey-Spider est un robot d’in­dexa­tion Web qui peut être utilisé comme honeypot côté client à faible in­te­rac­tion. Pour cela, le logiciel analyse les sites Internet et recherche des codes mal­veil­lants qui peuvent cons­ti­tuer une menace pour un na­vi­ga­teur Web.
  • PhoneyC : PhoneyC est un ho­ney­client écrit avec le langage de pro­gram­ma­tion objet Python, qui permet d’imiter divers na­vi­ga­teurs Web pour re­cher­cher des sites internet avec du contenu mal­veil­lant. Le logiciel est capable de traiter des langages de script tel que Ja­vaS­cript ou VBSscript et prend en charge les fonctions du code im­pé­né­trable pour démêler des codes mal­veil­lants masqués. Enfin, PhoneyC supporte plusieurs méthodes pour analyser des sites Internet y compris le logiciel anti-virus open source ClamAV.

Honeypot à forte in­te­rac­tion s’exécutant côté serveur

Les ad­mi­nis­tra­teurs qui sou­hai­tent con­fi­gu­rer des pots de miel côté serveur avec de nom­breuses options d’in­te­rac­tion s’appuient gé­né­ra­le­ment sur des serveurs fonc­tion­nels con­fi­gu­rés comme des systèmes de diversion. Ils peuvent être réalisés soit sur matériel réel soit sur des en­vi­ron­ne­ments virtuels. Les honeypots à faible in­te­rac­tion sont prin­ci­pa­le­ment utilisés pour iden­ti­fier et analyser les attaques au­to­ma­tiques, alors que les honeypots à forte in­te­rac­tion sont eux gé­né­ra­le­ment pour cibler les attaques manuelles. 

Un honeypot du côté serveur est pro­met­teur quand une cible d’attaque par­ti­cu­liè­re­ment at­trac­tive avec un fort degré d’in­te­rac­ti­vité est offerte aux hackers. Toutefois, l’effort pour mettre en place un tel honeypot est sen­si­ble­ment supérieur aux solutions lo­gi­cielles qui imitent le fonc­tion­ne­ment des serveurs. De plus, si un serveur réel est utilisé comme pot de miel, le risque qu’un attaquant utilise le système infiltré à la suite d’une ef­frac­tion réussie et l’emploie comme point de départ pour lancer de nouvelles attaques sur d’autres serveurs Internet existe. Cela peut en effet entraîner des con­sé­quences ju­di­caires puisqu’un opérateur d’un serveur est res­pon­sable de toutes les activités qui en pro­vien­nent.

Pour sur­veil­ler les attaques de pirates sur un serveur configuré comme honeypot, des outils de sur­veil­lance spé­ci­fiques comme Sebek sont utilisés. Un honeypot à forte in­te­rac­tion peut être réalisé avec le logiciel Argos.

  • Sebek : l’outil de collecte de données Sebek est utilisé pour des honeypots à forte in­te­rac­tion pour sur­veil­ler les pirates et re­cueil­lir des in­for­ma­tions sur les activités critiques en matière de sécurité. Dans la structure de base, le logiciel se compose de deux éléments : le client s’exécute sur l’honeypot et en­re­gistre toutes les activités des pirates comme les entrées, les données de té­lé­char­ge­ment ou les mots de passe pour les trans­mettre à un serveur de protocole qui peut fonc­tion­ner sur un système in­dé­pen­dant.
  • Argos : l’en­vi­ron­ne­ment honeypot à forte in­te­rac­tion Argos est basé sur un si­mu­la­teur de matériel QEMU modifié. Le logiciel prend en charge plusieurs systèmes d’ex­ploi­ta­tion de clients qui s’exécutent sur une machine virtuelle et re­pré­sen­tent le honeypot. Pour détecter et en­re­gis­trer les attaques, Argos ne nécessite aucun logiciel de sur­veil­lance sup­plé­men­taire. Le trafic entrant qui passe par la carte réseau vers l’honeypot est au­to­ma­ti­que­ment marqué comme « Tainted » (contaminé) et surveillé. Il en va de même pour les données produites de  données con­ta­mi­nées. En raison de l’effort de calcul sup­plé­men­taire pour imiter le système d’ex­ploi­ta­tion et l’analyse de données, Argos est sig­ni­fi­ca­ti­ve­ment plus lent que les systèmes en pro­duc­tion sur du matériel com­pa­rable.

Honeypot à forte in­te­rac­tion s’exécutant côté client

Les honeypots à forte in­te­rac­tion sont des solutions lo­gi­cielles qui s’exécutent sur des systèmes d’ex­ploi­ta­tion réels et utilisent des na­vi­ga­teurs Web réguliers pour en­re­gis­trer les attaques venant de serveurs sur Internet. Les outils connus sont Capture-HPC et mapWOC.

  • Capture-HPC : l’honeypot à forte in­te­rac­tion côté client Capture-HPC utilise une ar­chi­tec­ture client-serveur dans laquelle un serveur définit les sites Web à inspecter et contrôle les divers clients. Ils appellent les pages stockées et renvoient les données de résultat sur le serveur. Les clients po­ten­tiels sont dif­fé­rents na­vi­ga­teurs Web, ap­pli­ca­tions bu­reau­tiques, lecteurs PDF ou Media-Player.
  • mapWOC : le logiciel libre mapWOC (abré­via­tion de massive automated passive Web Ob­ser­va­tion Center) charge également des pages Web avec des na­vi­ga­teurs réels. Ces derniers s’exécutent dans une machine virtuelle dont le trafic avec les clients est cons­tam­ment surveillé pour en­re­gis­trer et analyser les attaques comme les Drive-by-Downloads. mapWOC utilise comme composant de base le système hôte Debian Squeeze, KVM pour la vir­tua­li­sa­tion et ClamAV pour enquêter sur les logiciels mal­veil­lants.

Avantages et in­con­vé­nients des honeypots

Un honeypot est gé­né­ra­le­ment utilisé comme com­plé­ment à d’autres com­po­sants de sécurité in­for­ma­tique comme le système de détection d’intrusion (IDS) et les pare-feu, four­nis­sant ainsi une fonction de contrôle ad­di­tion­nelle. Un avantage majeur de l’uti­li­sa­tion d’un honeypot est l’obtention de données très per­ti­nentes. Comme un honeypot en fonc­tion­ne­ment normal n’assume aucune fonction, chaque activité dans ce système de contrôle re­pré­sente une attaque po­ten­tielle. Toutes les données qui sont en­re­gis­trées par le pot de miel sont donc per­ti­nentes pour la sécurité. Toutefois si les systèmes en pro­duc­tion sont sur­veil­lés, l’analyse des données nécessite alors une étape sup­plé­men­taire dans laquelle les données relatives à l’attaque sont filtrées de l’ensemble des données.

Cependant, il faut bien se rappeler qu’un honeypot ne fournit pas toujours des in­for­ma­tions ex­ploi­tables. Si l’appât est trop peu attractif ou difficile à atteindre, le risque est de n’avoir aucune attaque et donc un retour nul sur les in­ves­tis­se­ments fi­nan­ciers et humains pour la mise en place de ce système de sécurité.

Le potentiel gain de données per­ti­nentes via les honeypots pour les en­tre­prises se ca­rac­té­rise aussi par un risque sup­plé­men­taire. Comme le système de diversion leurre ponc­tuel­le­ment les pirates, il existe toute de même un risque que ces derniers causent plus de dégâts sur le réseau lors d’une ef­frac­tion du honeypot. Toutefois, vous pouvez réduire ce risque par une sé­pa­ra­tion maximale entre les systèmes en pro­duc­tion et l’honeypot ainsi qu’en main­te­nant une sur­veil­lance constante de toutes les activités dans les systèmes de leurre. Il est enfin important de limiter les dégâts à l’extérieur. Pour empêcher l’uti­li­sa­tion d’un honeypot comme point de départ d’attaques de hackers sur d’autres systèmes, les con­nexions sortantes doivent être réduites à son minimum. 

Équiper un honeypot côté serveur à forte in­te­rac­tion avec les mêmes systèmes de sécurité que le système en pro­duc­tion peut être utile pour s’assurer de la qualité de la sécurité. Dans ce cas, les données en­re­gis­trées per­met­tent des con­clu­sions directes sur l’ef­fi­ca­cité du système de sécurité. Si une récession est en­re­gis­trée au niveau du honeypot, il est alors né­ces­saire de vérifier si le système en pro­duc­tion a été infiltré. En outre, les deux systèmes doivent être adaptés pour prévenir les attaques futures sur le même modèle.

Pa­ren­thèse : les honeypots et le cadre juridique

Dans le passé, les en­quê­teurs ont utilisé le principe des honeypots pour confondre et attraper des criminels à la recherche de contenus illégaux. Le recours aux honeypots pour lutter notamment contre la dis­tri­bu­tion de contenus protégés par le droit d’auteur est également en débat. Par exemple, selon un article du Cnet le FBI aurait en 2006 placé des liens sur des forums Internet suggérant de la pé­do­por­no­gra­phie. Les visiteurs de ces liens furent ainsi inquiétés par la justice amé­ri­caine. Plus récemment, en 2014, et toujours à la suite d’un système mis en place par le FBI utilisant des honeypots et en col­la­bo­ra­tion avec l’OCLCTIC (Office central de lutte contre la cri­mi­na­lité liée aux tech­no­lo­gies de l’in­for­ma­tion et de la com­mu­ni­ca­tion) : un uti­li­sa­teur français fut incriminé pour fraude à la carte bancaire sur Internet et la cour de cassation de Toulouse via un arrêt a rejeté l’argument de l’incriminé qui avait demandé une an­nu­la­tion de la procédure au motif que les éléments de preuves ont été obtenus en violation du principe de loyauté. Ce dernier exemple illustre bien la pro­blé­ma­tique de l’uti­li­sa­tion des honeypots et ne valide pas to­ta­le­ment son recours. On assiste davantage en France à une ap­pré­cia­tion au cas par cas. Au final, la légalité des honeypots reste encore en dis­cus­sion et son uti­li­sa­tion pose encore de nombreux problèmes sur dif­fé­rents plans, notamment au sujet du risque de com­pli­cité et de la collecte de données à caractère personnel.

Aller au menu principal