当任意文件上传偶遇Safedog
0x01 写在前面
渗透过程中可能会经常遭遇WAF,此时不要轻易放弃,绞尽脑汁竭尽全力,或许弹尽粮绝之时也是柳暗花明之日。
0x02 过狗上传
一次项目渗透过程中,找个一处上传功能

先上传图片,测试上传功能是否正常

功能正常,那么我们尝试上传木马

出现了安全狗,asp后缀直接被拦截了,尝试asa后缀:

还是不行,再次尝试cer、cdx、aspx、asmx、ashx等后缀都失败了,网站中间件是IIS7.5,已测试不解析php,自然也不会有解析漏洞。
这个时候我们发现上传表单中存在filelx参数,值为jpg,那么思路来了,修改为asp再次尝试

提示文件类型无法上传,修改为其他非jpg后缀时都是相同提示,猜测这里应该是白名单过滤。测试发现参数filepath控制上传路径,并且可以随意更改,我们简单尝试下

这里我们发现了一个非常有趣的现象,当我把路径改为upload/a时,上传文件路径就变成upload/a时间戳.jpg,这时我们灵感来了,如果我把路径后面的时间戳.jpg截断会发生什么?
我们果断构造路径upload/a.asp%00,%00用shift+ctrl+u转换下,提交数据包:

bingo,这里结果和我们预想的一样,浏览器访问一下:

文件存在,但是出现了错误,没关系,我们传下正常的asp webshell。几经尝试之后,我们终于通过脏数据+shell代码成功上传webshell。
0x03 执行受阻
拿了shell我们当然是上蚁剑梭哈了:

但是蚁剑提示了黑名单URL地址,这倒是从来没有遇到过,百度搜索也无果,这里更换菜刀尝试一下,有狗那么我们优先尝试过狗刀:

失败,继续尝试其他版本菜刀。这里又尝试了11版菜刀、14版菜刀、16版菜刀、CKnife、Altman,结果不尽人意,全部失败了。
不得已,我们直接祭出网页版webshell管理工具,成功连上webshell:

但是网页版实在是太蛋疼了,这里通过网页版上传冰蝎马,成功连上冰蝎:

但是此时高兴似乎还太早,执行命令没有反应:

更换aspx马,再次执行:

0x04 成功提权
更换aspx马后执行命令提示拒绝访问,想到可以手动上传cmd.exe,再调用执行即可,但是冰蝎没有右键虚拟终端的功能,所以我们上传一个aspx大马:

调用上传cmd.exe尝试执行命令:

再次失败,但是没有关系,办法总比困难多。这里想到既然网站支持.net脚本,那么极有可能使用SQLserver数据库,翻找一下文件,查找配置文件:

没过多久,我们便发现了sa账号密码,此时终于可以露出猥琐的微笑:

