Dubbla escape-sekvenser hänvisar till situationer där vissa tecken escapes flera gånger när de escaper en sträng. I URL-kodning escapes specialtecken ofta för att säkerställa att de skickas korrekt och tolkas av servern. Till exempel är mellanslag escaped som "%20", och plustecknet (+) är vanligtvis inte escaped eftersom det representerar ett mellanslag i URL:en. Men om servern av misstag escaper tecken som redan har escapets igen, kommer en dubbel escape-sekvens att genereras.
Servern rapporterar att förfrågningsfiltreringsmodulen är konfigurerad att avvisa förfrågningar som innehåller dubbla escape-sekvenser, vilket kan innebära att servern tror att plustecknet i URL:en har escapets två gånger, det vill säga att plustecknet escapes som %2B och flydde sedan igen Definitionen är %252B, vilket anses vara felaktigt. Servern kan avvisa en sådan begäran eftersom det kan orsaka analysfel eller säkerhetsproblem.
Revidera
applicationHost.config
Filkonfiguration, säkerhetskopiera filen innan du ändrar den för säkerhets skull.
%SystemDrive%\Windows\System32\inetsrv\config
Hitta motsvarande webbplatskonfigurationsfil under mappen, vanligtvis \applicationHost.config
, och öppna den sedan med en textredigerare (som Anteckningar).<requestFiltering>
del. I IIS 7 kan URLScan-modulen blockera URL-förfrågningar som innehåller ett plustecken som standard.<requestFiltering>
avsnitt kan du lägga till en <allowDoubleEscaping>
element, sätter dess värde till true
, för att tillåta plustecknet i webbadressen. Exempel:<security> <requestFiltering allowDoubleEscaping="true"></requestFiltering> </security>