Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Programmsperre programmieren (https://www.delphipraxis.net/85530-programmsperre-programmieren.html)

Codewalker 2. Feb 2007 07:24

Re: Programmsperre programmieren
 
Zitat:

Zitat von "Olli
Wäre das nicht eigentlich der Teil den du mir sagen müßtest?

hmm.. stibimmt :mrgreen:

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.

Olli 2. Feb 2007 07:29

Re: Programmsperre programmieren
 
Zitat:

Zitat von Codewalker
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.

Gut, also die Befehlszeile holst du dir lieber im Usermode. Ansonsten gibt es da Events, Inverted Calls, MMFs ... was auch immer.

Zitat:

Zitat von Codewalker
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.

Hmm, also müßten bestimmte Prozessoe von vornherein ausgenommen sein von der Sperre, richtig?

Zitat:

Zitat von Codewalker
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.

Jupp, wird es vermutlich geben, weil man irgendsowas wie einen vertrauenswürdigen Prozeß haben muß. Abgesehen davon hängt es davon ab wie lange deine Tests dauern. Was sind denn das für Tests, wenn ich fragen darf?

Übrigens, wenn das hier auf eine Sandbox hinausläuft, darf ich dir aufgrund meines Arbeitsvertrags leider nicht helfen.

Codewalker 2. Feb 2007 07:59

Re: Programmsperre programmieren
 
Zitat:

Zitat von Olli
Übrigens, wenn das hier auf eine Sandbox hinausläuft, darf ich dir aufgrund meines Arbeitsvertrags leider nicht helfen.

Nein, eine Sandbox soll das nicht werden. Ich glaube dann müsste ich mir auch deutlich(!) mehr Wissen über Kernel und KM anlesen. Das ganze hat 2 Ziele:
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 von Olli
Gut, also die Befehlszeile holst du dir lieber im Usermode.

Okay, aber wie würde ich denn da dran kommen? (Ich würde das dann über einen Hook machen wie oben beschrieben, aber nur lesend ohne etwas zu verändern. Wie würdest du das denn machen?

Zitat:

Zitat von Olli
Ansonsten gibt es da Events, Inverted Calls, MMFs ... was auch immer.

Mir solls egal sein, Haupsache ich komme irgendwie dran.

Zitat:

Zitat von Olli
Abgesehen davon hängt es davon ab wie lange deine Tests dauern. Was sind denn das für Tests, wenn ich fragen darf?.

Ich hab doch gar nichts von Tests erzählt, oder? :gruebel:


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: )

Catbytes 2. Feb 2007 08:21

Re: Programmsperre programmieren
 
Zitat:

Zitat von Codewalker
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.

Und dann benenne ich das Programm um - und dann?

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:

Codewalker 2. Feb 2007 08:24

Re: Programmsperre programmieren
 
Das habe ich (hoffentlich) gelöst, indem ich auch noch den MD5-Hash dazu nehme (s.o.)

Daniel G 2. Feb 2007 08:27

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.

Codewalker 2. Feb 2007 08:30

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 01:18 Uhr.
Seite 2 von 2     12   

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