AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS
Thema durchsuchen
Ansicht
Themen-Optionen

CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

Ein Thema von Neotracer64 · begonnen am 4. Jan 2008 · letzter Beitrag vom 4. Jan 2008
Antwort Antwort
Seite 1 von 2  1 2      
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#1

CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 19:13
Hallo,

Kann es sein, dass ich CreateProcessWithLogonW nicht in Verbindung mit dem CreationFlag DEBUG_PROCESS aufrufen kann? Ich kriege dann immer ERROR_INVALID_PARAMETER. Ohne gehts.
Das enttäuscht mich jetzt etwas.

Gibt es dafür einen Workaround? Wie kann ich den gleichen Effekt erzielen (Prozess unter anderer UserCredentials zu starten) mit dem DEBUG_PROCESS Flag?

Bin offen für Ideen.

Grüße,

Neotracer64
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#2

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 19:44
Nur mal so ins Blaue geschossen. Vielleicht braucht der aufrufende Prozess, also deiner, das DEBUG Privileg aktiviert?
Andere Prozesse des eigenen Logins kann man auch ohne DEBUG-Privileg debuggen. Bei Prozessen anderer Benutzer (und da fallen auch die Dienste drunter) sieht das dann schon anders aus.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#3

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 19:49
Ja, ich hab das SeDebugPrivilege. Aber ich vermute der DEBUG_PROCESS Flag ist einfach nicht kompatibel mit CreateProcessWithLogonW.
Sonst wäre er wahrscheinlich auch auf der MSDN Seite für diese Funktion aufgelistet. :/

http://msdn2.microsoft.com/en-us/library/ms682431(VS.85).aspx
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#4

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:03
hast du das Privileg auch aktiviert?
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#5

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:06
Ja ganz sicher.
Der call schlägt ja auch mit dem Error ERROR_INVALID_PARAMETER fehl. :/
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#6

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:09
Der Fehler ERROR_INVALID_PARAMETER ist mir bei vielen Gelegenheiten entegegen gekommen. Es könnte auch sein, dass Windows gerade abstürzt und daher diesen Fehlercode zurückgibt.

Jetzt wirds wohl Zeit, dass du relevanten Quelltext hier postest...
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#7

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:14
Der einzige Grund, der mich davon abhielt den Quelltext zu posten war, dass ich es in FASM geschrieben habe.

Delphi-Quellcode:
;--------------------------------------------------------------
; CreateProcessA Callback
; -------------------------------------------------------------
proc myCreateProcessA stdcall, lpApplicationName, lpCommandLine, lpProcessAttributes, lpThreadAttributes, bInheritHandles,\
                               dwCreationFlags, lpEnvironment, lpCurrentDirectory, lpStartupInfo, lpProcessInformation
     CMP Byte [User], NULL
     JE .proceed
     invoke MultiByteToWideChar, CP_ACP, 0, User, -1, UserW, 64
     invoke MultiByteToWideChar, CP_ACP, 0, Pass, -1, PassW, 64
     invoke MultiByteToWideChar, CP_ACP, 0, [lpCommandLine], -1, lpCommandLineW , (2*MAX_PATH)+2
     ;invoke MultiByteToWideChar, CP_ACP, 0, [lpCurrentDirectory], -1, lpCurrentDirectoryW , (2*MAX_PATH)+2

     TEST EAX, EAX
     JZ .failure
     invoke CreateProcessWithLogonW, UserW, NULL, PassW, 1, NULL, lpCommandLineW ,DEBUG_ONLY_THIS_PROCESS, [lpEnvironment],\
                                          NULL, [lpStartupInfo], [lpProcessInformation]
     ret
.proceed:
    invoke CreateProcessA, [lpApplicationName], [lpCommandLine], [lpProcessAttributes], [lpThreadAttributes],\
                           [bInheritHandles], [dwCreationFlags], [lpEnvironment], [lpCurrentDirectory], [lpStartupInfo],\
                           [lpProcessInformation]
    ret
.failure:
    invoke MessageBoxA, [MainwHandle], lpTextErrorLogon, lpTitleError, MB_ICONERROR
    XOR EAX, EAX
    ret
endp
Ich hooke die Funktion CreateProcessA und möchte nun den Prozess mit User Credentials starten.
Wenn ich statt DEBUG_ONLY_THIS_PROCESS eine 0 angebe, startet der Prozess.

Also ich bin mir angesichts dieser Tatsache sehr sicher, dass DEBUG_ONLY_THIS_PROCESS / DEBUG_PROCESS nicht mit CreateProcessWithLogonW kompatibel ist.
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#8

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:21
wo wird das Privileg eingeschaltet?
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#9

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:47
Ich bin ein Plugin in OllyDbg.
Und OllyDbg hat dieses Privileg, da bin ich mir seeehhhrr sicher.
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#10

Re: CreateProcessWithLogonW in Verbindung mit DEBUG_PROCESS

  Alt 4. Jan 2008, 20:53
Ich war mir eigentlich auch immer sicher, dass Dönerbuden immer gutes Fleisch benutzen. Aber dann kam alles doch ganz anders....

Wenn du Dinge außer Acht lässt, dann könnte dir etwas Wichtiges entgehen.

Außerdem, ein inaktives Privileg zu haben ist genauso, als hätte man es nicht.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz