Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   C++ "Einrasten" in das Dateisystem (https://www.delphipraxis.net/75385-einrasten-das-dateisystem.html)

Metal_Snake2 18. Aug 2006 16:12


"Einrasten" in das Dateisystem
 
Guten Tag,

mein ziel ist es folgende System Ereignisse abzufangen:
wenn eine datei erstellt, modifiziert oder gelöscht wird.

Der user selbst sollte mit einem dialog entscheiden können
ob das Ereignis genehmigt oder geblockt wird. Ich möchte keine Spy Software oder einen Rootkit erstellen!
Mein ziel ist es dadruch sensible Dateien zu schützen und zu überwachen.

Reichen SSDT-Hooks(API der NTOSKRNL.EXE: ZwCreateFile(wäre ZwCreateSection mit dem enstprechenden flag nicht besser?), ZwSetInformationFile, ZwDeleteFile) oder lieber mit einem Kernel-Mode Dateisystem Treiber so wie Filemon von SysInternals.

NicoDE 18. Aug 2006 16:52

Re: "Einrasten" in das Dateisystem
 
Zitat:

Zitat von Metal_Snake2
Reichen SSDT-Hooks(API der NTOSKRNL.EXE: ZwCreateFile(wäre ZwCreateSection mit dem enstprechenden flag nicht besser?), ZwSetInformationFile, ZwDeleteFile) oder lieber mit einem Kernel-Mode Dateisystem Treiber so wie Filemon von SysInternals.

Über den ersten Lösungsansatz würde ich gar nicht erst nachdenken. Es geht eher in Richtung des zweiten Ansatzes (Filtertreiber).

Metal_Snake2 18. Aug 2006 17:09

Re: "Einrasten" in das Dateisystem
 
Zitat:

Zitat von NicoDE
Zitat:

Zitat von Metal_Snake2
Reichen SSDT-Hooks(API der NTOSKRNL.EXE: ZwCreateFile(wäre ZwCreateSection mit dem enstprechenden flag nicht besser?), ZwSetInformationFile, ZwDeleteFile) oder lieber mit einem Kernel-Mode Dateisystem Treiber so wie Filemon von SysInternals.

Über den ersten Lösungsansatz würde ich gar nicht erst nachdenken.

Wiso? Würde es die Performance des Systems verschlingen, da Dienste wie ZwCreateFile auch für I/O Oberationen wie Devices benutze werden und somit sehr oft angewendet werden?

Jedenfalls hab ich mir schonmal das buch "O'Reilly - Windows NT File System Internals, A Developer's Guide"

NicoDE 18. Aug 2006 17:21

Re: "Einrasten" in das Dateisystem
 
Zitat:

Zitat von Metal_Snake2
Wiso?

Weil SDT-Hooks die letzte Alternative sind (falls es nicht anders geht). Zukünftige Versionen von Windows werden die Modifizierung von internen Kernel-Daten verhindern (unter x64 bereits jetzt).


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz