如何替gridview加入htmlencode.以避免XSS persistent

好用的小TOOL

引用至RM  http://www.dotblogs.com.tw/rainmaker/archive/2012/11/27/85189.aspx

Cross-Site Scripting: Persistent(Input Validation and Representation, Data flow) 的嚴重缺失,

因為Fortify無法得知如果在Code中處理Server.HtmlEncode(請參考:[ASP.NET]Input Validation and Representation, Data flow),所以只好直接在aspx中找Eval的部份,然後加上Server.HtmlEncode。

因為程式支數蠻多的,而這個有個Pattern可以Replace,所以就寫個Replace Tool來Replace,

在C# ASPX中,要將 Text='<%# Eval("c2") 

置換成 Text='<%# Server.HtmlEncode(Convert.ToString(Eval("c2")))

在VB.NET ASPX中,要將 Text='<%# Eval("c2")

 置換成  Text='<%# Server.HtmlEncode(Convert.HtmlEncode(Eval("c2")))

當然,如果您要使用AntiXssLibrary的方式也可以哦!

創作者介紹
創作者 CR的部落格 的頭像
applebear1982

CR的部落格

applebear1982 發表在 痞客邦 留言(0) 人氣( 2256 )