Jun 192010
 
  • Betrifft: IIS 7.0 und IIS 7.5
  • System: Microsoft Windows Server 2008, Windows Server 2008 R2
  • Problem: Zugriff auf Dateien mit „+“ im Namen schlagen fehl, unter anderem Notwendig bei Microsoft Active Directory Zertifizierungsstelle

Hintergrund

Beim Zugriff auf eine Datei mittels Webbrowser erhält man einen Serverfehler. Die Webseite wird dabei im IIS 7.0 oder IIS 7.5 auf einem Windows Server betrieben.

In meinem konkreten Fall werden die „Internetinformationsdienste 7.5“ unter Windows Server 2008 R2 verwendet. Die Fehlerzusammenfassung zeigt folgendes an:

iis7_http_error_404-11

HTTP-Fehler 404.11 – Not Found

Das Anforderungsfilterungsmodul ist so konfiguriert, dass Anforderungen abgelehnt werden, die eine doppelte Escapesequenz enthalten.

AusfĂĽhrliche Fehlerinformationen

Modul RequestFilteringModule
Benachrichtigung BeginRequest
Handler StaticFile
Fehlercode 0x00000000
Angeforderte URL http://*+.*
Physikalischer Pfad C:\*+*
Anmeldemethode Noch unbestimmt
Angemeldeter Benutzer Noch unbestimmt

Wahrscheinlichste Ursachen:

· Die Anforderung enthielt eine doppelte Escapesequenz, und die Anforderungsfilterung ist auf dem Webserver so konfiguriert, dass doppelte Escapesequenzen abgelehnt werden.

Mögliche Vorgehensweise:

· ĂśberprĂĽfen Sie die Einstellungen fĂĽr „configuration/system.webServer/security/requestFiltering@allowDoubleEscaping“ in der Datei „applicationhost.config“ oder „web.config“.

Links und weitere InformationenHierbei handelt es sich um ein Sicherheitsfeature. Ă„ndern Sie dieses Feature nur, wenn Sie sich ĂĽber die Auswirkungen der Ă„nderung vollständig im Klaren sind. Vor dem Ă„ndern dieses Werts sollten Sie eine Ablaufverfolgung im Netzwerk ausfĂĽhren, um sicherzustellen, dass die Anforderung nicht bösartig ist. Wenn doppelte Escapesequenzen vom Server zugelassen werden, ändern Sie die Einstellung „configuration/system.webServer/security/requestFiltering@allowDoubleEscaping“. Dies kann auf eine falsch formatierte URL zurĂĽckzufĂĽhren sein, die von einem böswilligen Benutzer an den Server gesendet wurde.

Behebung

In der Standardeinstellung werden doppelte Escapesequenzen blockiert. Damit können unter anderem keine Dateien geladen werden, die im Namen ein „+“ enthalten. Bei manchen Webdiensten ist es jedoch erforderlich, dass diese Zeichen zugelassen werden.

Unter anderem ist die Active Directory Zertifizierungsstelle ein solcher Webdienst. Hierbei wird die Zertifikat-Deltasperrliste auf diese Weise verteilt. Im Dateinamen ist dabei ein Plus vorhanden.

Die Behebung ist dabei recht simpel.

  1. Der Command-Prompt muss mit Administratorenrechte gestartet werden.
    1. mit „Windows-Taste + R“ und danach im AusfĂĽhren-Fenster „cmd“ eingeben.windows_run_cmd2
    2. mittels Windows-Suche nach dem Programm „cmd“ suchen, Rechtsklick mit der Maus und „Als Administrator starten“ auswählen. windows_run_cmd1
  2. Es wird der Command-Prompt oder auch Konsolenfenster geöffnet.
  3. Nun muss der Ordner gewechselt werden. Dazu folgendes eingeben:
    %windir%\system32\inetsrv
  4. Danach kommt der eigentliche Befehl. Statt „Default Web Site“ bitte die eigene Webseitenbezeichnung eingeben. Dies kann im Internetinformationsdienste (IIS)-Manager ausgelesen werden.iis7_manager
    Appcmd set config „Default Web Site“ /section:system.webServer/Security/requestFiltering -allowDoubleEscaping:True
  5. Die Erlaubnis von doppelten Escapesequenzen wird dabei nur fĂĽr die entsprechend angegebene Webseite erlaubt. Alle anderen bleiben auf der Standardeinstellung.

Weitere Information ist auch in der Microsoft Knownledge Base KB 942076 zu finden – IIS 7.0: „HTTP-Fehler 404.11 – URL_DOUBLE_ESCAPED“.

weitere relevante Beiträge...

 Antworten

Du kannst diese HTML Tags und Attribute benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(erforderlich)

(erforderlich)