Sulla mia applicazione ASP.NET MVC, sto cercando di implementare un URL come di seguito:doppia sequenza di escape all'interno di un'URL: Il modulo di richiesta di filtraggio è configurato per rifiutare una richiesta che contiene una doppia fuga sequenza
/prodotto/tag/per + le famiglie
Quando provo a fare funzionare la mia applicazione con configurazioni di default, sto ottenendo questo messaggio con il codice di risposta 404,11:
Errore HTTP 404.11 - Non trovato
Il modulo di filtro richieste è configurato per negare una richiesta che contenga una sequenza di escape doppia.
posso andare in giro con questo errore implementando il codice di seguito all'interno del mio web.config:
<system.webServer>
<security>
<requestFiltering allowDoubleEscaping="true" />
</security>
</system.webServer>
Così, ora non sto ottenendo alcun 404.11
.
Quello che mi chiedo è che tipo di buchi di sicurezza sto aprendo con questa implementazione.
BTW, la mia domanda è sotto .Net Framework 4.0
e in esecuzione sotto IIS 7.5
.
È possibile raggiungere la risorsa desiderata utilizzando invece '/ product/tags/for% 20families'? Quindi hai una soluzione alternativa per gli ID che contengono spazi. O sono completamente fuori di qui? –
@atornblad un po 'fuori credo. La mia domanda: ** Quello che mi chiedo è che tipo di buchi di sicurezza che sto aprendo con questa implementazione. ** – tugberk
IIS sta lanciando il carattere "+", che è [comportamento predefinito di Microsoft]. (Http: // blogs .iis.net/thomad/IIS7-rigetto-URL-contenenti) –