Einer unserer IIS-Server (IIS 7.5, Server 2008 R2) ist anscheinend "anfällig" für das Problem der Offenlegung von Tilde-Kurzdateinamen .
Es fällt mir jedoch schwer, das Problem tatsächlich zu beheben. Bisher habe ich
Deaktivierte 8.3-Dateinamen, stoppte den Webserver, erstellte das Site-Verzeichnis neu und startete den Dienst erneut
Filterregel für eine Tilde in der URL hinzugefügt:
- Eine Filterregel für eine Tilde wurde ÜBERALL hinzugefügt:
IISRESET
ein paar MalÜberprüft, ob
web.config
die entsprechenden Filterregeln hinzugefügt wurden
.. aber trotzdem kann ich meine Seite nicht dazu bringen, den Test zu bestehen :
java -jar ~/temp/IIS-ShortName-Scanner-master/IIS_shortname_scanner.jar http://www.example.com
[...SNIP...]
Testing request method: "TRACE" with magic part: "/webresource.axd" ...
Testing request method: "DEBUG" with magic part: "" ...
Testing request method: "OPTIONS" with magic part: "" ...
Testing request method: "GET" with magic part: "" ...
Reliable request method was found = GET
Reliable magic part was found =
144 requests have been sent to the server:
<<< The target website is vulnerable! >>>
Was muss ich noch tun, um das Problem zu beheben?
BEARBEITEN: Hier DIR /x
scheinen keine 8.3-Dateinamen zu sein:
und hier ist der App-Pool für die Site (alle anderen Sites auf dem Server sind gleich):
EDIT2 : Überprüfung, dass keine 8.3-Dateinamen mehr vorhanden sind:
dir /x
. Ihre Site verfügt möglicherweise über symbolische Links zu Verzeichnissen, die noch automatisch generierte 8.3-Namen enthalten..NET Framework v4.0.30319
- siehe Screenshot in der obigen Bearbeitung.Antworten:
Versuchen Sie, nach vorhandenen kurzen Dateinamen zu suchen mit
fsutil
:fsutil 8dot3name scan /s /v E:\inetpub\wwwroot
Und zieh sie aus, wenn sie gefunden werden:
fsutil 8dot3name strip /s /v E:\inetpub\wwwroot
Wenn
magic part: ""
ich mir auch das Protokoll mit dem leeren magischen Teil ( ) ansehe, frage ich mich, ob das ein Fehler im POC sein könnte. Diese Zeile in config.xml sieht aus, als hätte sie ein zusätzliches Komma nach/webresource.axd
:Ich habe dev gefragt. via Twitter darüber und er antwortete:
Es scheint also, dass du jetzt in Sicherheit bist :)
quelle
magic part: ""
ich mir das Protokoll mit dem leeren magischen Teil ( ) ansehe, frage ich mich, ob das ein Fehler im POC sein könnte. Diese Zeile in config.xml sieht aus, als hätte sie ein zusätzliches Komma nach/webresource.axd
:<entry key="magicFinalPartList"><![CDATA[\a.aspx,\a.asp,/a.aspx,/a.asp,/a.shtml,/a.asmx,/a.ashx,/a.config,/a.php,/a.jpg,/webresource.axd,,/a.xxx]]></entry>
auch "HINWEIS: Die Änderung des Registrierungseintrags NtfsDisable8dot3NameCreation betrifft nur Dateien, Ordner und Profile, die nach der Änderung erstellt wurden. Bereits vorhandene Dateien sind nicht betroffen."
Hinweis: Obwohl das Deaktivieren der Erstellung von 8.3-Dateinamen die Dateileistung unter Windows erhöht, können einige Anwendungen (16-Bit, 32-Bit oder 64-Bit) möglicherweise keine Dateien und Verzeichnisse mit langen Dateinamen finden.
quelle
Leider ist die einzige Möglichkeit, wirklich damit umzugehen, eine nervige Reihe von Schwankungen, die je nach Windows-Version die Möglichkeit deaktivieren, 8.3-Namen zu generieren.
Für Ihre Windows-Version:
Um die Erstellung von 8.3-Namen auf allen NTFS-Partitionen zu deaktivieren, geben Sie an einer Eingabeaufforderung mit erhöhten Rechten fsutil.exe behaviour set disable8dot3 1 ein und drücken Sie die Eingabetaste.
Quelle: http://support.microsoft.com/kb/121007
quelle
dir /x
zeigt keine kurzen Dateinamen im Verzeichnis der Sitefsutil
Befehl scheint nur diesen Schlüssel für mich festzulegen.Ich bin mir nicht ganz sicher, wie sicher das Skript funktioniert und wie Ihr Netzwerk eingerichtet ist, aber wie wäre es, wenn Sie über etwas vor dem IIS-Server filtern (selbst wenn es sich nur um ein virtuelles Gerät in einer virtuellen Maschine handelt)? Sie richten nämlich ein IPS mit einer Regel ein, die speziell den Datenverkehr zu diesem bestimmten Problem senkt?
quelle