漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0146316
漏洞标题:网站安全狗文件上传绕过(Windows+apache)
相关厂商:安全狗
漏洞作者: 路人甲
提交时间:2015-10-13 16:21
修复时间:2016-01-11 17:46
公开时间:2016-01-11 17:46
漏洞类型:设计错误/逻辑缺陷
危害等级:中
自评Rank:8
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-10-13: 细节已通知厂商并且等待厂商处理中
2015-10-13: 厂商已经确认,细节仅向厂商公开
2015-10-16: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航)
2015-12-07: 细节向核心白帽子及相关领域专家公开
2015-12-17: 细节向普通白帽子公开
2015-12-27: 细节向实习白帽子公开
2016-01-11: 细节向公众公开
简要描述:
网站安全狗(APACHE版)for Windows 3.5.11730
详细说明:
这个利用方法,我觉得很多人都可能用过,而且安全狗应该不会出现这种情况,但是在我的测试环境里最新版本的安全狗测试通过。
网站安全狗(APACHE版)for Windows
测试主程序版本:3.5.11730
测试网马库版本:2015-10-08
测试环境:vmware Windows xp sp3,apache+php+mysql集成环境
测试过程如下:
尝试了已公开的很多方法,其中有一个没修复,以后再说吧,这次先说这个,很简单而且很常用的绕过方式,就是:空白符绕过。
比如构造如下形式:
12.php .
12.asp .
12.aspx .
12.cer .
点号前面是一个空格或多个空格,或者回车符,点号可有可无。
先绕过黑名单机制及检测机制,在Windows服务器上保存的时候空格都被去掉了。
比较奇怪,通过一些特殊方法(特殊字符构造)也能在服务端生产后缀包含空格的文件名(当然这也没法解析)。
1)
Content-Disposition: form-data; name="file"; filename="12.php ."
Content-Type: application/octet-stream
2)
Content-Disposition: form-data; name="file"; filename="12.php
"
Content-Type: application/octet-stream
在防护状态,直接上传php文件,会被拦截,如下:
使用空白符绕过:
可以看到上传成功了:
执行命令:
使用回车符绕过:
可以看到上传成功:
漏洞证明:
参考详细说明。
修复方案:
目前还是黑盒摸索,没研究过代码,你们比更懂。
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:6
确认时间:2015-10-13 17:46
厂商回复:
感谢提交,尽快修复。
最新状态:
暂无