2。XSS漏洞(跨站脚本攻击漏洞)这个吗?是一个很难防范的漏洞。美国安全专家曾经讲过这个漏洞是无法防止的。其实最普遍是我们常见的
COOKIES欺骗这都是跨站漏洞的。大家知道有很多这样的语句。跨站任意执行的代码。如果寻找到的XSS漏洞可以任意执行任何的Javascript脚
本,那安全性也是不容忽视的.通过Javascript脚本其实也可以做一些恶意的攻击,甚至可以获得一些WEB
程序的源代码,当然这个要看大家对Javascript脚本的熟悉程度。其实这个漏洞呀我不是很内行.
3。上传 漏洞;
上传漏洞:其实那就是个将我们的木马传到服务器内.然后那我们进行控制,但是没有几个网站管理员这么傻,让你直接上传的.哈哈
不过那我们可以想办法的.
看下面的代码:
sub upload_0()
set upload=new UpFile_Class ''建立上传对象
upload.GetDate (int(Forum_Setting(56))*1024) '取得上传数据,不限大小
iCount=0
if upload.err > 0 then
select case upload.err
case 1
Response.Write "请先选择你要上传的文件 [ <a href=# onclick=history.go(-1)>重新上传</a> ]"
case 2
Response.Write "图片大小超过了限制 "&Forum_Setting(56)&"K [ <a href=# onclick=history.go(-1)>重新上传</a> ]"
end select
exit sub
else
formPath=upload.form("filepath")
''在目录后加(/)
if right(formPath,1)<>"/" then formPath=formPath&"/"
for each formName in upload.file ''列出所有上传了的文件
set file=upload.file(formName) ''生成一个文件对象
if file.filesize<100 then
response.write "请先选择你要上传的图片 [ <a href=# onclick=history.go(-1)>重新上传</a> ]"
response.end
end if
fileExt=lcase(file.FileExt)
if CheckFileExt(fileEXT)=false then
response.write "文件格式不正确 [ <a href=# onclick=history.go(-1)>重新上传</a> ]"
response.end
end if
randomize
ranNum=int(90000*rnd)+10000
filename=formPath&year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&fileExt
if file.FileSize>0 then ''如果 FileSize > 0 说明有文件数据
file.SaveToFile Server.mappath(filename) ''保存文件
' response.write file.FilePath&file.FileName&" ("&file.FileSize&") => "&formPath&File.FileName&" 成功!<br>"
response.write "<script>parent.document.forms[0].myface.value='"&FileName&"'</script>"
iCount=iCount+1
end if
set file=nothing
next
set upload=nothing
session("upface")="done"
Htmend iCount&" 个文件上传结束!"
end if
end sub
在上面代码中可以看到这样一句:
filename=formPath&year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&fileExt
filename是它保存的文件名,它是依照上传时间来命名的,最后扩展名是表单中提交出来的文件的扩展名.程序中对提交文件的类型做了限制,显
然想直接上传ASP文件是不可行的.(这个是必须的)但是我们来看一下做为后辍的依据从哪里来的呢?我们可以在reg_upload.asp中找到这样的代
码:
<form name="form" method="post" action="upfile.asp" enctype="multipart/form-data" >
<input type="hidden" name="filepath" value="uploadFace">
<input type="hidden" name="act" value="upload">
<input type="file" name="file1">
<input type="hidden" name="fname">
<input type="submit" name="Submit" value="上传" onclick="fname.value=file1.value,parent.document.forms
[0].Submit.disabled=true,
parent.document.forms[0].Submit2.disabled=true;">
</form>
这样,我们知道了,程序是提取file1表单和fname表单中的值来做判断的.也就是说直接从页面递交我们的ASP文件
也是行不通了,但是,如果是我们自己构造数据包的话就不一样了.我们的方法就是自已构造数据包来达到欺骗的目的.
将提交的file1表单和fname表值改成合法的文件名称.这样就可以绕过文件类型的检测了.
我们的目的是要让我们上传的文件名改成ASP,这样我们才可以利用.这个句子是经典的
formPath&year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&fileExt
这句话将一段字符串合并起来.我们能改的就是formPath参数.在计算机中检测字符串的关键就是看是否碰到'\0'字符,
如果是,则认为字符串结束了.也就是说我们在构造上传文件保存路径时,只要欺骗计算机,让他认为合法的就好了.
例如:"uploadface\zwell.asp"
这样的路径参数已经OVER,这样,后面时间字符我们都删除,从而达到直接将文件保存为我们文件名的目的.
因些,我们要做的是在构造的数据包中,将表单中的filepath改成类似uploadface\zwell.asp'\0'的字符串然后发送出去就行了.
哈哈很简单的哈哈.例如:
自己的小经验:
有些网站没有过滤 CER文件.CER文件支持ASP网站.我们可以用CER这个文件进行上传。有些网站没有过滤CER文件。还有有些文件服务器过滤
ASP木马时,总是查看前几个文件。例如:我们木马文件是1.asp这很明显一定被过滤出来。
但是我们这样1.a.asP这样就不会被过滤了。但是凡是都有例外。哈哈是吧!
希望大家给些意见吧!
4。本地上传
这个方法其实可能有人问我什么是本地上传,
本地上传是原代码可以在浏览器上看见的。这是
如果看不到那么就是服务器上传。
那么怎么应用那
接下来也是我要说的:
例如:我自己也想不出来一个表达的方式.
假如一个网页我们发现了一个可以利用的界面,但是那,原代码不存在过滤失误问题.我们该怎么办那.
哈哈当然有方法:
那么我们首先:把这个HTML文件保留下来。原代码保存下来.
那些代码不是不利于我们进行渗透吗?
我们把他改正以下.
改成利于我们的代码,我们直接可以利用的代码.
哈哈就是这么简单的.这个是本地上传的好处.不过那建议大家用腾讯的浏览器.他可以随意看代码.因为有些网站限制了.但是腾讯的浏览器可以
显示的.之后那我们还要构成完整.我们还要抓包的.
然后我们用抓包工具来进行抓包,我喜欢用WSE这个软件来进行抓包.
可能有的朋友这么问,抓什么?
大家看他这个网页应该是可以传递的往哪里传这是我们抓包的东西.
我们可以用WSE来抓包的抓到之后,将我们抓到东西。放在ACTION后面就好了。
例如:action
我们抓到的传到的网站)之后大家都会了吧!