Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
[erledigt] Keyboard Hook Probleme
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 655
Herkunft: Hamburg

Themenstarter:

[erledigt] Keyboard Hook Probleme

beantworten | zitieren | melden

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 ?
Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von Ayke am .
private Nachricht | Beiträge des Benutzers
Andreas.May
myCSharp.de - Member

Avatar #avatar-2474.gif


Dabei seit:
Beiträge: 925

beantworten | zitieren | melden

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++.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Andreas.May am .
Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(
private Nachricht | Beiträge des Benutzers
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 655
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

Danke für den Hinweis mit KBDLLHOOKSTRUCT. Jetzt müsste es auch zu machen sein
private Nachricht | Beiträge des Benutzers
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 655
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
ErfinderDesRades
myCSharp.de - Experte

Avatar #avatar-3151.jpg


Dabei seit:
Beiträge: 5409

KeyLogger - Verantwortung der Wissensvermittlung?

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
tom-essen
myCSharp.de - Experte

Avatar #avatar-2140.png


Dabei seit:
Beiträge: 1928
Herkunft: NRW

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
ErfinderDesRades
myCSharp.de - Experte

Avatar #avatar-3151.jpg


Dabei seit:
Beiträge: 5409

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
Ayke
myCSharp.de - Member

Avatar #avatar-2293.gif


Dabei seit:
Beiträge: 655
Herkunft: Hamburg

Themenstarter:

beantworten | zitieren | melden

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.
private Nachricht | Beiträge des Benutzers
Andreas.May
myCSharp.de - Member

Avatar #avatar-2474.gif


Dabei seit:
Beiträge: 925

beantworten | zitieren | melden

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(
private Nachricht | Beiträge des Benutzers