tools - Hackner Security Intelligence
tools - Hackner Security Intelligence
tools - Hackner Security Intelligence
- Keine Tags gefunden...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
SICHERHEITSANWENDUNGEN<br />
Windows Filtering Platform<br />
Netzwerkdatenfilterung unter Windows<br />
René Espenhahn<br />
Beginnend mit Windows Vista hat Microsoft die Windows Filtering<br />
Platform in ihr Betriebssystem integriert. Sie soll die vielen über<br />
Jahrzehnte entstandenen Teillösungen zur Filterung der ein- und<br />
ausgehenden Netzwerkdaten ersetzen und eine einheitliche Basis zur<br />
Filterung bereitstellen. In diesem Artikel werden die Grundlagen der<br />
Windows Filtering Platform vorgestellt. Darauf aufbauend wird ein<br />
Beispiel aus dem Windows Driver Kit näher erläutert.<br />
IN DIESEM ARTIKEL ERFAHREN SIE…<br />
• Grundlagen der Windows Filtering Platform.<br />
• Entwicklung eines Netzwerkfilters mittels der Windows Filtering<br />
Platform<br />
WAS SIE VORHER WISSEN SOLLTEN…<br />
• Aufbau des TCP/IP-Stack.<br />
• Grundlagen zur Kerneltreiberentwicklung.<br />
Einführung<br />
Mit der Veröffentlichung von Windows Vista im Jahr 2007<br />
hatte Microsoft unter dem Namen Next generation network<br />
driver stack den Netzwerkstack des Betriebssystems nahezu<br />
komplett erneuert. Zu den Neuerungen gehörte unter<br />
anderem die Windows Filtering Platform [1] (WFP). Sie sollte<br />
spätestens ab Windows 7 die verwendeten Filter-Treiber<br />
des Transport Driver Interface (TDI), die TCP/IP-Filter- und<br />
Firewall-Hook-Treiber, die Winsock Layered Service Provider<br />
(LSP) und teilweise die Intermediate-Treiber der Network<br />
Driver Interface Specification (NDIS) durch eine einheitliche<br />
Plattform zum Filtern der ein- und ausgehenden<br />
Netzwerkdaten vollständig ablösen. Unter Windows Vista<br />
hatte die WFP allerdings noch einige Kinderkrankheiten,<br />
die dazu führten, dass viele Sicherheitsfirmen sie in ihren<br />
Produkten bis Windows 7 nicht produktiv einsetzten. Einhergehend<br />
mit Windows 7 hat Microsoft die WFP verbessert<br />
und die Kinderkrankheiten weitestgehend beseitigt.<br />
Weiterhin haben sie den alten Technologien noch einen<br />
letzten zeitlichen Aufschub gegeben und nicht, wie in den<br />
Fußnoten [2] im MSDN vermerkt, deren Unterstützung mit<br />
der Veröffentlichung von Windows 7 eingestellt. Nichts desto<br />
trotz kann Microsoft TDI & Co. nun jederzeit aus ihrem<br />
Betriebssystem entfernen. Es ist somit spätestens an der<br />
Zeit auf die Windows Filtering Platform umzusteigen.<br />
Architektur der WFP<br />
Die WFP besteht aus vier Teilen, die in Abbildung 1<br />
farblich hervor gehoben sind. Von den vier Teilen befindet<br />
sich einer im User-Mode und drei im Kernel-Mode<br />
des Betriebssystems. User-Mode und Kernel-Mode<br />
sind dabei Ausführungsebenen des Betriebssystems.<br />
Im User-Mode werden alle normalen Programme wie<br />
beispielsweise Office ausgeführt, während im Kernel-<br />
Mode die Treiber sowie Betriebssystem-interne Funktionen<br />
ausgeführt werden.<br />
Seitens der WFP ist die Base Filter Engine (BFE) im<br />
User-Mode angesiedelt. Sie bietet verwaltende Schnittstellen<br />
zur Installation, Konfiguration und Deinstallation<br />
von WFP-Komponenten sowie Schnittstellen zur Statusabfrage<br />
der installierten Komponenten. Zu den Komponenten<br />
der WFP zählen hauptsächlich Filter. Damit<br />
ein Filter Netzwerkdaten filtern<br />
kann, muss er um weitere Komponenten, die in Abbildung<br />
2 um den Filter dargestellt sind, ergänzt werden.<br />
Hierbei sind vor allem die pink dargestellten Komponenten<br />
wichtig, denn sie sind zwingend für den Betrieb<br />
eines Filters notwendig. Sie werden im späteren Verlauf<br />
detaillierter erklärt. Dadurch, dass die BFE im User-Mode<br />
angesiedelt ist, lassen sich Filter innerhalb normaler<br />
Programme erstellen und konfigurieren ohne, dass<br />
zwingend ein Kernel-Mode-Treiber entwickelt werden<br />
muss. Wird ein Filter mittels der Schnittstelle der BFE<br />
installiert, landet dieser, falls er nicht auf dem Internet<br />
Key Exchange (IKE)-, IPsec- oder User-Mode Remote<br />
Procedure Call (RPC) Layer operiert, in der Kernel-<br />
Mode Filter Engine (KMFE) und somit im Kernel des<br />
Betriebssystems.<br />
10<br />
1/2011