![]() |
Programmsperre programmieren
Hallo zusammen.
Ich soll eine Art Programmsperre programmieren und benötige dafür ein paar Tipps: Das Programm soll als Dienst oder Tool (noch nicht ganz klar) immer im Hintergrund laufen. Jegliche Programmaufrufe sollen abgefangen werden und das entsprechende Programm soll ermittelt werden. Von dem Programm wird ein MD5-Hash gebildet und mit einer Blacklist abgeglichen. Wenn das Programm (z.B. Hackertools, etc.) in der Liste ist, soll der Programmaufruf geblockt werden, ansonsten soll das Programm ganz normal gestartet werden. Wie kann ich das machen. Gibt es da in der DP schon passende Beispiele? Danke und Grüße Codewalker |
Re: Programmsperre programmieren
Eigentlich müsste es dazu ausreichen NTCreateProcess zu hooken.
|
Re: Programmsperre programmieren
Ich hab mich noch nie wirklich mit Hooks auf Funktionen beschäftigt (nur mit Mousehooks). Wie mach ich das denn konkret? Hast du das vielleicht ein Beispiel zu?
|
Re: Programmsperre programmieren
Guck mal hier bei toms:
![]() |
Re: Programmsperre programmieren
Das sieht sehr gut aus. Danke für den Tipp. Ich werde mich damit mal in Ruhe beschäftigen....
|
Re: Programmsperre programmieren
Bitte implementier' es als Treiber. Alles andere ist relativ unsicher.
Wenn ich Zeit finde, kann ich mich breitschlagen lassen da schnell was zusammenzutippen (dann ab W2K). |
Re: Programmsperre programmieren
Dann ist Delphi aber doch nicht mehr dafür geeignet, oder? Soweit ich bisher weiß, muss ich doch dann C++ mit speziellem Compiler/Linker verwenden und das ist alles andere als trivial. Warum meinst du denn, gibt das Probleme?
|
Re: Programmsperre programmieren
Ganz einfach, weil es mehr als einen Weg gibt den entsprechenden System-Service aus dem Usermode aufzurufen. Du wirst also ganz simpel nicht alles abfangen. Wie gesagt, den Treiber kann ich dir vermutlich relativ zuegig schreiben.
|
Re: Programmsperre programmieren
Zitat:
|
Re: Programmsperre programmieren
Zitat:
|
Re: Programmsperre programmieren
Zitat:
Eigentlich müsste ich nur mitbekommen können (weiß nicht, welche Möglichkeiten es zur Kommunikation zwischen UM und KM gibt), wann ein Programm gestartet wird und die gesamte Befehlszeile inkl. Parameter erhalten. Das Testen würde in einem Tool oder Dienst ablaufen. Anschließend müsste ich nur an einen Treiber einen Bool geben könne, ob er den Befehl ausführen soll oder nicht. Alternativ ginge auch, dass ich den Befehl vom Programm erneut ausführe mit einem Trick (Flag, oder so. Bin da auch für Vorschläge offen), so dass keine erneute Prüfung durchgeführt wird, sondern das Programm direkt gestartet wird. Ich hoffe das war verständlich und ich würd mich freuen, wenn du mir sagen kannst, ob das möglich ist und wo es Probleme geben könnte. |
Re: Programmsperre programmieren
Zitat:
Zitat:
Zitat:
Übrigens, wenn das hier auf eine Sandbox hinausläuft, darf ich dir aufgrund meines Arbeitsvertrags leider nicht helfen. |
Re: Programmsperre programmieren
Zitat:
1. Eine Art "Kindesicherung", um gezielt Programme beispielsweise per Passwort zu blocken oder Zeitsperren einzubauen (Nein, du spielst WoW nicht abends nach 23 Uhr :mrgreen: ). 2. Für einen Freund der noch ein Internetcafé hat und bestimmte Programme nicht erlauben möchte. Zitat:
Zitat:
Zitat:
Grundsätzlich hast du Recht, dass ein Treiber die bessere Variante ist und ich finde es klasse, dass du mir da helfen würdest. Allerdings hast du natürlich sehr viel Wissen über Treiber und Kernelmode und ich (leide fast) nichts, so dass ich da wenig mit Vorgaben dienen kann. Ich würde mich da über Vorschläge von Dir, wie ich das machen soll, sehr freuen. Ich kann dann eher mit Ideen und Basteleien im UserMode dienen (naja, Delphi halt :zwinker: ) |
Re: Programmsperre programmieren
Zitat:
Aus Hack.exe wird Lieb.exe Aus wow.exe wird word.exe Wäre es nicht besser den internen Programmnamen zu verwenden? Bedenke: Deine Kinder sind kreativer, als Dir lieb ist :mrgreen: |
Re: Programmsperre programmieren
Das habe ich (hoffentlich) gelöst, indem ich auch noch den MD5-Hash dazu nehme (s.o.)
|
Re: Programmsperre programmieren
Würdest du das Programm veröffentlichen? Bin grad' auf der Suche nach sowas... Leider gibt's das so gut wie nichts im kostenfreien Rahmen.
|
Re: Programmsperre programmieren
klar. Ich bekomme schon so viel Hilfe (solange Olli dann auch zustimmt) poste ich das hier sehr gern. :dp:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz