Les keyloggers, explications et contre-mesures
Keyloggers, logiciels espions, spywares, malwares…, les définitions ne manquent pas, et le problème transversal est toujours le même : on ne sait pas forcément ce que c’est, comment ça fonctionne et ainsi comment nous en protéger concrètement.
C’est tout le but de cet article.
Qu’est-ce qu’un keylogger ?
On peut l’appeler « enregistreur de frappe » en français et comme son nom l’indique, il s’agit d’un programme qui enregistre fidèlement les séquences de touches tapées au clavier.
On peut donc le placer dans la catégorie des logiciels espions (les spywares en anglais), et plus généralement dans la catégorie des virus (malwares en anglais). Un spyware dont le but est d’espionner discrètement les victimes est donc une sous-catégorie des malwares. En espérant que tout cela soit encore compréhensible…
Le keylogger fait partie des logiciels espions car il agit généralement en arrière plan comme un processus invisible et silencieux tout en récoltant des données très sensibles. Il peut enregistrer les touches dans un fichier de « log », les envoyer vers une adresse e-mail ou vers un serveur distant, via FTP par exemple.
80% des keyloggers, voire plus, visent les systèmes Windows, même si des keyloggers pour les autres systèmes d’exploitation comme Linux existent. Avis aux utilisateurs de Mac et Linux : oui vous avez raison sur ce point, vous avez moins de chance d’en attraper un ! (mais attention, ce qui est sécurisé à 99% n’est pas sécurisé)
Les logiciels espions sont l’un des moyens les plus connus pour pirater un compte, d’où leur forte popularité. Les langages utilisant la méthode RAD (Rapid Application Development) ont favorisé cette création facile de tels programmes malveillants. En somme, il est de plus en plus facile de créer des programmes informatiques puissants (et dangereux) sans connaissances préalables.
Généralement un keylogger peut tenir longtemps sur un ordinateur de part le fait qu’il soit indétectable par l’utilisateur (invisible). Mais même si l’antivirus ne détecte pas le programme malveillant, nous saurons le détecter à travers cet article !
Types de keyloggers
On distingue communément deux types de keyloggers :
- Le keylogger logiciel : Celui qu’on connaît habituellement, le programme espion dont on parlera dans cet article.
- Le keylogger matériel : Qui est un petit dispositif physique achetable pour une trentaine d’euros sur le net mais qui n’est pas simple d’usage car il doit être installé physiquement sur un ordinateur cible (généralement à brancher entre le clavier et le pc, ou à intégrer directement dans le clavier).
On peut également noter que les keyloggers pour smartphones existent, ils font partie des keyloggers logiciels.
Comment fonctionnent-ils exactement ?
On s’intéressera aux détails sur les keyloggers fonctionnant sous Windows, même si le principe reste globalement le même pour tous.
Avertissement : il n’est pas question sur ce site de vous enseigner comment pirater qui que ce soit. On se limitera aux explications strictement utiles dans le cadre d’une mise en place d’une protection efficace.
Le keylogger une fois exécuté commencera généralement à s’assurer qu’il puisse se relancer automatiquement à chaque démarrage du système. C’est un premier indice de sa présence.
Ensuite, il exécutera ses fonctions à chaque lancement. Il utilise les APIs (interfaces de programmation) de Windows (ou du système d’exploitation ciblé de manière générale) pour récupérer les événements du clavier.
Il va ensuite insérer une fonction de récupération dans la chaîne d’événements claviers du système. Du coup lorsqu’une touche est tapée, le système récupère le message et l’envoie à toutes les fonctions qui « écoutent » les événements du clavier.
Cela n’est pas une menace en elle-même, car beaucoup d’applications ont besoin de récupérer les événements du clavier pour un intérêt totalement légitime comme la mise en place de raccourcis clavier. Ce qui pose donc un problème de détection pour les antivirus.
Puis une fonction est déclenchée à intervalles réguliers pour par exemple envoyer à distance les données enregistrées. Une seconde piste de détection s’offre donc à nous : le keylogger utilise probablement le réseau.
Le message est envoyé aux autres fonctions qui écoutent les événements du clavier pour ne pas bloquer la chaîne.
Il répète continuellement ces étapes jusqu’à l’arrêt du système et recommencera le lendemain en toute transparence.
Que récupèrent-ils exactement ?
Le keylogger au sens propre récupère seulement les séquences de touches tapées au clavier. Mais dorénavant le keylogger classique est devenu beaucoup plus redoutable.
On parle même de logiciels de surveillance complets qui peuvent récupérer énormément de données (audio, textuelles ou visuelles).
Un logiciel de surveillance peut par exemple prendre des captures d’écran, récupérer le contenu du presse-papier dynamiquement, récupérer les conversations Skype, récupérer ou bloquer des sites web, exécuter ou supprimer d’autres programmes…etc. Des fonctionnalités dont on n’imagine en fait même pas l’existence !
C’est notre troisième piste : les logiciels malveillants profitent pleinement de notre méconnaissance. Tout ce que nous ne pensons même pas faisable existe en fait depuis bien longtemps. Et j’insiste sur ce point qui montre tout l’intérêt d’apprendre le hacking éthique en tant que particulier soucieux de sa sécurité. La prise de connaissance est l’étape indispensable avant de pouvoir concrètement appliquer des bonnes mesures de sécurité.
Voici un exemple de logiciel qui permet de « créer » son propre keylogger :
Ces programmes « professionnels » sont cependant souvent payants et relativement chers, ils sont aussi un bien moins silencieux qu’un keylogger classique. Le fait qu’ils soient créés par des entreprises spécialisées permet heureusement de ne pas les offrir au large public.
À ce propos : tous les keyloggers ne sont pas illégaux. Des conditions strictes permettent de surveiller des internautes (par exemple en entreprise), notamment en lui signalement clairement qu’il est surveillé et en obtenant son approbation.
Limitations et contre-mesures
Les keyloggers semblent très redoutables, mais tout n’est pas rose pour eux non plus, et heureusement.
Il existent beaucoup de langues parlées, et donc beaucoup de caractères différents et certains nécessitent des combinaisons de touches comme AltGr + e pour le fameux signe euro (« € »). En supposant que vous avez un clavier français.
À partir de là, si le keylogger n’enregistre que les touches principales du clavier il ne pourra pas récupérer notre mot de passe (d’où le fait de rappeler les bonnes pratiques de création de mots de passe avec des caractères spéciaux).
Ainsi, vous pouvez même faire planter un keylogger sans vous en rendre compte, en tapant par exemple une combinaison qu’il ne gère pas.
Astuce très efficace pour taper votre numéro de carte bancaire ou un mot de passe de façon sûre :
Les keyloggers enregistrent théoriquement les touches tapées dans l’ordre. Si votre numéro est 1234 et que vous écrivez 34 puis cliquez au début et tapez 12, vous obtiendrez 1234 mais le keylogger enregistrera 3412. En espérant que l’explication a un sens…
« comment taper son numéro de CB en toute sécurité »Cliquez pour tweeterPartager sur FacebookPartager sur LinkedInIl existe aussi des anti keyloggers qui « chiffrent » les touches avant que le keylogger y ait accès. Ces programmes sont malheureusement lourds, peu connus et donc peu utilisés. Parmi ceux-là on peut noter le fameux Keyscrambler.
Enfin, mes recommandations habituelles valent également pour les keyloggers : Soyez vigilant lorsque vous lancez un programme suspect. Regardez régulièrement les programmes lancés au démarrage du système (voir cet article).
Concernant l’activité réseau, je vous conseille l’excellent TcpView qui affiche ce qu’il se passe sur le réseau, afin de détecter un éventuel message envoyé toutes les x minutes et en déduire un programme potentiellement suspect.
Nous parlons de tout cela en détails dans les guides et cours vidéos.