gypakk
Goto Top

Tool zum Mitschreiben aller Aktionen bzw. DLL-Aufrufe eines Programms?

Hallo,

ich möchte ein Programm "überwachen" und alle seine Betriebssystem-Funktionsaufrufe protokollieren.

Gibt es dafür ein Tool?

Content-Key: 76663

Url: https://administrator.de/contentid/76663

Printed on: April 23, 2024 at 22:04 o'clock

Member: ITCHeinrichs
ITCHeinrichs Dec 26, 2007 at 14:17:38 (UTC)
Goto Top
Na Klar!

Dateien: filemon
Registry: regmon

Die Progs gibt es hier: Microsoft Technet

Gruß
Markus
Member: gnarff
gnarff Dec 26, 2007 at 14:25:00 (UTC)
Goto Top
Ja, heißt Dependency Walker 2.2...

saludos
gnarff
Member: gypakk
gypakk Dec 26, 2007 at 18:12:43 (UTC)
Goto Top
Hallo & erstmal danke für die Tipps!

Den "Dependency Walker" verwende ich recht oft. Prima Tool. Leider zeigt er nur die statischen Abhängigkeiten von Programmen und DLLs. Er besitzt keine Protokollfunktion, mit der man sehen kann, welche API-Funktion wann aufgerufen wird.

Der "Process Monitor von Sysinternals" ist auch super. Ich kann damit recht schön sehen, was welches Programm in die Registry schreibt und wie die Dateizugriffe ablaufen. Aber auch damit kann ich keine API-Aufrufe mitschreiben. Außer, ich hab's übersehen... face-sad

Grüße gypakk
Member: gnarff
gnarff Dec 26, 2007 at 18:31:43 (UTC)
Goto Top

Aber auch damit kann
ich keine API-Aufrufe mitschreiben.
Außer, ich hab's übersehen...
face-sad
Aber das kannst Du doch mit einem einfachen Debugger wie WinDbg machen Debugger tricks: API call logging, the quick’n'dirty way Part 1-3

Oder, einen hätt' ich noch W32 API Monitor...

saludos
gnarff
Member: gypakk
gypakk Dec 28, 2007 at 19:39:29 (UTC)
Goto Top
Danke!
Inzwischen bin ich ein Stückchen weiter. Der Trick mit WinDbg ist etwas mühsam. Ich halte es für eine guten und sehr flexiblen Weg, wenn man gezielt nach einem bestimmten Funktionsaufruf sucht.

Für meine Zwecke war's aber nichts, weil ich keine Ahnung habe, welche Funktionen das Programm verwendet. Daher fiel meine Wahl auf den API-Monitor. Neben dem von www.apimonitor.com habe ich noch einen kostenlosen gefunden, der anscheinend kostenlos ist: www.rohitab.com/apimonitor

Beide sind nicht ideal, beide haben Vor- und Nachteile, so dass ich sie abwechselnd für die Suche verwenden musste.
Gelegentlich stürzt die Anwendung ab, gelegentlich der Monitor. Wohl ein Zeichen dafür, dass ich mich da recht systemnah bewege...

Vorher hab ich mir mit Dependency Walker einen Überblick darüber verschafft, welche DLLs überhaupt genutzt werden. Alle API-Aufrufe aller DLLs gleichzeitig mitzuloggen ist kaum möglich, das bremst die Anwendung auf Null runter.

Was soll ich sagen, ich hab viel rausgefunden. Vor allem, wie man diese Werkzeuge bedient. face-smile Auch über das Testobjekt weiß ich nun etwas mehr.
Aber das, was ich eigentlich suchte, war nicht zu finden.

Das Programm baut nämlich auf Wunsch (Button-Klick) eine Netzwerkverbindung auf. Dabei handelt es sich um eine bei den Windows-Netzwerkverbindungen registrierte Ethernet-Verbindung.
Ich kenn sowas ja aus der RAS-Schublade. Aber wie macht man das mit einer Ethernet-Verbindung? Vor allem dann, wenn der Benutzer, der die Verbindung aufbaut (und abbaut), keine Adminrechte hat...?
Member: gnarff
gnarff Dec 29, 2007 at 15:26:19 (UTC)
Goto Top

Das Programm baut nämlich auf Wunsch
(Button-Klick) eine Netzwerkverbindung auf.

Wo ist der Button, wie ist das implementiert?

