很普通的一个任意下载文件漏洞。网站是某学校老师开发的,站点整体安全性很好,但忽略了对文件下载方式的处理,同时还暴露出了路径。

网站因此被突破。要是换在几年前,这套程序被用于某地区政府、公司企业以及学校等多个单位之中,由此引发的安全问题可想而知。

懂的人明白我的意思。某黑客从大陆上面下来,为全省XX做安全。于是想到了以前的。。。。

代码如下:


< %
call downloadFile(Request("path"))
function downloadFile(strFile)
dds="admin/"&Request("xx")&"http://www.2cto.com/"&Request("path")
  strFile=trim(dds)
 strFilename = server.MapPath(strFile)
 Response.Buffer = True
 Response.Clear
 Set s = Server.CreateObject("ADODB.Stream")
 s.Open
 s.Type = 1
 on error resume next
 Set fso = Server.CreateObject("Scripting.FileSystemObject")
 if not fso.FileExists(strFilename) then
  Response.Write("
没有文件:" & strFilename & " does not exist

")
  Response.End
 end if
 Set f = fso.GetFile(strFilename)
 intFilelength = f.size

s.LoadFromFile(strFilename)
 if err then
  Response.Write("


没有文件:

" & err.Description & "

")
  Response.End
 end if

Response.AddHeader "Content-Disposition", "attachment; filename=" & f.name
 Response.AddHeader "Content-Length", intFilelength
 Response.CharSet = "UTF-8"
 Response.ContentType = "application/octet-stream"

Response.BinaryWrite s.Read
 Response.Flush

s.Close
 Set s = Nothing

End Function
%>
顺便扯淡下。Chrome浏览器针对于智能ABC这样的老古董崩溃情况什么时候能解决。