实力亲测 | 如何用云盾WAF做漏洞急救

2017 年 10 月 23 日 阿里云安全


千寻位置安全负责人傅奎亲测用云盾WAF实现虚拟补丁。当遇到Web漏洞的时候,安全负责人和运维人员可以用来“见招拆招”啦。

忧伤的周六早晨


“云盾.先知”的渗透测试服务到底靠不靠谱?今年8月,在公司领导的授权下,我们充值体验了一把。答案是:先知白帽子的渗透测试水平杠杠的。周六大清早的,就给我们送来一份大礼:“远程代码执行漏洞”!



先知平台白帽子黑客通过平台向我们提交了一个非常严重的漏洞:公司某外部合作平台在用的低版本PHPWind BBS存在严重安全漏洞,导致外部攻击者可直接利用漏洞执行系统命令。

漏洞信息请参考:https://www.secpulse.com/archives/44006.html。

冷静,冷静再冷静


当时,团队成员的心情可谓一波三折。首先是心已冷:“完了,被拿了shell,安全没做好,怎么跟老板交差……”;紧接着就是自我安慰:“毕竟是通过先知平台发现的漏洞,庆幸没有栽在真正的黑客手里啊!”;再后来就是:“这么严重的漏洞,我们得尽快启动漏洞响应流程进行修复处置。问题是,这大周六的,咱能叫得起开发吗?就算修复升级也没这么快啊,公司发布流程走一遍也不知道是猴年马月……”

理论上说,从漏洞被发现到实际修复为止,暴露的时间越长对公司安全越不利。万一有攻击者在这个时间窗口成功利用了该漏洞,后果不堪设想。

在联系完开发人员并冷静思考之后,我们意识到要完成这个漏洞的修复,远没有我们想象的那么简单,原因是:

  • 首先这是一个PHPWind BBS的PHP漏洞(废话)

  • 公司最后一名PHP工程师已经离职,目前都是Java栈技术团队(那上面就不是废话了)

  • 公司论坛已经很久没有升级,标准修复措施是升级版本

  • 公司的论坛是在开源代码基础上进行二次开发的,无法直接使用官方升级包

  • 就算系统能够升级,标准的修复、测试、备份、发布和验证流程根本无法实现满足该漏洞对应的时效性要求


后背一阵冷汗,现在该怎么办?

借助云盾WAF实现虚拟补丁临时缓解漏洞


庆幸的是,该BBS早先已经接入了阿里云WAF保护。因此,安全团队可以通过WAF配置相应的规则,制作虚拟补丁,临时缓解该漏洞的影响。


我们认真地分析了该漏洞的原理和利用过程,发现:漏洞利用过程中必须请求一次特定URL才能实现,即:http://bbs.example.com/plugin.php?H_gate=vendor 。


该URL是一个供应商信息列举的插件,即使无法使用,也不影响正常的业务。基于该URL的规则,安全团队判定:可以通过WAF实现虚拟补丁拦截。


进入云盾WAF配置界面


登录阿里云控制台,通过导航菜单【安全(云盾)】|【Web应用防火墙(网络安全)】|【域名配置】找到当前服务器的域名bbs.example.com。



配置WAF防护策略


通过点击域名bbs.example.com作用域内的【安全开关】|【防护配置】的超链接,进入WAF配置界面。


WAF产品支持多个维度的安全防护,包括:

  • Web应用攻击防护

  • 恶意IP惩罚

  • CC安全防护

  • 大数据深度学习引擎

  • 精准访问控制

  • 封禁地区

  • 新智能防护引擎

  • 网站防篡改

  • 数据风控

  • 防敏感信息泄漏


ps:流量经过Web应用防火墙时,首先依次匹配精准访问控制中的规则、再进行CC攻击的检测、最后进行Web应用攻击防护,配置各类规则时请注意内在顺序。


本次虚拟补丁配置需要用到【精准访问控制】,所以该功能务必处于开启状态。在该功能已经开启的前提下,点击超链接【前去配置】。



进入配置界面,直接点击【新增规则】,在弹出的对话框中进行URL匹配及拦截配置。针对本次漏洞利用的关键URL:http://bbs.example.com/plugin.php?H_gate=vendor, 为降低拦截的误判率,设置规则如下:


  • 规则名称:Web漏洞虚拟补丁

  • 匹配条件:字段URL包含plugin.php

  • 匹配条件:Params包含H_gate=vendor

  • 匹配动作:阻断





填写完规则后,点击【确定】,完成规则配置,规则即时生效。



关键匹配字段说明


在配置界面【匹配字段】后的信息图表上悬停鼠标,系统会提示可用的匹配字段,包括:

  • IP

  • URL

  • Referer

  • User-Agent

  • Params

  • Cookie

  • Content-Type

  • X-Forwarded-For

  • Content-Length

  • Post-Body


