Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Nitroxis
Anmeldungsdatum: 27.02.2008 Beiträge: 300 Wohnort: Irgendwo...
|
Verfasst am: 30.04.2009, 18:33 Titel: Zugriff auf Prozess verweigern |
|
|
Hallo.
Wie kann ich den Zugriff auf einen Prozess verweigern?
Wenn ich den Prozess meines Anti-Virus-Programms beenden will sagt der Task-Manager "Zugriff verweigert". Das möchte ich mit meinem Programm auch machen.
Wie lässt sich soetwas machen? |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 30.04.2009, 19:25 Titel: |
|
|
Das geht bspw. indem du deinen Prozess mit den Rechten des Systemusers SYSTEM betreibst - das sollte gehen
Außerdem meine ich mich zu erinnern, dass man sowas auch bei den Security Attributes von CreateProcess() spezifiezieren konnte - benötigt allerdings Administratorrechte... |
|
Nach oben |
|
 |
Nitroxis
Anmeldungsdatum: 27.02.2008 Beiträge: 300 Wohnort: Irgendwo...
|
Verfasst am: 30.04.2009, 19:51 Titel: |
|
|
Kann man sowas auch bei einem schon Laufenden Prozess machen, oder geht das nur mit CreateProcess()? |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 30.04.2009, 20:01 Titel: |
|
|
MSDN!? |
|
Nach oben |
|
 |
Nitroxis
Anmeldungsdatum: 27.02.2008 Beiträge: 300 Wohnort: Irgendwo...
|
Verfasst am: 30.04.2009, 20:17 Titel: |
|
|
Ich finde bei MSDN aber nichts was mir weiter hilft..  |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 30.04.2009, 20:33 Titel: |
|
|
Stichworte: Process rights, Denie access process, process security attributes, ... |
|
Nach oben |
|
 |
Nitroxis
Anmeldungsdatum: 27.02.2008 Beiträge: 300 Wohnort: Irgendwo...
|
Verfasst am: 30.04.2009, 20:55 Titel: |
|
|
OK.
So viel ich verstanden habe muss man das bei dem SECURITY_DESCRIPTOR irgendwie machen. Ich weiß aber nicht wie... Kann mir da jemand helfen? |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 30.04.2009, 21:19 Titel: |
|
|
da wirste nicht viel finden.
 _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Cherry
Anmeldungsdatum: 20.06.2007 Beiträge: 249
|
Verfasst am: 30.04.2009, 22:00 Titel: |
|
|
Das geht z.B. indem du einen Service erzeugst, der dein Programm startet bzw. dein Programm zu einem Service machst.
Diese Arbeit kann dir abgenommen werden mit diesem Programm (bat-Datei):
Code: | @echo off
set testsvc=
cls
color 0A
echo.
echo Programme als Dienst im Systemkontext starten
echo.
echo.
echo System: Windows 2000/XP/Vista
echo [Unter Vista die einzige Option, interaktiv im Systemkontext zu arbeiten]
echo.
echo.
echo.
ver | find "Version 6." >NUL
IF NOT errorlevel 1 (
echo Vista-Dienstmelder fuer interaktive Dienste UI0Detect einrichten...
sc config UI0Detect start= demand >NUL
ping -n 1 127.0.0.1 >NUL
echo Vista-Dienstmelder fuer interaktive Dienste UI0Detect starten...
sc start UI0Detect >NUL
echo.
)
IF NOT %1.==. set testsvc=%1
IF %1.==. (
echo Wenn Sie nichts eingeben, startet der CMD.EXE als Dienst.
echo Ausgehend vom CMD-Prompt koennen Sie dann beliebige weitere Programme starten.
echo.
set /p testsvc=PROGRAMMNAMEN EINGEBEN:
)
if %testsvc%.==. (set testsvc="cmd.exe /k start")
set testsvc=%testsvc:"=%
echo.
echo Kommandoaufruf "%testsvc%" als interaktiver Dienst
echo.
echo Dienst TestSvc stoppen, falls er laeuft...
sc stop testsvc >NUL
ping -n 1 127.0.0.1 >NUL
echo Dienst TestSvc loeschen, sofern vorhanden...
sc delete testsvc >NUL
ping -n 1 127.0.0.1 >NUL
echo Dienst TestSvc neu anlegen...
sc create testsvc binpath= "%testsvc%" type= own type= interact >NUL
ping -n 1 127.0.0.1 >NUL
echo Dienst TestSvc starten...
sc start testsvc >NUL
ping -n 2 127.0.0.1 >NUL
|
mfG Cherry
EDIT: Es gibt sicher andere Möglichkeiten auch.
EDIT²: Hoppla, das startet das Programm zwar als Nutzer "SYSTEM", aber man kanns trotzdem abschießen 
Zuletzt bearbeitet von Cherry am 03.05.2009, 15:54, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Nitroxis
Anmeldungsdatum: 27.02.2008 Beiträge: 300 Wohnort: Irgendwo...
|
Verfasst am: 30.04.2009, 23:22 Titel: |
|
|
Hmmm???
Das Programm bzw. die Batch-Datei geht irgendwie nicht...
Oder mache ich etwas falsch?
Das Programm das gestartet wird kann man im Task-Manager trotzdem beenden.
Ich möchte ja den Zugriff auf den Prozess verweigern.
Was muss ich den bei SECURITY_DESCRIPTOR für Parameter setzen, wenn ich den Prozess mit CreateProcess erstelle? |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 01.05.2009, 11:06 Titel: |
|
|
MSDN!!!!! |
|
Nach oben |
|
 |
|