管理员权限!打完收工。
当任意文件上传偶遇Safedog的更多相关文章
- 【原创】JEECMS v6~v7任意文件上传漏洞(1)
文章作者:rebeyond 受影响版本:v6~v7 漏洞说明: JEECMS是国内Java版开源网站内容管理系统(java cms.jsp cms)的简称.该系统基于java技术开发,继承其强大.稳定 ...
- 中国电信某站点JBOSS任意文件上传漏洞
1.目标站点 http://125.69.112.239/login.jsp 2.简单测试 发现是jboss,HEAD请求头绕过失败,猜测弱口令失败,发现没有删除 http://125.69.112. ...
- Discuz!NT 后台任意文件上传的源代码修补方法
相关的漏洞介绍: http://www.wooyun.org/bugs/wooyun-2013-035199 Discuz!NT 管理后台可以自定义文件类型,从而造成任意文件上传,测试过程中 aspx ...
- CKFinder 1.4.3 任意文件上传漏洞
CKFinder 是国外一款非常流行的所见即所得文字编辑器,其1.4.3 asp.net版本存在任意文件上传漏洞,攻击者可以利用该漏洞上传任意文件. CKFinder在上传文件的时候,强制将文件名(不 ...
- WordPress Contact Form 7插件任意文件上传漏洞
漏洞名称: WordPress Contact Form 7插件任意文件上传漏洞 CNNVD编号: CNNVD-201311-415 发布时间: 2013-11-28 更新时间: 2013-11-28 ...
- WordPress Suco Themes ‘themify-ajax.php’任意文件上传漏洞
漏洞名称: WordPress Suco Themes ‘themify-ajax.php’任意文件上传漏洞 CNNVD编号: CNNVD-201311-403 发布时间: 2013-11-28 更新 ...
- WordPress Kernel Theme ‘upload-handler.php’任意文件上传漏洞
漏洞名称: WordPress Kernel Theme ‘upload-handler.php’任意文件上传漏洞 CNNVD编号: CNNVD-201311-127 发布时间: 2013-11-12 ...
- WordPress Think Responsive Themes ‘upload_settings_image.php’任意文件上传漏洞
漏洞名称: WordPress Think Responsive Themes ‘upload_settings_image.php’任意文件上传漏洞 CNNVD编号: CNNVD-201311-06 ...
- WordPress Checkout插件跨站脚本漏洞和任意文件上传漏洞
漏洞名称: WordPress Checkout插件跨站脚本漏洞和任意文件上传漏洞 CNNVD编号: CNNVD-201311-015 发布时间: 2013-11-04 更新时间: 2013-11-0 ...
随机推荐
- Linux中grep和egrep命令详解
rep / egrep 语法: grep [-cinvABC] 'word' filename -c :打印符合要求的行数-i :忽略大小写-n :在输出符合要求的行的同时连同行号一起输出-v ...
- Redis的结构和运作机制
目录 1.数据库的结构 1.1 字典的底层实现 2.过期键的检查和清除 2.1 定时删除 2.2 惰性删除 2.3 定期删除 2.4 对RDB.AOF和复制的影响 3.持久化机制 3.1 RDB方式 ...
- Lua表达式
目录 算术运算符 关系运算符 逻辑运算符 字符串连接(more) string.format转义符的使用 优先级 算术运算符 Lua 的算术运算符如下表所示: 示例代码:$expr1.lua prin ...
- CF1539A Contest Start[题解]
Contest Start 题目大意 有 \(n\) 个人报名参加一个比赛,从 \(0\) 时刻开始每隔 \(x\) 分钟有一个人开始比赛,每个人参赛时间相同,均为 \(t\) .定义一个选手的不满意 ...
- DEV -C++源码中的中文复制粘贴乱码解决方案
右击源代码用记事本打开,再复制,再粘贴,就没有乱码了
- 三、从GitHub浏览Prism示例代码的方式入门WPF下的Prism之Mvvm的08-12示例
这一篇是学习了前2篇RegionManager关联视图,和通过不同的方式加载Module示例之后的开始进入MVVM了. 从第08示例开始,进入了MVVM部分. 从08示例开始学习Prism下的MVVM ...
- Java基础00-多线程28
1. 实现多线程 1.1 进程 1.2 线程 1.3 多线程的实现方式(方式一:继承Thread类) 代码示例:定义类MyThread: //1:定义一个类MyThread继承Thread类 publ ...
- 一个很多人不知道的SpringBoot小技能!!
大家好,我是冰河~~ 最近,发现很多小伙伴在修改了SpringBoot的配置文件后,都要重新编译整个项目,极大的浪费了开发时间.我身边就有很多小伙伴一直是这样做的.那么,有没有什么方式能够修改配置文件 ...
- 一行代码让matplotlib图表变高大上
1 简介 matplotlib作为Python生态中最流行的数据可视化框架,虽然功能非常强大,但默认样式比较简陋,想要制作具有简洁商务风格的图表往往需要编写众多的代码来调整各种参数. 而今天要为大家介 ...
- 微信小程序云开发-云函数-初始化云函数环境
一.新建云函数文件夹 新建的云函数文件夹,命名为cloud,该文件夹一定要与pages文件夹同级.此时该文件夹的前面没有云朵的标识. 二.配置project.config.json文件 在proje ...