AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

System-Privilegien

Ein Thema von WinAPI · begonnen am 7. Mai 2008 · letzter Beitrag vom 28. Jul 2008
Antwort Antwort
hboy

Registriert seit: 16. Jan 2004
364 Beiträge
 
#1

Re: System-Privilegien

  Alt 27. Jul 2008, 21:07
Hallo,

ich klemme gerade an der Stelle, dass nun so wirklich garnichts geht außerhalb des Prozesses (XP SP2, als Admin).

Ich rufe OpenProcess folgendermaßen auf:
hProcess := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, false, PID); dabei bekomme ich, wenn ich mit PID := GetCurrentProcessID arbeite, bei ReadProcessMemory nur einen Berg Gerümpel und sobald ich einen Fremdprozess aufrufe ist GetLastError = 87 (ungültige Parameterkombination "The parameter is incorrect.").

Zuvor setze ich mit
Delphi-Quellcode:
function EnableTokenPrivilege(pszPrivilege: LPCTSTR): Boolean;
var
  hToken : THandle;
  tkp :_TOKEN_PRIVILEGES;
  ReturnLength: Cardinal;

begin
   hToken := 0;
   tkp.PrivilegeCount := 0;
   result := false;

    // Get a token for this process.
    if not _OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, @hToken)
      then begin writeln('Cannot open current process token.'); exit; end;

    // Get the LUID for the privilege.
    if(LookupPrivilegeValue(LP_SYSTEM_NAME_LOCAL, pszPrivilege,tkp.Privileges[0].Luid)) then
    begin
        tkp.PrivilegeCount := 1; // one privilege to set
        tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;

        // Set the privilege for this process
        _AdjustTokenPrivileges(hToken,false, @tkp,
            sizeof(TOKEN_PRIVILEGES),PTOKEN_PRIVILEGES(nil), @ReturnLength);
        if (GetLastError() <> ERROR_SUCCESS) then begin writeln('Adjusting token privileges failed.'); exit; end;
    end;

  result := true;
end;
das Privileg SE_DEBUG_NAME = 'SeDebugPrivilege'#0 (was auch zu funktionieren scheint). (Übersetzt von hier)

------------------------------------------------

Nun, wie setze ich die Debuggingrechte?
Power is nothing without TControl
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:17 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