我正在进行短期承包工作,试图修补其遗留代码中的一些漏洞。我正在处理的应用程序是经典ASP(VBScript)和.Net 2.0(C#)的组合。其中一个他们所购买的工具是Fortify的360有没有人使用Fortify 360与经典ASP?标题操作漏洞报道
这里是应用程序中的当前传统的ASP页面:
<%@ Language=VBScript %>
<%
Dim var
var = Request.QueryString("var")
' do stuff
Response.Redirect "nextpage.asp?var=" & var
%>
我知道,我知道,总之,非常危险。
所以我们写了一些(EN/DE)编码器和审定/核查程序:
<%@ Language=VBScript %>
<%
Dim var
var = Decode(Request.QueryString("var"))
' do stuff
if isValid(var) then
Response.Redirect "nextpage.asp?var=" & Encode(var)
else
'throw error page
end if
%>
而且还Fortify的将其标记为容易处理标头来。 Fortify正在寻找什么或者什么?
我怀疑Fortify寻找特定关键字的原因是,在.Net方面,我可以包含Microsoft AntiXss程序集和调用函数,如GetSafeHtmlFragment
和UrlEncode
,Fortify很高兴。
有什么建议吗?
注:由于Fortify的SCA 2.6.5的,传统的ASP自定义规则不被支持。不过,这是你如何才能使它工作。 – 2011-01-01 12:48:07