RE: Security-API NT/XP
From: Thomas Östreich (Thomasstreich_at_discussions.microsoft.com)
Date: 07/02/04
- Next message: Andrea Anker: "Socket Senden- Empfangen"
- Previous message: Andre Stille [MVP]: "Re: Tipps für Debugging"
- In reply to: Annette Bauer: "Security-API NT/XP"
- Next in thread: Jens Geyer: "Re: Security-API NT/XP"
- Messages sorted by: [ date ] [ thread ]
Date: Fri, 2 Jul 2004 05:28:01 -0700
Hallo Annette,
Ich vermute mal das dein Account die Berechtigung hat jeden Prozeß zu beenden(Hauptbenutzer/Administratoren) . Es wäre ja gefährlich wenn ein Administrator die Prozesse nicht beenden kann.
Wenn der Account zur Gruppe der Benutzer gehört kann diese Person nur die Prozesse beenden die unter seinem Account laufen. (Bei XP sieht man das wunderbar im Taskmanager)
Du müßtest also den Prozeß unter einen anderen Context laufen lassen über CreateProcessAsUser
MSDN:
ms-help://MS.MSDNQTR.2003FEB.1031/security/security/starting_an_interactive_client_process.htm
oder ihn als Dienst erstellen dort kannst du dann auch angeben unter welchen Context er laufen soll.
MFG Thomas
"Annette Bauer" wrote:
> Hallo,
>
> ich habe mich bisher etwas eingehender mit dem Security-API befaßt, bin
> jetzt aber auf ein Problem gestoßen (ist eigentlich akademischer Natur
> ohne offensichtlichen praktischen Nutzen) aber ich möchte einfach
> wissen, wie das geht.
>
> Und zwar: ich möchte verhindern, dass ein Prozeß via Taskmanager
> abgeschossen werden kann. Eigentlich habe ich gedacht, der Prozeß
> manipuliert seine eigene SACL indem ein AcessDenied ACE in die SACL
> eingehängt wird. Diesen ACE habe ich mit verschieden SIDs mal probiert,
> z.B. (prinzipielle Vorgehensweise)
>
> "AllocateAndInitializeSid(&sa, 1, SECURITY_WORLD_RID, 0,0,0,0,0,0,0, psid);"
>
> AddAccessDeniedAce(pProcSaclNew, ACL_REVISION,
> PROCESS_TERMINATE|PROCESS_ALL_ACCESS, psid);
>
> GetUserObjectSecurity(hProc, &si, psdProc, sdProcLen, &sdProcLen);
>
> GetSecurityDescriptorSacl(psdProc, &bProcSaclPresent, &pProcSacl,
> &bSaclDefault);
>
> SetSecurityDescriptorSacl(psdProcAbs, TRUE, pProcSaclNew, FALSE);
>
>
>
>
> Alle Systemaufrufe funktionieren, liefern OK, aber im Taskman kann ich
> das Programm immer noch abkillen. Was mache ich falsch, geht das
> überhaupt, was ich will????
>
>
>
- Next message: Andrea Anker: "Socket Senden- Empfangen"
- Previous message: Andre Stille [MVP]: "Re: Tipps für Debugging"
- In reply to: Annette Bauer: "Security-API NT/XP"
- Next in thread: Jens Geyer: "Re: Security-API NT/XP"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|