【发布时间】:2020-10-23 02:10:32
【问题描述】:
我正在做一个安全工具在下面的代码中检测 xss 漏洞的项目
<asp:DataList ID="lstForums" SkinID="lstForums2" runat="server">
<ItemTemplate>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "Description")%>
</td>
</tr>
</ItemTemplate>
</asp:DataList>
然后解决我添加HttpUtility.EncodeHtml如下
<%# HttpUtility.HtmlEncode(DataBinder.Eval(Container.DataItem, "Description"))%>
但是安全扫描的结果还是一样,我应该怎么做那个代码xss证明?
注意:当我删除该行时,安全扫描将通过
【问题讨论】:
-
不确定这是否重要,但您的绑定中还有一个额外的
)Decription"))。不管怎样,你能试试这个<%# Microsoft.Security.Application.AntiXss.HtmlAttributeEncode(DataBinder.Eval(Container.DataItem, "Description"))%>,行吗?您需要确保导入System.Web.Security.AntiXss命名空间。 -
@Çöđěxěŕ 谢谢,那是错字;),由于项目是 .net 4 AntiXSS 不存在,我需要通过我不允许的 nuget 包添加它
标签: asp.net vb.net security xss secure-coding