Okt
14
Written by:
andy
14.10.2006
Arron Margosis ist ein Microsoft Consultant, der ein außergewöhnliches Tool geschrieben hat: LUA BugLight ist ein Tool mit dem die Berechtigungen analysiert werden können, die ein Programm benötigt um im nicht administrativen Kontext zu arbeiten. LUA steht für Limited User Account. Wer kennt es nicht, ein Programm lässt sich als Administrator starten jedoch nicht als „normaler“ Benutzer. Jetzt kommen normalerweise die typischen Tools wie FileMon und RegMon zum Einsatz und die Analyse beginnt.
Tritt ein Fehler auf, kann ein Programm nicht weiter ausgeführt werden, wird das Programm beendet und man kann die entsprechende Anpassung am System vornehmen und wieder von vorne beginnen. LUA BugLight geht einen anderen Weg.
Das zu untersuchende Programm wird unter LUA BugLight gestartet. Ruft ein Programm eine API Funktion auf und während des Aufrufes eine Access violation festgestellt wird, wird die selbe API Funktion nochmal mit den gleichen Parametern - jedoch diesmal als Administrator - aufgerufen. Das Ergebnis wird an das Programm zurückgegeben so als hätte es nie eine „Access violation“ gegeben. Der Aufruf der API Funktion als Administrator wird von LUA BugLight protokolliert und das Programm arbeitet „normal“ weiter. Dieser Vorgang wird solange fortgesetzt bis das Programm beendet wird. Zum Schluss erhält man einen Report über alle Access violations die von LUA entdeckt worden sind.
LUA BugLight verwendet detour, welches von Microsoft Research entwickelt wurde. Detour ist eine Bibliothek mit der API Aufrufe unterbrochen werden können und durch eigene Aufrufe ersetzt werden. (JA! Ihr RootKit Programmierer, Microsoft entwickelt so etwas selbst!!) LUA BugLight verwendet nun genau diese Bibliothek um API Aufrufe zu analysieren. Greift ein zu untersuchendes Programm jetzt auf eine Funktion zu die einen Access Violation erzeugt, führt LUA BugLight den API Aufruf nochmal im administrativen Kontext aus und gibt das Ergebnis an das ursprüngliches Programm zurück. D.h. die Analyse des Programmes kann weiter geführt werden. Wird das Programm beendet wird ein Bericht über die fehlgeschlagenen Funktionsaufrufe erstellt.
Das Programm hat zwar noch jede Menge Einschränkungen (z.B. kein WMI Support) aber ich finde es ist ein sehr guter Ansatz um endlich die "Nur Administrator sind echte Männer" Mentalität zu eliminieren.
Ich kann nur hoffen das Arron die Entwicklung von LUA BugLight weiter vorantreibt.
Copyright ©2006 Andreas Lucas
Tags: