Botti01/VOID-Forensics-Game
GitHub: Botti01/VOID-Forensics-Game
V.O.I.D. 是一个浏览器内存取证游戏,模拟实时勒索软件攻击,帮助学习者掌握事件响应技能。
Stars: 0 | Forks: 0
# V.O.I.D. — 易失性输出调查与发现
一款专注于内存取证与实时事件响应的计算机取证教育严肃游戏。
## 🔎 游戏概念 V.O.I.D. 是一款完全使用命令行界面构建的、基于浏览器的**实时事件响应模拟器**。它让玩家扮演一名安全运营中心分析师,负责响应一台企业服务器上正在发生的**活跃勒索软件攻击**。 该机器不能关机——关键的解密密钥**仅存在于易失性内存**中。玩家必须争分夺秒,使用取证分析工具识别恶意进程,从其内存中提取AES加密密钥,并在所有企业数据被加密之前终止勒索软件。 ## 游戏流程 游戏遵循一个结构化的、教学性的流程,旨在在时间压力开始之前引入概念。 1. **交互式教程覆盖层**。首次访问时,玩家会收到一个引导式教程,解释终端界面和学习面板。 2. **终端任务简报**。简报直接打印到命令行中,提供操作背景和目标。 3. **计时器激活**。倒计时仅在玩家于任务提示符处按下回车键确认准备就绪后开始。 4. **实时调查**。玩家执行内存取证操作,同时加密过程实时进行。 5. **游戏后序列**。会话结束顺序如下:透明的赛博朋克游戏结束画面、知识评估测验和最终的取证报告。 ### 主要特性 - **双操作系统场景** - 可在Linux(Ubuntu Server)或Windows(Windows Server 2019)调查中选择,两者具有不同的攻击链 - **三个难度等级** - 初级、中级和专家级,加密速度递增,提示减少,并提供伪装模式 - **引导式入门** - 首次运行教程在简报开始前澄清界面元素 - **原生终端简报** - 任务背景通过命令行传递以保持沉浸感 - **受控计时开始** - 计时器仅在分析师明确确认后开始 - **PID混淆** - 进程ID每次会话随机化,以防止元游戏行为 - **取证笔记面板** - 由玩家操作触发的实时教育性见解 - **调查后测验** - 每次会话从各等级题库中随机抽取3个问题 - **结构化游戏后评估** - 游戏结束画面、测验和报告按固定顺序提供反馈 - **可导出报告** - 可将您的取证报告下载为.txt或.json格式用于评分 - **持久化排行榜** - 按难度等级跟踪跨会话分数(使用localStorage) - **易失性顺序作为核心机制** - 在提取密钥前终止勒索软件会导致不可逆的数据丢失 - **两阶段AES提取** - 执行内存转储并执行加密S盒反转以查找加密密钥 - **内核级利用** - 使用易受攻击的驱动程序(BYOVD)绕过Windows受保护进程轻型保护 - **线程冻结** - 精确挂起恶意线程而不引发灾难性的系统崩溃 ## 🎯 学习成果 本项目是作为都灵理工大学(Prof. Atzeni)"计算机取证与网络犯罪分析"课程的补充活动(严肃游戏)开发的。 - **压力下的实时响应** — 在活跃的高影响力事件期间执行内存分类 - **易失性顺序** — 理解为什么易失性证据必须在修复之前被捕获 - **恶意软件链识别** — 追踪父子PID关系以找到攻击源头 - **内存分析** — 在动态输出上应用Volatility风格的工具(`pstree`、`malfind`、`yarascan`、`memdump`) - **证据优先方法论** — 了解不保存证据的修复会导致数据丢失 - **自带易受攻击驱动程序** — 利用Ring-0权限在Windows上绕过PPL保护 - **S盒反转** — 高级密码分析,用于从内存转储中恢复密钥调度表 ## 📊 教学评估与遥测框架 为了衡量模拟器的教育有效性并评估学生的学习成果,V.O.I.D. 实现了一个双重评估框架: 1. **直接理论评估(调查后测验)** - 完成(或失败)模拟后,玩家会立即收到一个3道题的多项选择测验。 - 问题从关注所遇到取证概念的等级特定题库中动态抽取(例如,易失性顺序、内存保护标志、父子PID结构)。 - 这提供了即时强化,并测试将实际操作转化为理论知识的能力。 2. **隐蔽行为评估(程序化遥测)** - 游戏静默跟踪分析师的调查操作(执行的命令、事件时间线、访问的提示和关键错误)。 - 使用基于遵循取证最佳实践的**方法论分数**正基+奖励模型计算分数。如果分析师使用高级工具进行了超越难度等级核心要求的深入调查,该分数可以**超过100%**。 - 根据此分数和冗余/错误率,学生被分配五种**行为画像**之一: - 👑 **详尽/全面型(分数 > 100%)**:卓越的严谨性。完成了所有必需的验证步骤,并进行了超越标准要求的彻底、详尽调查。 - 🎯 **系统型(分数 80% - 100%)**:强大的方法论严谨性。高效执行了核心验证步骤,冗余命令最少。 - ⚡ **目标型(分数 50% - 79%)**:快速有效,但在行动前跳过了一些标准取证验证步骤。 - 🔍 **探索型(分数 20% - 49%)**:调查成功,但缺乏方法论深度。分析师要么依赖于反复尝试,要么在行动前跳过了关键的取证验证步骤。 - ❌ **混乱型(任务失败)**:记录了关键错误(例如,终止了无辜进程,或未能提取密钥)。请复习易失性顺序。 此遥测框架导出完整的性能报告(作为`.txt`或`.json`),使教师能够收集匿名的课堂指标,并对学生程序化取证成长进行统计评估。 ## 💻 架构与技术 游戏完全在客户端浏览器中运行——无需后端、无需虚拟机、无需安装: - **前端:** HTML5、原生CSS(赛博朋克终端主题)、原生JavaScript(ES6模块) - **关卡系统:** 每个难度等级(初级、中级、专家级)是一个自包含的模块(`js/levels/*.js`),拥有自己的配置、场景、题库和提示 - **数据引擎:** 场景状态存储为可变JSON,由玩家操作实时操控 - **音频:** 通过Web Audio API生成合成音效(无外部文件) - **AI辅助开发:** 经教授批准,技术脚手架(终端UI、命令解析器、游戏循环)是借助AI开发的,使作者能够专注于取证准确性和教育内容设计 ## 🚀 快速开始 在GitHub Pages上玩:https://botti01.github.io/VOID-Forensics-Game/ ``` # 克隆仓库 git clone https://github.com/Botti01/VOID-Forensics-Game.git cd VOID-Forensics-Game # 选项 1:在浏览器中直接打开 index.html # 选项 2:启动本地服务器(推荐) python3 -m http.server 8080 # 然后打开 http://localhost:8080 ``` 详细游戏指南和命令参考,请参阅 [TUTORIAL.md](TUTORIAL.md)。 ## 📁 项目结构 ``` VOID-Forensics-Game/ ├── index.html # Entry point (start menu + game) ├── css/style.css # Cyberpunk terminal theme (CRT, glow) ├── js/ │ ├── main.js # Bootstrap, menu → game, HUD, report modal │ ├── terminal.js # Terminal UI renderer (input/output/scroll) │ ├── parser.js # Command tokenizer & dispatcher │ ├── commands.js # 15 forensic command implementations │ ├── gameState.js # Central mutable state + PID scrambler │ ├── levels/ │ │ ├── beginner.js # Beginner tier: config, scenarios, quiz pool │ │ ├── intermediate.js # Intermediate tier (placeholder) │ │ └── expert.js # Expert tier (placeholder) │ ├── gameLoop.js # Timer & encryption progression │ ├── scoring.js # Score tracking, report builder, leaderboard │ ├── quiz.js # Post-investigation quiz system │ ├── telemetry.js # Stealth assessment and behavior profiling engine │ ├── learning.js # Forensic Notes panel & toast system │ └── audio.js # Synthetic sound effects (Web Audio API) ├── TUTORIAL.md # How to play guide └── README.md # This file ``` *教育项目,作者Andrea Botticella — 都灵理工大学,2025/2026学年。*标签:AES加密, DAST, HTTP工具, JARM, SOC分析师, 严肃游戏, 内存分析, 加密技术, 勒索软件, 双操作系统场景, 取证工具, 命令行界面, 培训工具, 实时模拟, 恶意软件分析, 教育游戏, 数据可视化, 浏览器游戏, 游戏化学习, 网络安全, 自定义脚本, 记忆取证, 隐私保护, 难度分级