Aber wie macht man das mit einer
Ethernet-Verbindung? Vor allem dann, wenn der
Benutzer, der die Verbindung aufbaut (und
abbaut), keine Adminrechte hat...?

Solange der Admin dem Benutzer das Aufbauen einer Netzwerkverbindung nicht gestattet, so kann er dies schwerlich tun.
Kann es sein, dass es eher daran liegt, dass dem Benutzer überdies untersagt ist Programme auszuführen?
Dann musst Du für eben dieses Programm eine Ausnahmeregelung definieren...

Falls ich im Dunklen tappe, erhelle meinen Geist mit ausführlicheren Informationen.

saludos
gnarff
Member: gypakk
gypakk Dec 30, 2007 at 23:29:06 (UTC)
Goto Top
Also, der Button ist im Fenster der (für mich) rätselhaften Software zu sehen.

Das Witzige ist, dass der User die Verbindung wohl gar nicht selbst aufbaut. Der Netzwerkadapter ist dauerhaft installiert und aktiv. Aber er hat nicht immer eine Verbindung, sondern nur dann, wenn er sich ins Mobilfunknetz einwählt.

Jedes Mal, wenn wenn sich das Gerät neu verbindet, erhält er eine andere IP aus dem Funknetz zugeteilt. Das scheinen die Routing-Einträge in Windows aber nicht mitzubekommen, das heißt, das dort eingetragene Standard-Gateway hat weiterhin die alte IP.

Inzwischen hab ich eine Notlösung für dieses Problem (Hardware-Reset des Adapters), aber eleganter wär's natürlich, wenn es noch anders ginge. Die Original-Software schafft das auch irgendwie...

Nachtgrüße
gypakk
Member: gnarff
gnarff Dec 30, 2007 at 23:42:31 (UTC)
Goto Top

Also, der Button ist im Fenster der (für
mich) rätselhaften Software zu sehen.

Ja, wie heißt denn die rätselhafte Software; und - was gibt sie vor zu tun??

saludos
gnarff
Member: gypakk
gypakk Dec 31, 2007 at 09:15:13 (UTC)
Goto Top
Die "rätselhafte" Software ("Mobility Manager" von www.option.com) tut eigentlich nicht sehr viel.
Sie initialisiert das UMTS-Modem (USB-Schnittstelle) und startet dann den Verbindungsaufbau.

Ersteres läuft über eine serielle Schnittstelle, die der Treiber des Geräts bereitstellt (AT-Befehle), es ist nicht weiter kompliziert.
Bei Zweiterem bin ich noch etwas verwirrt. Aber - wie gesagt - ich hab eine Notlösung, daher kann ich wieder einigermaßen schlafen. face-wink
Member: gnarff
gnarff Dec 31, 2007 at 14:49:09 (UTC)
Goto Top
Hast Du die Software schon einmal durch einen Disassembler gejagt?
Falls man den rätselhaften Patienten kostenlos herunterladen kann, werde ich das einmal tun...

saludos
gnarff
Member: gypakk
gypakk Jan 01, 2008 at 00:24:33 (UTC)
Goto Top
Ich fürchte, einen freien Download gibt's für die Software nicht. Sie befindet sich direkt auf dem Gerät und wird durch ein temporär gemountetes USB-Laufwerk auf den PC gespielt.

Disassembler? Hab ich nie verwendet. Kannst du mir einen empfehlen?

Ach ja: Willkommen im neuen Jahr! face-smile
Member: gnarff
gnarff Jan 01, 2008 at 02:21:24 (UTC)
Goto Top
Ja, auch von mir ein schönes neues Jahr!
Lade Dir mal die Demoversion von IDA Pro 5.1 herunter, exzellentes Werkzeug und sollte Deinen Anforderungen genügen...

saludos
gnarff
Member: gypakk
gypakk Jan 02, 2008 at 20:38:25 (UTC)
Goto Top
Oh, danke für den Tipp!
Das ist wirklich ein unheimlich mächtiges Werkzeug! Faszinierend...

Ich werd versuchen, das Problem zu lösen und dann wieder berichten.

Grüße gypakk
Member: gnarff
gnarff Jan 02, 2008 at 20:48:17 (UTC)
Goto Top

Oh, danke für den Tipp!
Das ist wirklich ein unheimlich
mächtiges Werkzeug! Faszinierend...

Ja, der Preis für die Vollversion ist ebenfalls faszinierend : 1500$ ;aber jeden Cent wert...

saludos
gnarff