当任意文件上传偶遇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 ...
随机推荐
- 1.3.3、通过Header属性匹配
server: port: 8080 spring: application: name: gateway cloud: gateway: routes: - id: guo-system4 uri: ...
- php 基于redis使用令牌桶算法 计数器 漏桶算法 实现流量控制
通常在高并发和大流量的情况下,一般限流是必须的.为了保证服务器正常的压力.那我们就聊一下几种限流的算法. 计数器计数器是一种最常用的一种方法,在一段时间间隔内,处理请求的数量固定的,超的就不做处理. ...
- 3shell命令替换
Shell 命令替换是指将命令的输出结果赋值给某个变量.比如,将使用ls命令查看到的某个目录中的内容保存到某个变量中,这就需要使用命令替换. Shell 中有两种方式可以完成命令替换,一种是反引号` ...
- centos7 php开发环境安装-composer
1.安装composer cd /usr/local/src curl -sS https://getcomposer.org/installer | php mv composer.phar /us ...
- Java 设置PDF跨页表格重复显示表头行
在创建表格时,如果表格内容出现跨页显示的时候,默认情况下该表格的表头不会在下一页显示,在阅读体验上不是很好.下面分享一个方法如何在表格跨页是显示表格的表头内容,这里只需要简单使用方法 grid.set ...
- Java初级面试题整理
先看再点赞,给自己一点思考的时间,如果对自己有帮助,微信搜索[程序职场]关注这个执着的职场程序员. 我有什么:职场规划指导,技能提升方法,讲不完的职场故事,个人成长经验. 1. Java语言有哪些特点 ...
- Django基础012--接口开发
全局参数(get,post,put,delete) 接口:/api/parameter GET:获取全局参数的所有数据 POST:创建全局参数 PUT:更新全局参数 DELETE:删除全局参数 1.创 ...
- PAT甲级:1152 Google Recruitment (20分)
PAT甲级:1152 Google Recruitment (20分) 题干 In July 2004, Google posted on a giant billboard along Highwa ...
- Git的使用(六)
前言 版本管理工具总结: 开发团队项目,对项目的版本进行管理. 使用过的版本管理工具: TFS.SVN与Git. TFS:管理项目,通过visual Studio管理源码,拉取分支,提交代码等.也可以 ...
- Django中F对象,Q对象与运算符
在Django的模型中F对象与Q对象比较常用的,所以单独说一下: F对象 F对象位于django.dc.models模板下,使用的时候记得首先导入!!! 作用:F对象主要用于当模型的字段A与字段B进行 ...