Windows Installer XML (WiX)

Wurde eine neue Software entwickelt, muss diese Software noch paketiert werden. Mit Hilfe dieses Installationspaketes kann diese Software dann an die verschiedenen Windows-Clients verteilt werden. Um ein solches Installationspaket, auch Setup bezeichnet, zu erstellen gibt es verschiedene gratis und Open Source – Applikationen.

Zwei weitverbreitete Programme zum Erstellen von Windows Installationsprogramme sind NSIS und Inno Setup. Beide erstellen eine ausführbare EXE-Datei, um die Software zu installieren. Nachteil beider Installationsprogramme ist, dass sie kein standardisiertes Installationsformat verwenden. Somit ist vor der Installation nicht ersichtlich was genau installiert, beziehungsweise welche Einstellungen vorgenommen werden. Daher verwenden viele Grossfirmen lieber ein standardisiertes Format wie das „Windows Installer XML“ das durch den „Windows Installer“ bereitgestellt wird.

Der Windows Installer (vormals Microsoft Installer) stellt eine Laufzeitumgebung für Installationsroutinen unter Microsoft-Windows-Betriebssystemen bereit. Er besteht aus einem Windows-Systemdienst, welcher Paketdateien im msi-Format (Microsoft Software Installation), sowie Dateien mit den Dateiendungen mst für Transform-Dateien und msp für Patches interpretieren, entpacken und ausführen kann. [1]

Eine Programmsammlung zum Erstellen von MSI-Paketen wurde intern bei Microsoft entwickelt und später als erstes Open-Source Produkt der Firma veröffentlicht. Der Name dieser Programmsammlung ist „WiX-Toolset“. Das gesamte Installationspaket wird mit Hilfe von XML definiert. Die Einarbeitung in das „Windows Installer XML“ braucht zwar seine Zeit, wird aber durch ein praktisches GUI-Tool „WixEdit“ oder dem Visual Studio Template „Votive“ vereinfacht. Auch sehr nützlich ist das Buch von Nick Ramirez mit dem Titel „A Developer’s Guide to Windows Installer XML“.

Nützliche Links

Webseite des WiX Toolset
Webseite des WiX Edit GUI
Wikipedia: WiX
Webseite von Inno Setup
Webseite des NSIS Installer

Referenzen
[1] Wikipedia: Windows Installer

Buch: Computer-Forensik Hacks

Computer-Forensik Hacks
Computer-Forensik Hacks

Wenn man die Einleitung des Buches gelesen hat, in der man einen kleinen Überblick zur Thematik Computer-Forensik erhält, startet das erste Kapitel mit der Datensicherung. Dabei werden nicht nur die Daten von Speichermedien wie Festplatten oder USB-Sticks berücksichtigt, es werden auch die flüchtigen Daten aus dem RAM-Speicher gesichert. Wie kommt man an diese wertvollen Daten? Dies klingt nach einer sehr schwierigen Aufgabe, ins besonders wenn der Rechner noch passwortgeschützt ist… Mit der Hilfe des Buches “Computer-Forensik Hacks” ist dies beinahe kein Problem mehr. Es werden verschiedene Möglichkeiten aufgezeigt, um an diese Daten zu gelangen. Wie erfährt der interessierte in den Hack’s 4 und 5.

Das Buch “Computer-Forensik Hacks” ist eine Sammlung von Methoden, Tipps und Tricks aus der Computer-Forensik. Das Buch ist in 8 Kapitel unterteilt, in denen praktische Lösungen zu verschiedenen Problemstellungen in der Computer-Forensik, in sogenannten Hacks, Schritt für Schritt erläutert werden.

Mein Fazit

Los geht’s! Dies ist das ideale Buch, bei dem man das Gelesene gleich selber ausprobieren kann. In diesem Buch wird grundsätzlich kostenlose Software verwendet, so kann auch selber experimentiert werden. Egal ob unter Windows oder Linux, es werden beide Betriebssysteme berücksichtigt. Es macht wirklich Spass auf diese Weise spannende und komplexe Themen zu erarbeiten!

Die Webseite zum Buch

Port-Scanning mit nmap

Nmap ist ein sehr mächtiges Tool zum Herausfinden ob Ports offen sind und auf eingehende Verbindungen warten. Dazu bietet nmap verschiedene Möglichkeiten einen Scan durchzuführen:

Stealth SYN-Scan
Der SYN-Scan stellt keine vollständige Verbindung zum Zielrechner her, wie es beim “Three-Way-Handshake” üblich wäre. Dabei sendet nmap ein SYN-Paket und untersucht die Antwort des Zielrechners. Wird als Antwort ein SYN/ACK-Paket empfangen, werden Verbindungen auf diesem Port akzeptiert. Anstelle eines ACK-Paket zurückzusenden, wird die Verbindung durch nmap sofort unterbrochen, indem ein RST-Paket zum Zielrechner gesendet wird. Dies verhindert, dass der Dienst zu einem DoS Opfer wird.


sudo nmap -sS 192.168.0.1

UDP-Scan
Beim UDP-Scan sendet nmap an jeden zu prüfenden Port ein UDP-Paket, dabei ist der Paketinhalt meistens leer. Ist es jedoch ein “bekannter” Port wie 53 oder 161 wird der Inhalt des Paketes dem Protokoll angepasst.


sudo nmap -sU 192.168.0.1

Scan mit “Lockadressen” (Scan with decoys)
Das Scanning mit “Lockadressen” versucht die eigene IP-Adresse, hinter mehreren aktiven IP-Adressen, zu verstecken. Dabei sendet nmap einige Pakete mit der eigenen IP-Adresse und sendet danach gefälschte Pakete mit den Lockadressen. Ein IDS kann so zwar erkennen, dass von einigen IP-Adressen einen Port-Scan durchgeführt wird, aber welche Adresse den effektiven Scan verursacht, ist nicht einfach zu bestimmen. Wichtig dabei ist, dass “decoys” gewählt werden welche aktiv sind, damit der Zielrechner nicht Opfer eines SYN-Flooding wird.


sudo nmap -D 192.168.0.200,192.168.0.300 192.168.0.1

Im Beispiel wird der Zielrechner 192.168.0.1 gescannt. Die Lockadressen sind: 192.168.0.200 und 192.168.0.300

FIN-, X-mas- und Null-Scans
Bei diesen 3 Scans wird ein unsinniges Paket an jeden Port des Zielrechner geschickt. Wenn der Port aktiv ist, werden diese Pakete einfach ignoriert. Ist der Port jedoch geschlossen und das System reagiert wie im RFC 793 definiert, dann wird es ein RST-Paket zurückschicken. Diese Techniken funktionieren nicht auf allen Systemen, da sich nicht alle Implementierungen nach dem RFC 793 richten. Unter anderem sind das Microsoft Windows, einige Cisco-Devices, BSDI und IBM OS/400.

Null-Scan


sudo nmap -sN 192.168.0.1

Dabei ist kein einziges Flag gesetzt

FIN-Scan


sudo nmap -sF 192.168.0.1

TCP FIN-Flag ist gesetzt

X-mas-Scan


sudo nmap -sX 192.168.0.1

Da dieses Paket die Flags FIN, PSH und URG gesetzt hat, heisst die Technik xmas-scan. (Es leuchtet wie ein Weihnachtsbaum)

SYN-Scan
SYN-Scan bei einem Zielrechner mit Windows

Null-Scan
Ein Null-Scan beim selben Zielsystem, führt wegen der Implementierung zu keinem Resultat