Hook ...

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Tafkadasom2k5
Beiträge: 1578
Registriert: 13.08.2005 14:31
Kontaktdaten:

Beitrag von Tafkadasom2k5 »

Ja, genau darum gehts ja. Die Nachrichten, die du abfängst, beruhen auf Windows-Nachrichten.
OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Andreas_S
Beiträge: 787
Registriert: 14.04.2007 16:48
Wohnort: Wien Umgebung
Kontaktdaten:

Beitrag von Andreas_S »

Aso...

Und da stehen ja auch Konstanten drin... kann man nur die verwenden um einen Hook zu machen? Wenn ja, welcher ist dann der FileHook?

//Edit: Außerdem wenn es sich immer um Windows handelt wie kann dann mein Ziel eine Datei seil? Ich hab was vergessen ...

Danke :allright: .
Andreas_S
Beiträge: 787
Registriert: 14.04.2007 16:48
Wohnort: Wien Umgebung
Kontaktdaten:

Beitrag von Andreas_S »

Kann mir da keiner helfen :cry: ?

Ich weis nur wie man nen Keyboard-Hook und nen Maus-Hook macht und vielleicht noch die anderen die in der Hilfe stehn, aber das wars auch schon ... :cry:
Benutzeravatar
uweb
Beiträge: 461
Registriert: 13.07.2005 08:39

Beitrag von uweb »

Ein Hook ist genauso wenig böse wie Gift es ist. Gift wird z.B. in vielen Arzneimitteln verwendet. Aber, hast Du Dir schon einmal Gedanken darüber gemacht weshalb Arzneimittelschränke immer so hoch hängen ? Ein Menschen der da nicht dran kommt ist wahrscheinlich ein Kind und würde nicht verantwortungsbewusst damit umgehen. Klar, sind nicht alle kleinen Menschen Kinder und nicht alle großen verantwortungsbewusst. Aber insgesamt haben sich hoch hängende Arzneimittelschränke dabei bewährt die Vergiftungsquote gering zu halten.
Ich gebe Dir jetzt, wie schon einige vor mir, nur einen Schlüssel. Wenn Du damit nichts anfangen kannst werde ich Dich nicht hochheben oder Dir eine Leiter geben.
Mit z.B. SetWindowHookEx_ kommst Du in den Adressraum eines anderen Programms und hast die Möglichkeit dort eine INJECTION durchzuführen. Infos dazu gibt es reichlich im Forum oder sonst im Web. Die meisten davon sind aber in englisch. Genau das war auch mein Problem. Da ich davon überzeugt bin, daß die Angelsachsen nicht grundsätzlich große Menschen sind, finde ich es nur fair, daß es auch ein deutsches Buch dazu gibt : ADDISON-WESLEY "ROOTKITS".
Andreas_S
Beiträge: 787
Registriert: 14.04.2007 16:48
Wohnort: Wien Umgebung
Kontaktdaten:

Beitrag von Andreas_S »

Ich weiß was SetWindowHookEx_ macht. Warum kannst du mir nicht einfach ne PM schicken :lol: . Aber ich verstehe dich ...

Eine verdammt gute Metaffa :allright: !
Benutzeravatar
uweb
Beiträge: 461
Registriert: 13.07.2005 08:39

Beitrag von uweb »

Danke für die Blumen !

Zu Deiner PM
Kannst du mir vielleicht hier schreiben wie man einen File-Hook macht ... BITTE.
Die Antwort steht eigentlich schon oben :
Wenn Du damit nichts anfangen kannst werde ich Dich nicht hochheben oder Dir eine Leiter geben.
Aber Ok, noch ein wenig Hilfe zur Selbsthilfe :
Es geht nicht darum was SetWindowHookEx_ macht, sondern darum was man machen kann wenn man erst einmal Zugriff auf den Adressraum des Zielprozesses hat (Ausführungspfad von API-Aufrufen ändern - API-HOOK). SetWindowHookEx_ ist nur eine Möglichkeit da hin zu kommen. Weitere Suchbegriffe wären z.B. : IAT-HOOK, INLINE-HOOK und HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs.
P.S.
Ich arbeite gerade selbst an einem Hook und komme nicht von der Stelle. Auf der einen Seite wünschte ich mir auch mehr Fremdhilfe; auf der anderen Seite verstehe und akzeptiere ich die Vorsicht anderer. Das Buch sollte Dir, unabhängig von meinen Problemen, bei Deinem Vorhaben aber trotzdem hilfreich sein.
Wenn Du in der Lage bist einen Hook zu platzieren ist das aber nur die halbe Miete. Er soll ja auch irgend etwas tun. Du hast also eine Menge Arbeit vor Dir. Nur nicht aufgeben ! Rom wurde ja auch nicht an einem Tag abgebrannt. Ich hoffe die Metaffa passt nun wirklich nicht !
Benutzeravatar
Karl
Beiträge: 520
Registriert: 21.07.2005 13:57
Wohnort: zu Hause

Beitrag von Karl »

Hallo,

was ist mit Standard-API:

hier

überwacht Dateien und wenn einer ´rumfingert, gibt es ein Signal (Notification) und der Prozess läuft weiter.

Mit FindNextChangeNotification geht es weiter (siehe auch im API-Verzeichnis oder API-Viewer).

FindCloseChangeNotification schließt die Überwachung.

Gruß Karl
The Kopyright Liberation Front also known as the justified ancients of Mumu!
PB 5.X
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Karl hat geschrieben:überwacht Dateien und wenn einer ´rumfingert, gibt es ein Signal (Notification) und der Prozess läuft weiter.
dann könnte das Kind aber schon in den Brunnen gefallen sein. PBprogger
plant ja, ein AntiVirus-Programm zu schreiben, welches schon im Vorfeld den
Schreibzugriff auf eine Datei verhindern soll.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Karl
Beiträge: 520
Registriert: 21.07.2005 13:57
Wohnort: zu Hause

Beitrag von Karl »

Na, das ist ja affig - dann könnte ich gleich die kompletten Schreibrechte entziehen. :)

Die Viruserkennung läuft, weil eine bestimmte Sequenz gefunden wird. Wenn er beabsichtigt, die Überprüfung während des Schreibens durchzuführen, dann wird er wohl einen Puffer benötigen, um die zu schreibenden Daten erstmal komplett auslesen zu können:

BeforeWrite: CheckFile -> Write/Abort

Das Betriebssystem selbst wäre vielleicht dazu in der Lage. Ein simpler Hook reicht wohl nicht aus für so was.

Gruß Karl
The Kopyright Liberation Front also known as the justified ancients of Mumu!
PB 5.X
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Karl hat geschrieben:Ein simpler Hook reicht wohl nicht aus für so was.
mein Reden ;-)

Grüße ... Kiffi
a²+b²=mc²
Antworten