Secvențele duble de evadare se referă la situații în care anumite caractere sunt evadate de mai multe ori atunci când evadează un șir. În codificarea URL, caracterele speciale sunt adesea eliminate pentru a se asigura că sunt transmise corect și analizate de server. De exemplu, spațiile sunt scapă ca „%20”, iar semnul plus (+) nu este de obicei scapat deoarece reprezintă un spațiu în adresa URL. Cu toate acestea, dacă serverul scapă din greșeală caractere care au fost deja scăpate din nou, va fi generată o secvență de evadare dublă.
Serverul raportează că modulul de filtrare a cererilor este configurat pentru a respinge cererile care conțin secvențe duble de evadare, ceea ce poate însemna că serverul consideră că semnul plus din adresa URL a fost eliminat de două ori, adică semnul plus este eliminat ca %2B și apoi a scăpat din nou Definiția este %252B, care este considerată incorectă. Serverul poate respinge o astfel de solicitare deoarece poate cauza erori de analizare sau probleme de securitate.
Revizui
applicationHost.config
Configurarea fișierului, vă rugăm să faceți o copie de siguranță a fișierului înainte de a-l modifica pentru orice eventualitate.
%SystemDrive%\Windows\System32\inetsrv\config
Găsiți fișierul de configurare a site-ului corespunzător sub folder, de obicei \applicationHost.config
, apoi deschideți-l cu un editor de text (cum ar fi Notepad).<requestFiltering>
parte. În IIS 7, modulul URLScan poate bloca cererile URL care conțin semnul plus în mod implicit.<requestFiltering>
secțiunea, puteți adăuga o <allowDoubleEscaping>
element, setându-și valoarea la true
, pentru a permite semnul plus în adresa URL. Exemplu:<security> <requestFiltering allowDoubleEscaping="true"></requestFiltering> </security>