AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi CreateRemoteThread: benötigte Rechte
Thema durchsuchen
Ansicht
Themen-Optionen

CreateRemoteThread: benötigte Rechte

Ein Thema von Meflin · begonnen am 11. Apr 2005 · letzter Beitrag vom 11. Apr 2005
Antwort Antwort
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#1

CreateRemoteThread: benötigte Rechte

  Alt 11. Apr 2005, 15:02
Moin,

bei der arbeit mit der CreateRemoteThread funktion stellt sich mir nun folgende frage: welhce rechte braucht der benutzer, damit das erfolgreich ausgeführt werden kann? das msdn meint
Zitat:
The handle must have the PROCESS_CREATE_THREAD, PROCESS_QUERY_INFORMATION, PROCESS_VM_OPERATION, PROCESS_VM_WRITE, and PROCESS_VM_READ access rights.
ok, schön und gut, nur sagt mir das nciht wirklich was kann man also - wenn man von einem normalen, keinem systemprozess ausgeht, also einem, der unter dem benutzer läuft, mit einem nicht administratoraccount (unter winxp z.b.) createremotethread erfolgreich ausführen? wie schauts mit den anderen betriebssystemen aus(2000, NT)?

  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#2

Re: CreateRemoteThread: benötigte Rechte

  Alt 11. Apr 2005, 15:23
Zitat von Meflin:
ok, schön und gut, nur sagt mir das nciht wirklich was kann man also - wenn man von einem normalen, keinem systemprozess ausgeht, also einem, der unter dem benutzer läuft, mit einem nicht administratoraccount (unter winxp z.b.) createremotethread erfolgreich ausführen? wie schauts mit den anderen betriebssystemen aus(2000, NT)?
Wenn die beiden Anwendungen unter dem gleichen Account gestartet wurden, dann ist sehr wahrscheinlich, dass CreateRemoteThread erfolgreich aufgerufen werden kann.
(wahrscheinich deshalb, weil einige Programme an der eigenen Sicherheitsbeschreibung herumspielen )

Gruß Nico

ps: teste es doch einfach als Gast mit Notepad und einer Hello-DLL...
pps: wenn Du sicherstellen willst, dass es funktioniert, dann erzeuge den Prozess selbst - dann hast Du Vollzugriff...
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#3

Re: CreateRemoteThread: benötigte Rechte

  Alt 11. Apr 2005, 15:33
ok, merci, das bestätigt mich in meiner annahme, nur wenn ich das glaube, und du das sagst, dann ist das zweierlei

testen werde ichs auch noch, aber habe grade keine möglichkeit dazu, musste es aber trotzdem wissen

  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#4

Re: CreateRemoteThread: benötigte Rechte

  Alt 11. Apr 2005, 15:38
Zitat von Meflin:
aber habe grade keine möglichkeit dazu, musste es aber trotzdem wissen
Schreib ein Testprogramm und ich starte extra für Dich die VM...
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#5

Re: CreateRemoteThread: benötigte Rechte

  Alt 11. Apr 2005, 18:53
Das Zitat was du angefügt hast bezieht sich alleine auf das Handle das du mit OpenProcess von dem Process bekommen hast in dem den Thread erstellen willst.

D.h. es sollte bei allen Prozessen funktionieren die du EROLGREICH mit OpenProcess geöddnet hast. Bei Systemprozessen musst du vorher die Rechte bekommen.

der Code dafür:
Delphi-Quellcode:
function GetDebugPrivilege: boolean; stdcall;
var hToken,rel: cardinal;
    tkp: TOKEN_PRIVILEGES;
    luid: int64;
begin
  result := false;
  if OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
  begin
    if LookupPrivilegeValue(nil, 'SeDebugPrivilege', luid) then
    begin
      tkp.PrivilegeCount := 1;
      tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
      tkp.Privileges[0].Luid := luid;
      result := AdjustTokenPrivileges(hToken, FALSE, tkp, sizeof(tkp), nil, rel);
    end;
    CloseHandle(hToken);
  end;
end;
  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 12:42 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