Wie kann ich für x-beliebige Prozesse auslesen, welche DLLs diese geladen haben?
...zum Freitagnachmittag eine angenehme Frage, dachte ich mir...
Hallo Kollegen,
ich kenne process explorer und auch listdlls. Diese können mir für die meisten Prozesse das Gewünschte liefern. Für einen Dienst (hier avp.exe, Kaspersky-Virenscanner) jedoch nicht, die Ausgabe bleibt leer. Warum?
Meine Vermutung ist, dass die Tools nicht das Recht haben, diesen von Kaspersky geschützten Prozess abzufragen. Die Tools wurden mit dem Adminkonto elevated und ebenso mit dem Systemkonto ausgeführt mit dem selben Ergebnis. Wie kann ich dem Dienst, welcher die avp.exe startet, ansehen, ob ich das Recht habe, ihn derartig abzufragen?
Mit dem Kommando
sc sdshow avp
und anschließender Konvertierung der Ausgabe mit sddlparse komme ich auf:
Ist das die richtige Stelle zum Suchen? Fehlt ein Recht?
[Edit Biber] Als Code formatiert, weil sonst so viele Smileys etwas die Ernsthaftigkeit untergraben. [/Edit]
Hallo Kollegen,
ich kenne process explorer und auch listdlls. Diese können mir für die meisten Prozesse das Gewünschte liefern. Für einen Dienst (hier avp.exe, Kaspersky-Virenscanner) jedoch nicht, die Ausgabe bleibt leer. Warum?
Meine Vermutung ist, dass die Tools nicht das Recht haben, diesen von Kaspersky geschützten Prozess abzufragen. Die Tools wurden mit dem Adminkonto elevated und ebenso mit dem Systemkonto ausgeführt mit dem selben Ergebnis. Wie kann ich dem Dienst, welcher die avp.exe startet, ansehen, ob ich das Recht habe, ihn derartig abzufragen?
Mit dem Kommando
sc sdshow avp
und anschließender Konvertierung der Ausgabe mit sddlparse komme ich auf:
C:\Users\io\Desktop>sddlparse D:(A;;CCLCSWRPLOCRRC;;;WD)(A;;CCLCSWRPWPDTLOC
RRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOC
RRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)
SDDL: D:(A;;CCLCSWRPLOCRRC;;;WD)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLO
CRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPW
PDTLOCRSDRCWDWO;;;WD)
Ace count: 5
**** ACE 1 of 5 ****
ACE Type: ACCESS_ALLOWED_ACE_TYPE
Trustee: Everyone
AccessMask:
ADS_RIGHT_READ_CONTROL
ADS_RIGHT_DS_CREATE_CHILD
ADS_RIGHT_ACTRL_DS_LIST
ADS_RIGHT_DS_SELF
ADS_RIGHT_DS_READ_PROP
ADS_RIGHT_DS_LIST_OBJECT
ADS_RIGHT_DS_CONTROL_ACCESS
Inheritance flags: 0
**** ACE 2 of 5 ****
ACE Type: ACCESS_ALLOWED_ACE_TYPE
Trustee: NT AUTHORITY\SYSTEM
AccessMask:
ADS_RIGHT_READ_CONTROL
ADS_RIGHT_DS_CREATE_CHILD
ADS_RIGHT_ACTRL_DS_LIST
ADS_RIGHT_DS_SELF
ADS_RIGHT_DS_READ_PROP
ADS_RIGHT_DS_WRITE_PROP
ADS_RIGHT_DS_DELETE_TREE
ADS_RIGHT_DS_LIST_OBJECT
ADS_RIGHT_DS_CONTROL_ACCESS
Inheritance flags: 0
**** ACE 3 of 5 ****
ACE Type: ACCESS_ALLOWED_ACE_TYPE
Trustee: BUILTIN\Administratoren
AccessMask:
ADS_RIGHT_DELETE
ADS_RIGHT_READ_CONTROL
ADS_RIGHT_WRITE_DAC
ADS_RIGHT_WRITE_OWNER
ADS_RIGHT_DS_CREATE_CHILD
ADS_RIGHT_DS_DELETE_CHILD
ADS_RIGHT_ACTRL_DS_LIST
ADS_RIGHT_DS_SELF
ADS_RIGHT_DS_READ_PROP
ADS_RIGHT_DS_WRITE_PROP
ADS_RIGHT_DS_DELETE_TREE
ADS_RIGHT_DS_LIST_OBJECT
ADS_RIGHT_DS_CONTROL_ACCESS
Inheritance flags: 0
**** ACE 4 of 5 ****
ACE Type: ACCESS_ALLOWED_ACE_TYPE
Trustee: NT AUTHORITY\INTERACTIVE
AccessMask:
ADS_RIGHT_READ_CONTROL
ADS_RIGHT_DS_CREATE_CHILD
ADS_RIGHT_ACTRL_DS_LIST
ADS_RIGHT_DS_SELF
ADS_RIGHT_DS_LIST_OBJECT
ADS_RIGHT_DS_CONTROL_ACCESS
Inheritance flags: 0
**** ACE 5 of 5 ****
ACE Type: ACCESS_ALLOWED_ACE_TYPE
Trustee: NT AUTHORITY\SERVICE
AccessMask:
ADS_RIGHT_READ_CONTROL
ADS_RIGHT_DS_CREATE_CHILD
ADS_RIGHT_ACTRL_DS_LIST
ADS_RIGHT_DS_SELF
ADS_RIGHT_DS_LIST_OBJECT
ADS_RIGHT_DS_CONTROL_ACCESS
Inheritance flags: 0
[Edit Biber] Als Code formatiert, weil sonst so viele Smileys etwas die Ernsthaftigkeit untergraben. [/Edit]
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 175476
Url: https://administrator.de/forum/wie-kann-ich-fuer-x-beliebige-prozesse-auslesen-welche-dlls-diese-geladen-haben-175476.html
Ausgedruckt am: 08.04.2025 um 01:04 Uhr
4 Kommentare
Neuester Kommentar
Hi,
vllt. verstehe ich die Frage an meinem Urlaubstag auch falsch, aber wenn ich bei mir den Process Explorer als Administrator ausführe (Win 7 Ult. x64) und mir die ekrn.exe anschaue, also den Dienst für ESET NOD32, dann wird mir dort jede Menge an dlls aufgezählt. Mach ich das gleiche ohne "als Administrator ausführen", bekomme ich keine Dateien aufgelistet und unter Properties von ekrn.exe steht im Reiter Security für User <access denied> (als Admin: NT-AUTORITÄT\SYSTEM). Soweit scheint das bei mir korrekt zu sein.
Vielleicht kann noch jemand dieses Verhalten bestätigen?
Grüße
vllt. verstehe ich die Frage an meinem Urlaubstag auch falsch, aber wenn ich bei mir den Process Explorer als Administrator ausführe (Win 7 Ult. x64) und mir die ekrn.exe anschaue, also den Dienst für ESET NOD32, dann wird mir dort jede Menge an dlls aufgezählt. Mach ich das gleiche ohne "als Administrator ausführen", bekomme ich keine Dateien aufgelistet und unter Properties von ekrn.exe steht im Reiter Security für User <access denied> (als Admin: NT-AUTORITÄT\SYSTEM). Soweit scheint das bei mir korrekt zu sein.
Vielleicht kann noch jemand dieses Verhalten bestätigen?
Grüße
Hi !
Also manche Antivirentools installieren heute (zusätzlich zum Wächterprozess als Dienst) auch einen Kernelmode Treiber, der einen Hook setzt und alle Anfragen und (auch Speicher-) Zugriffe auf sich umbiegt (vergleichbar wie das z.B. ein Rootkit macht) daher kann es aber muss es nicht unbedingt nur an den Rechten liegen. Auch einige Kopierschutztools arbeiten so.
Sowas kannst Du dann in Echtzeit nur noch mit "Forensik-Tools" monitoren, die dann ebenfalls so oder ähnlich arbeiten oder Tools die ein Speicherabbild über die Netzwerkkarte an einen anderen Rechner zur Auswertung schicken können. In einer älteren ct wurde solche Tools schon vorgestellt, mit denen Du sehen kannst ob irgendwelche Adressen umgebogen werden oder nicht...
Und leider wiedermal nur eine allgemeine gehaltene Antwort, da wir Kaspersky schon seit einigen Jahren nicht mehr einsetzen.
mrtux
Also manche Antivirentools installieren heute (zusätzlich zum Wächterprozess als Dienst) auch einen Kernelmode Treiber, der einen Hook setzt und alle Anfragen und (auch Speicher-) Zugriffe auf sich umbiegt (vergleichbar wie das z.B. ein Rootkit macht) daher kann es aber muss es nicht unbedingt nur an den Rechten liegen. Auch einige Kopierschutztools arbeiten so.
Sowas kannst Du dann in Echtzeit nur noch mit "Forensik-Tools" monitoren, die dann ebenfalls so oder ähnlich arbeiten oder Tools die ein Speicherabbild über die Netzwerkkarte an einen anderen Rechner zur Auswertung schicken können. In einer älteren ct wurde solche Tools schon vorgestellt, mit denen Du sehen kannst ob irgendwelche Adressen umgebogen werden oder nicht...
Und leider wiedermal nur eine allgemeine gehaltene Antwort, da wir Kaspersky schon seit einigen Jahren nicht mehr einsetzen.
mrtux