Laden...

[erledigt] Keyboard Hook Probleme

Letzter Beitrag vor 16 Jahren 9 Posts 3.681 Views
[erledigt] Keyboard Hook Probleme

Hallo Leute,

Ich schreibe grade einen Keylogger für ein Programm was die gewohnheiten eines Computer Benutzers untersuchen soll (keine Spyware sondern ein Programm für die Unterhaltung des Users).

Einen Hook habe ich bereits geschrieben. Mir ist jedoch aufgefallen das ich verschiedene Probleme beweltigen muss.

  1. Gross und Kleinschreibung. Ich kann ermitteln ob Shift oder Capslock gedrückt wird oder wurde, jedoch kann ich nicht sagen ob Capslock beim Programmstart bereits angeschalten war.

  2. Verschiedene Zeichen wir das @ werden auf der Englischen und Deutschen Tastatur auf andere Tasten belegt, deshalb kann ich verschiedene Zeichen die ich z.b auf den Nummerntasten vorfinde nicht richtig Interpertieren.

  3. Bei Zeichen wie ö, ü, ä werden keine Buchstaben sondern der Name des Zeichens ausgeben.

Gibt es eine möglichkeit die Eingaben so zu erhalten z.b wie bei Wordpad oder andren Programme zu sehen sind ohne das ich mich um Sprachen unsw kümmern muss ?

Hallo Ayke,

du kannst das ganze beim LowLevel hook über die KBDLLHOOKSTRUCT abfragen, so weden dir schon über die Struktur alle relevanten Informationen gegeben wie Tastenkombinationen und was bei Fremdsprachen passiert.

Kannst dir auch mal die UtilitiesLib ansehen, habe dort eine Komponente geschrieben für Keyboard Hook's allerdings hatte ich da die Modifier vergessen, die kannst ja dann rauslesen istja nicht mehr viel Aufwand. Ansonsten im Forum gibt es viele Hook Beispiele von rein C# bis hin zu C++.

Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(

Danke für den Hinweis mit KBDLLHOOKSTRUCT. Jetzt müsste es auch zu machen sein 🙂

Eine frage habe ich noch. Mir ist aufgefallen das über die flags im KBDLLHOOKSTRUCT keine Modifizierer wie erwartet übergeben werden.

Dies habe ich nun mit GetKeyState gelöst. Ich möchte jetzt ein neues Key Objekt mit einen vCode und Modfizierer zuweisen.Ich bekomme jedoch nur den vCode in den Key.

In der Doku steht folgendes :

Die Keys-Klasse enthält Konstanten für die Verarbeitung von Tastatureingaben. Die Member der Keys-Enumeration bestehen aus einem Tastencode und einer Gruppe von Modifizierern, die zu einem einzigen ganzzahligen Wert kombiniert werden. In der Win32-API (Application Programming Interface, Anwendungsprogrammierschnittstelle) besteht ein Tastenwert aus zwei Teilen, wobei die hohen Bits den Tastencode enthalten (der mit einem virtuellen Windows-Tastencode übereinstimmt) und die niedrigen Bits Tastenmodifizierer wie UMSCHALT-, STRG- und ALT-TASTE darstellen.

KeyLogger - Verantwortung der Wissensvermittlung?

Hi allerseits!

Vermutlich machich mich damit unbeliebt, aber ich bin der Ansicht, so Fragen, wie man einen KeyLogger baut, sollte man nicht wildfremden Leuten, schon gar nicht öffentlich beantworten.
Das ist m.E. eine Technik, prinzipiell und vorwiegend geeignet, bösartigen Code zu schreiben, also einfach gefährliches Zeugs.
Ja, in gewisser Weise ist jedes Wissen "gefährliches Zeugs", aber trotzdem sollte man da irgendwo eine Linie ziehen, findich.

@Ayke: Das geht jetzt nicht gegen dich, das ist mir einfach was prinzipielles.

Der frühe Apfel fängt den Wurm.

Hallo!

@ErfinderDesRades:
Auf der einen Seite hast du natürlich recht, aber ein ein .NET-KeyLogger setzt schonmal ein installiertes Framework voraus. Das ist zwar mittlerweile ab Vista vorhanden, dennoch werden die entsprechenden Personen wohl doch eher auf C / C++ setzen, um eine möglichst große Verbreitung zu erzielen. Und bzgl. der Theorie findet man genügend Quellen, z.B. von MS. Ein KeyLogger ist somit sehr schnell geschrieben, kriminell wird's zudem erst mit dem entsprechenden Replizierungsmechanismus.

Nobody is perfect. I'm sad, i'm not nobody 🙁

Ja, das ist schon klar, dass man sich das Wissen auch ohne meine Unterstützung aneignen kann. Aber deswegen unterstütze ich das trotzdem nicht. Die Schwelle (also die Mühe, die sich jemand machen muß, das rauszukriegen) ist niedrig genug, die senk ich nicht noch weiter.
Und so Replizierungs-KnowHow - da hört der Spaß nu gänzlich auf.
Aber auch ohne Repliziererei - evtl. könnte man auf einem gemeinsam genutzten PC eine harmlos aussehende Word-Datei starten und offen lassen, und im Makro spioniert die die Passwörter von Arbeitskollegen aus, oder so Scherze.

Der frühe Apfel fängt den Wurm.

hmm...

@ErfinderDesRades
Meinen Keylogger habe ich auch schon fertig und deshalb bin ich nicht auf deine Hilfe angewiessen. Ich möchte mir nur zusätzliches Wissen aneignen und das dürfte keinen Schaden. Auserdem gibt es viele möglichkeiten wofür man die eingaben des Benutzers gebrauchen kann, und das muss nicht immer zum ausspähen des Users sein. Wenn jemanden im Forum nicht Helfen möchtest brauchst du es den ersteller des Thread nicht zu erzählen. Das wird ihm sicherlich aufallen wenn du einfach nichts Postest, oder auch nicht 🙂.

Falls ich wirklich mist bauen wollte hätte ich mir einen Keylogger aus dem Internet geladen. Dies hätte mir viel mühe erspart.

Naja mein Problem habe ich schon gelöst.

Tut mir leid war eine weile nicht mehr im Forum, war einfach zu schönes Grillwetter 🙂

Unter "Flags" findest du die Modifier.

Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(