本仓库用于 使用 YSoNet (YSoSerial.NET) 测试 ASP.NET ViewState 工作坊。
推荐阅读: 通过 ViewState 利用 ASP.NET 中的反序列化漏洞
解决实验室的推荐工具(当实验室已搭建完成时):
工作坊幻灯片: EXPLOITING_KNOWN_MACHINE_WORKSHOP_v1.0_NahamCon2025_slides.pdf
这是一个故意设计为不安全的实验环境,仅供安全测试和教育目的使用。
此实验室旨在帮助安全专业人员提升其对 ASP.NET ViewState 漏洞的测试能力。请负责任地使用,并且仅在受控环境中使用。
在您的隔离 Windows Server 上运行以下步骤,以准备实验室环境。打开一个提升权限的 PowerShell 终端(以管理员身份运行)并执行以下命令:
# Clone the repository (or download and extract the ZIP)
git clone https://github.com/irsdl/viewstate-security-workshop.git
cd viewstate-security-workshop
.\tools\Install-IISAndDotNet.ps1
这将安装带有 ASP.NET 支持的 IIS 以及所有必需的 .NET Framework 版本。
.\tools\Disable-DefenderProtection.ps1
为什么要禁用 Defender? 对于此实验室,我们禁用 Windows Defender,以便通过 ViewState 漏洞利用执行的命令不会被阻止。这样您就可以在不受端点保护干扰的情况下清晰地观察到成功的利用过程。
重要提示: 在真实的测试实验室或生产环境中,您应该保持防护开启。本工作坊的目标是理解漏洞机制——一旦您掌握了这些技术,请在启用 Defender 的情况下练习检测和阻止这些攻击。
.\import-workshopiis.ps1
此交互式脚本将在 IIS 中设置易受攻击的工作坊站点。它会提示您进行配置选项,默认值如下:
| 设置项 | 默认值 |
|---|---|
| 配置文件 | .\workshop-iis-config.json |
| 站点名称 | workshop |
| 根路径 | C:\workshop\websites\wwwdata |
| HTTP 端口 | 80 |
该脚本将:
content 文件夹复制到站点根路径设置完成后,您的 IIS 管理器应如下图所示:

仅供好奇的读者参考:
通过安装 IIS 和 .NET Framework 组件来为实验室准备 Windows Server。
位置: tools/Install-IISAndDotNet.ps1
用法:
# Run as Administrator
.\tools\Install-IISAndDotNet.ps1
它将安装以下内容:
注意: 对于在隔离服务器上安装 .NET Framework 3.5,您可能需要挂载 Windows Server ISO,并取消脚本中基于源的安装选项的注释。
禁用 Windows Defender 防护,以允许漏洞利用工具在实验室环境中运行。
位置: tools/Disable-DefenderProtection.ps1
用法:
# Run as Administrator
.\tools\Disable-DefenderProtection.ps1
它将禁用以下内容:
在实验室使用后重新启用 Windows Defender 防护。
位置: tools/Enable-DefenderProtection.ps1
用法:
# Run as Administrator
.\tools\Enable-DefenderProtection.ps1
它将启用以下内容:
导入工作坊 IIS 站点配置并部署易受攻击的 Web 内容的交互式脚本。
位置: import-workshopiis.ps1
用法:
# Run as Administrator
.\import-workshopiis.ps1
它的功能:
content 文件夹复制到指定的根路径.NET v2.0 池)定义从参考实验室服务器导出的 IIS 站点结构的 JSON 配置文件。
位置: workshop-iis-config.json
包含:
/mac/* - 启用 MAC 验证的应用程序/nomac/* - 未启用 MAC 验证的应用程序v20、v40、v45)本软件纯粹出于学术研究和开发有效防御技术的目的而创建,除非经过明确授权,否则不应用于攻击系统。项目维护者不对软件的滥用负责或承担任何责任。请负责任地使用。
本软件是一个个人项目,与任何公司无关,包括项目所有者和贡献者的雇主。