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-ID: 76663

Url: https://administrator.de/forum/tool-zum-mitschreiben-aller-aktionen-bzw-dll-aufrufe-eines-programms-76663.html

Ausgedruckt am: 23.12.2024 um 11:12 Uhr

ITCHeinrichs
ITCHeinrichs 26.12.2007 um 15:17:38 Uhr
Goto Top
Na Klar!

Dateien: filemon
Registry: regmon

Die Progs gibt es hier: Microsoft Technet

Gruß
Markus
gnarff
gnarff 26.12.2007 um 15:25:00 Uhr
Goto Top
Ja, heißt Dependency Walker 2.2...

saludos
gnarff
gypakk
gypakk 26.12.2007 um 19:12:43 Uhr
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
gnarff
gnarff 26.12.2007 um 19:31:43 Uhr
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
gypakk
gypakk 28.12.2007 um 20:39:29 Uhr
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...?
gnarff
gnarff 29.12.2007 um 16:26:19 Uhr
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
gypakk
gypakk 31.12.2007 um 00:29:06 Uhr
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
gnarff
gnarff 31.12.2007 um 00:42:31 Uhr
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
gypakk
gypakk 31.12.2007 um 10:15:13 Uhr
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
gnarff
gnarff 31.12.2007 um 15:49:09 Uhr
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
gypakk
gypakk 01.01.2008 um 01:24:33 Uhr
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
gnarff
gnarff 01.01.2008 um 03:21:24 Uhr
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
gypakk
gypakk 02.01.2008 um 21:38:25 Uhr
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
gnarff
gnarff 02.01.2008 um 21:48:17 Uhr
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