![]() |
Re: Benutzerrechte: Token Handle woher?
Zitat:
|
Re: Benutzerrechte: Token Handle woher?
Argh. Das habe ich vergessen.
|
Re: Benutzerrechte: Token Handle woher?
Danke für die Posts! Ich glaub so langsam weiß ich selber nichtmehr was ich eigentlich wollte... :shock:
Ich bin am Computer angemeldet als Benutzer "David". David startet ein Programm, dieses Programm (start.exe) startet dann ein anderes Programm (Daten.exe) mittels ![]() Programm start.exe beendet sich nach 30 Sekunden selber. Das Programm Daten.exe soll nun ein Programm starten, mit den Rechten des angemeldeten Benutzers in dem jetztigen Fall "David". Es kann aber sein, dass morgen ein anderer Benutzer angemeldet ist! Wenn ichs jetzt richtig sehe müsste das dass sein, was ich will. Soweit... Werde jetzt mal CreateProcess und Shellexecute ausprobieren, wobei das die Rechte eigentlich vererben müsste. Und somit ungeeigent wäre. Gruß, freakfly |
Re: Benutzerrechte: Token Handle woher?
Zitat:
start.exe startet Daten.exe per CreateProcessWithLogonW und erhält daraufhin ein Prozess-Handle des neuen Prozesses. Über dieses Handle kann start.exe nun sein Token per DuplicateHandle an Daten.exe vererben. Daten.exe kann dieses Token dann benutzen um einen neuen Prozess unter diesem Security-Kontext zu starten. |
Re: Benutzerrechte: Token Handle woher?
Also wenn ich dich richtig verstehe, baue ich die start.exe als einen Art Wrapper, oder?
Denn das Problem ist das Daten.exe eine 16bit Appl. ist, die ich nicht beeinflussen kann. Im ganzen werde ich aber erstmal so vorgehen, wie du das beschrieben hast, wie das mit dem Handle kopieren u.s.w. geht muss ich mir mal anschauen. Wichtig ist mir jetzt, dass ich weiss, das ich den Handle kopieren kann. Noch besser wäre natürlich wenn ich den Handle des angemeldeten Benutzers irgendwo herbekommen würde. Danke euch soweit!!! |
Re: Benutzerrechte: Token Handle woher?
Zitat:
Aber wenn Daten.exe ein Programm ist, dass du nicht beeinflussen kannst, was bringt es dann wenn du ihm das Token vererbst? Schließlich weiß das Programm nicht was es damit anfangen soll... oder? |
Re: Benutzerrechte: Token Handle woher?
@Motzi, da hast du recht. Aber wenn ich im "Wrapper" per CreateProcessWithLogonW die Daten.exe mit erweiterten Rechten starte, und gleichzeitig im Wrapper den Token (Handle, wie auch immer) bereithalte, dann kann ich doch vom Wrapper aus auch Programme starten mit den Rechten des angemeldeten Users, ich muss nur noch den Wrapper dazu bringen, auf bestimmt Windows Messages oder ähnliches zu reagieren....
(Oje, ein drei-zeilen Satz) Gruß, freakfly |
Re: Benutzerrechte: Token Handle woher?
OK.. ganz prinzipiell - wenn du ein Token hast, kannst du über diesen Token einen Prozess in diesem Security-Kontext starten, egal wie du zu diesem Token gekommen bist.
Hast du jetzt schon eine Idee / einen Ansatz wie du das ganze lösen kannst? |
Re: Benutzerrechte: Token Handle woher?
Hmm.. mein Plan bisher sieht folgendermaßen aus:
Die start.exe wird gestartet, und wird der Token kopiert und im Programm gehalten. Das Programm startet mit CreateProcessWithLogonW die daten.exe. start.exe minimiert sich. Die daten.exe wiederum über gibt irgendwie die Parameter an start.exe weiter, die Infos enthalten welches Programm gestartet werden soll. Das Programm holten den alten, ersten Token wieder und startet mit dieser Berechtigung das Programm "x.exe". So in der Art.. Jetzt muss ich nur noch Zeitfinden, um das umzusetzen...... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:20 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