方法一:
本地上传,修改action的地址为上传页面并且在路径后面加上*.asp;或者加个. (此法已测试成功)
方法二:
即截断,直接在路径后面加*.asp空格,然后在16进制下面将20改为00.然后抓包NC上传。这里要切记如果文件大小有变化,一定要修改包的大小。
作者觉得此方法亦较复杂,遂另辟蹊径寻得一好方法,具体如下(此乃重点):
1、首先需要安装opera游览器(非IE内核)
2、找到一处上传页面,例如:
http://www.******.com/admin/Uppic.asp?formname=myform&editname=p_pic_b&shopuppath=uppic&filelx=jpg
3、修改路径,有两种方式
①页面右键“检查元素”
然后就会启动dragonfly,之后点击左下角的那个“展开DOM树”,将代码全部展开
找到我们准备修改路径的地方,双击他的value值,就会出现修改框
修改好后,保存。然后把shell修改成gif后缀上传,即可利用IIS解析问题拿到shell。
②方法更简单,同本地上传差不多。
我们打开上传页面后,右键点击页面,选择“源代码”
打开源代码后,直接修改路径,然后点击“应用更改”
此后的过程和上面一样,选择文件即可上传。
对于Opera,这里还要说到另外一个问题,怎样获取上传后文件的地址呢?
因为这个上传页面有一个特点,上传后就关掉页面,如果是在ie内核的游览器比如TT,搜狗中都有一个确认网页关闭的选项,那么在关掉时点击取消,然后查看源代码即可获取地址。但是在opera中是没有的。
我们知道关闭页面是由javascript代码完成的,那么我们搞定js代码就行。也许有童鞋会说,那么我们编辑源代码,去掉js代码不就行了吗?
但是在这里,刚刚我们翻Uppic.asp的代码可以看到,他并没有关闭窗口的代码,关闭窗口的代码是由他的action页面 Uppicpro.asp来完成的,修改代码已不可能。
但是js代码是在客户端执行的,我们在游览器中禁用掉不就行了吗?
思路来了,come on
上传页面,右键单击,选择“编辑站点首选项”,切换到“脚本”选项卡,把“允许使用jacascript”前面的钩钩去掉
确定然后上传,页面不再关闭,顺利拿到地址
看到了后面的“window.close”了吧,测试是否上传成功