2012-06-21 12 views
5

C'è un rischio nell'uso di @Html.Raw? Mi sembra che non dovrebbe esserci. Se esiste un rischio, questo rischio non esisterebbe a prescindere dall'utilizzo di @Html.Raw in quei browser moderni come Chrome consentirà un'iniezione di modifica di <script>malicious()</script> o anche di modificare l'azione di un modulo in qualcos'altro.C'è un rischio nell'uso di @ Html.Raw?

risposta

5

@Html.Raw consentirà l'esecuzione di qualsiasi script sul valore da visualizzare. Se si desidera impedire che sia necessario utilizzare @Html.AttributeEncode

4

Corretto, il rischio è in che modo viene utilizzato. Non c'è alcun rischio inerente a Html.Raw. È uno strumento, niente di più.

+10

E lo stesso si può dire di senape. O gas mostarda. –

2

Se si visualizzano le informazioni immesse dall'utente, è preferibile utilizzare @ Html.Encode().

In altre parole, se displaying non-user eneterd data si sono sicuri di andare con @ Html.Raw()

+1

Questo è un buon punto, e sono completamente d'accordo :) Ma il mio utilizzo è destinato all'output di una casella di input da un helper html, quindi penso che sarò al sicuro. –

Problemi correlati