漏洞概要
关注数(24)
关注此漏洞
漏洞标题:深信服SSL VPN getshell漏洞(有条件限制)
提交时间:2016-04-11 18:42
修复时间:2016-07-11 11:00
公开时间:2016-07-11 11:00
漏洞类型:设计不当
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2016-04-11: 细节已通知厂商并且等待厂商处理中
2016-04-12: 厂商已经确认,细节仅向厂商公开
2016-04-15: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2016-06-06: 细节向核心白帽子及相关领域专家公开
2016-06-16: 细节向普通白帽子公开
2016-06-26: 细节向实习白帽子公开
2016-07-11: 细节向公众公开
简要描述:
来一发
详细说明:
这里为了保护厂商知识产权,隐去大部分代码
漏洞利用前提:
1、有登陆SSL VPN控制台的权限
2、可以SSL VPN修改邮件服务器配置
问题出在sysCfgController.class.php 147行(邮件服务器设置的发送测试邮件功能)
file_put_contents在file_exists前执行,而$conf_file来源于cookie参数sinfor_session_id
那么我们提交的时候修改cookie sinfor_session_id为:
即可在/tmp/目录下创建一个1.txt文件
如何getshell呢?向web根目录下写个php就行了呀
但这里会碰到问题:新建的文件权限是-rw-------,也就是说web容器不能执行新建的文件
为了突破这个问题,需要覆盖掉一个已存在的php文件,利用其x权限来达到getshell的目的
就拿这个php开刀吧:/app/usr/sbin/webui/html/appSsoApi.php
那么将cookie sinfor_session_id修改为:
注意!此操作会覆盖上面的php文件
最终POC:
提交后访问https://***/cgi-bin/php-cgi/html/appSsoApi.php,可看到php代码执行:
漏洞证明:
修复方案:
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:4
确认时间:2016-04-12 10:50
厂商回复:
感谢白帽子提交的问题。经确认,该问题确实存在,但需要获取管理员权限后才能利用,影响较小。
目前该问题已经解决,并将在下个版本进行更新。
感谢白帽子为我们指出问题,请白帽子私信留下联系方式,我们将为您寄送礼物以示答谢!
最新状态:
暂无