.NET代码审计XSS篇-Html.Raw

发布时间 2023-06-08 10:54:24作者: Ivan1ee

在.NET MVC项目中,默认创建的视图,都是以cshtml为后缀的Razor视图,这种视图通常以.cshtml文件扩展名,Razor视图引擎对自动对输出的内容进行HTML编码,这些字符会被编码成HTML实体,如图1

如果确实某些场景需要在视图中显示原始HTML内容,而不进行HTML编码,可以使用Html.Raw方法。Html.Raw标签用于将字符串内容作为原始HTML内容输出到视图中,而不进行HTML编码。如定义在cshtml代码 

@{
	string htmlContent = "<script>alert(2)</script>";
}
	<h2>Raw HTML Content</h2>
	@Html.Raw(htmlContent)

在上述示例中我们定义了一个字符串变量htmlContent,其中包含一个带有<script>标签的HTML段落。