各字段形象化的映射关系如下:



ps:匹配中规则后的动作有三种:阻断、放行(可选择后续是否继续进行Web攻击拦截或CC攻击)、告警(只记录不阻断)。规则之间是有先后匹配顺序的,可点击规则排序达到最优的防护效果。


验证拦截效果


完成WAF配置后,访问触发漏洞的URL:http://bbs.example.com/plugin.php?H_gate=vendor ,浏览器直接提示访问请求已经被阿里云WAF拦截,bingo!


后续


安全团队除了通过WAF制作虚拟补丁,临时缓解漏洞影响,实际在漏洞响应过程中之执行了如下动作:


  • 对网站代码和Web服务器进行深入安全调查

  • 确保本次白帽子发现漏洞之前,该漏洞不曾被黑客利用

  • 找到开发大牛,对PHP代码漏洞进行修复并发布上线

  • 增强服务器安全监控,部署阿里云安骑士客户端

  • 彻查公司内部同类开源项目的版本及漏洞情况

  • 制定Web安全漏洞测试规范

  • 重新评估网站的综合安全性

  • 将先知安全众测列入下一阶段工作计划

安全从来就不是单一环节的问题,从业人员必须能够从一个点看到多个层面的问题,从而有效提升企业信息系统的整体安全行,并将安全运营带入正轨!


总结


云盾WAF产品总体功能强大,能够满足绝大多数中小企业的Web应用安全防护。本文只是从一起漏洞应急案例介绍了:如何在极短的时间内通过阿里云云盾产品Web应用防火墙WAF制作虚拟补丁,临时缓解Web漏洞的影响。


本期分享到此为止。抛砖引玉,期待与业界同仁碰撞思想,一起成长。


点击阅读原文

看看TA的更多博客吧


登录查看更多
0

相关内容

国内知名的 PHP 开源社区,已被阿里巴巴收购。
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
191+阅读 · 2020年6月29日
【高能所】如何做好⼀份学术报告& 简单介绍LaTeX 的使用
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
116+阅读 · 2020年5月10日
【复旦大学-SP2020】NLP语言模型隐私泄漏风险
专知会员服务
24+阅读 · 2020年4月20日
【2020新书】如何认真写好的代码和软件,318页pdf
专知会员服务
63+阅读 · 2020年3月26日
在K8S上运行Kafka合适吗?会遇到哪些陷阱?
DBAplus社群
9+阅读 · 2019年9月4日
漏洞预警丨Xstream远程代码执行漏洞
FreeBuf
4+阅读 · 2019年7月25日
Linux挖矿病毒的清除与分析
FreeBuf
14+阅读 · 2019年4月15日
基于Web页面验证码机制漏洞的检测
FreeBuf
7+阅读 · 2019年3月15日
百度开源项目OpenRASP快速上手指南
黑客技术与网络安全
5+阅读 · 2019年2月12日
介绍WAF以及过滤机制
黑白之道
22+阅读 · 2019年2月5日
DiscuzX 3.4 Phar反序列化漏洞
黑客工具箱
8+阅读 · 2019年1月4日
一个人的企业安全建设之路
FreeBuf
5+阅读 · 2017年7月7日
CoCoNet: A Collaborative Convolutional Network
Arxiv
6+阅读 · 2019年1月28日
Arxiv
5+阅读 · 2018年10月23日
Arxiv
19+阅读 · 2018年5月17日
Arxiv
4+阅读 · 2018年5月4日
Arxiv
6+阅读 · 2018年2月7日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关资讯
在K8S上运行Kafka合适吗?会遇到哪些陷阱?
DBAplus社群
9+阅读 · 2019年9月4日
漏洞预警丨Xstream远程代码执行漏洞
FreeBuf
4+阅读 · 2019年7月25日
Linux挖矿病毒的清除与分析
FreeBuf
14+阅读 · 2019年4月15日
基于Web页面验证码机制漏洞的检测
FreeBuf
7+阅读 · 2019年3月15日
百度开源项目OpenRASP快速上手指南
黑客技术与网络安全
5+阅读 · 2019年2月12日
介绍WAF以及过滤机制
黑白之道
22+阅读 · 2019年2月5日
DiscuzX 3.4 Phar反序列化漏洞
黑客工具箱
8+阅读 · 2019年1月4日
一个人的企业安全建设之路
FreeBuf
5+阅读 · 2017年7月7日
相关论文
CoCoNet: A Collaborative Convolutional Network
Arxiv
6+阅读 · 2019年1月28日
Arxiv
5+阅读 · 2018年10月23日
Arxiv
19+阅读 · 2018年5月17日
Arxiv
4+阅读 · 2018年5月4日
Arxiv
6+阅读 · 2018年2月7日
Arxiv
5+阅读 · 2015年9月14日
Top
微信扫码咨询专知VIP会员