toltek-be/cyber-training

GitHub: toltek-be/cyber-training

一款纯前端的网络安全意识培训与 TOSA 认证备考互动测验应用,无需后端、无需账号即可在本地完成系统化学习。

Stars: 0 | Forks: 0

# 网络安全培训 - TOSA 复习 ![GitHub last commit](https://img.shields.io/github/last-commit/toltek-be/cyber-training) ![GitHub repo size](https://img.shields.io/github/repo-size/toltek-be/cyber-training) [![欢迎提 Issue](https://img.shields.io/badge/issues-welcome-brightgreen)](https://github.com/toltek-be/cyber-training/issues) ![GitHub license](https://img.shields.io/github/license/toltek-be/cyber-training) ![无后端](https://img.shields.io/badge/backend-none-blue) ![使用 JavaScript 制作](https://img.shields.io/badge/made%20with-JavaScript-yellow) 一个用于网络安全练习和准备 TOSA 认证的互动式 Web 测验应用。 ## 🚀 功能 - **多种测试模式**: - **完整大测试**:174 道涵盖整个大纲的题目。 - **TOSA 模拟测试**:50 道均衡分布的题目,用于模拟真实考试。 - **情景模拟**:专注于实际场景(电子邮件、钓鱼攻击、安全事件)。 - **快速复习**:随机抽取 20 道题的快速测试。 - **难度等级**:分为简单、中等或困难,以实现阶梯式提升。 - **按主题练习**:8 个特定主题(Web、钓鱼攻击、密码、RGPD、OSINT 等)。 - **课程总结**:超过 50 张关于各类主题(RGPD、AI、IoT、密码学等)的互动复习卡。 - **个性化定制**:提供 3 种图形主题(**SecOps**、**Neobrutalism**、**Corpo**),带来贴合您偏好的体验。 - **丰富的题型**: - 单项与多项选择题。 - 判断题(Vrai / Faux)。 - 填空题。 - 匹配题。 - 排序题。 - **即时批改**:每次提交答案后,都会为每道题提供详细的解析。 - **进度保存**:在浏览器中自动保存您的学习进度(`LocalStorage`)。 - **零数据**:完全在客户端运行,不收集也不向服务器发送任何个人数据。 - **动态体验**:每次测试都会随机打乱选项顺序,避免机械的视觉记忆。 - **匹配题体验优化**:智能处理重复项(右侧的多个选项可以具有相同的文本),并支持通过单击修改或取消连线。 - **考试题支持**:针对 TOSA 的复杂题目(如 RGPD 分类等)进行了专门适配。 ## 🛠 安装 无需复杂的安装过程。本应用完全由静态文件(HTML、CSS、JS)构成。 1. 克隆或下载本仓库。 2. 在任意现代浏览器中打开 `index.html` 文件。 ## 📂 项目结构 - `index.html`:应用程序入口(负责管理资源版本控制)。 - `app.js`:应用程序逻辑(测验引擎、状态管理、异步数据加载)。 - `questions.json`:题库数据(严格的 JSON 格式)。 - `extra-content.json`:测试模式和教学总结内容(严格的 JSON 格式)。 - `styles/`:包含层叠样式表(SecOps、Neobrutalism、Corpo)的文件夹。 - `favicon/`:应用程序的图形资源和 manifest 文件。 ## 🔄 随机打乱机制改进总结 | 元素 | 之前 | 之后 | | :--- | :--- | :--- | | **题目顺序** | ❌ 始终相同 | ✅ 每次测验均打乱 | | **选项顺序** | ❌ 始终相同 | ✅ 每道题均随机 | | **匹配题顺序(右侧)** | ❌ 仅简单倒序 | ✅ 每道题均随机 | | **排序题初始顺序** | ❌ 始终倒序 | ✅ 完全打乱 | | **匹配题重复项** | ❌ 严格唯一的标识符 | ✅ 通过文本标签进行验证 | ## ⚙️ 维护与可靠性 - **架构**:代码(`app.js`)与数据(`.json`)完全分离。 - **安全性**:采用严格的 **Content Security Policy (CSP)** 以保护执行环境。 - **加载**:使用 `fetch` API 实现高性能的异步加载。 - **编码**:所有文件均采用 **无 BOM 的 UTF-8** 格式。 - **稳健性**:`app.js` 引擎内置了安全机制(例如安全的 `hashCode`),且所有题目均具备唯一的标识符。 - **版本控制**:使用 `?v=YYYY-MM-DD-X` 参数强制刷新脚本和数据的缓存。 ## 🚀 TODO - 锦上添花 - **全局统计**:可视化各个主题的整体学习进度。 - **自动深色模式**:根据系统偏好自动切换主题。 - **移动端优化**:改进 Matching/Order 等题型的触摸交互体验。 ## 📝 许可证 本项目基于 **MIT** 许可证开源——您可以自由使用、修改和重新分发它,甚至用于商业目的,只需保留版权声明即可。 最初由 [Celio Miceli](https://www.linkedin.com/in/celio-miceli-57285a1b5) 为 CyberCitizen 培训课程开发,培训结束后由 Toltek 接手并继续维护。
标签:CMS安全, Homebrew安装, JavaScript, 在线测验, 多模态安全, 数据可视化, 无后端, 网络安全意识培训, 考试认证, 自定义脚本