spydirbyte/spydir-os
GitHub: spydirbyte/spydir-os
一个以模拟操作系统桌面环境呈现的免费 OSINT 开源情报调查课程,覆盖 GIAC GOSI 认证全部领域,无需后端依赖,纯前端即可运行。
Stars: 0 | Forks: 0
8 个案件文件 · 9 个桌面应用 · 48 道模拟考试练习题 · 26 个术语表词汇 · 0 个后端
### 目录 - [为什么采用这种形式](#why-this-exists-in-this-form) - [涵盖内容](#what-it-covers) - [桌面环境](#the-desktop) - [使用方法](#using-it) - [托管在 GitHub Pages](#hosting-on-github-pages) - [结构](#structure) - [关于实验环境](#on-the-labs-specifically) - [进度追踪](#progress-tracking) ### 为什么采用这种形式 本项目的早期版本尝试过可导航的 3D 房间。手工编写的几何图元在实际视觉效果上存在天花板,如果没有本项目所不具备的真实 3D 资产和产品级 pipeline,再多的 shader 处理也无法突破这一限制。这个版本彻底放弃了 3D,将所有精力投入到一项真正可以达到高标准的任务中:构建一个令人信服、细节丰富的模拟 OS。不依赖 WebGL,不依赖 GPU,完全不依赖 CDN,只要有浏览器就能运行。 ### 涵盖内容 六个案件文件,与真实的 GIAC GOSI 认证领域保持 1:1 的结构对应,外加一个练习模块和一个总结模块: | # | 案件 | GOSI 领域 | |---|------|------| | 01 | OSINT 方法论 | 情报周期、来源可靠性评级 | | 02 | 搜索、收集与处理数据 | 搜索运算符、归档、regex 基础 | | 03 | 调查人员 | PII、社交媒体、验证技术 | | 04 | 调查企业 | 注册信息、备案文件、尽职调查红旗警告 | | 05 | 网络与基础设施分析 | WHOIS、DNS、证书透明度 | | 06 | 调查员 OPSEC | 归因风险、安全存储、法律界限 | | 07 | 练习文件 | 6 个动手实验,每个领域一个,全为虚构场景 | | 08 | 工具与后续步骤 | spy-osint-suite、spy-geoint、备考笔记 | ### 桌面环境 九个真实应用,而不是一个通用的内容查看器。每个案件和应用都在真实的窗口中打开:带有动画效果的打开和关闭(并伴有相匹配的合成音效),可通过标题栏拖拽,可关闭,支持同时打开多个窗口,并且在任务栏中显示为可点击以重新聚焦的徽标。 | 应用 | 功能说明 | |---|---| | **Case Files** | 列出所有 8 个案件的文件浏览器,实时显示已审阅/未读状态,拥有自己的搜索框,可匹配实际案件内容,而不仅仅是标题 | | **Network Map** | 将相同的 8 个案件显示为带有动画数据脉冲在各连接间穿梭的辐射状节点图,点击节点即可将其打开 | | **Glossary** | 包含案件文件中使用的 26 个 OSINT/GOSI 术语的可搜索参考资料,输入即可过滤 | | **Field Notes** | 个人记事本,输入时自动保存到本地,与案件 01 中涵盖的文档管理规范直接关联 | | **Practice Exam** | 48 道原创题目,每个 GOSI 领域 8 道,提供评分,并在之后为每个答案显示解释说明,而不仅仅是及格/不及格 | | **Live Op Sim** | 一个多步骤、完全虚构的调查:体验模拟的企业注册信息、WHOIS、证书透明度、社交媒体和新闻归档查询,然后提交经过校准的结论,系统将根据您的结论是否真正符合证据进行评分 | | **VPN** | 带有虚假服务器列表的模拟连接/断开流程,纯粹是为了增强情境代入感,并附有一句实事求是的提醒,说明真实 VPN 实际能做什么和不能做什么 | | **Terminal** | 一个真正的命令行。`help` 列出命令,`open <名称或编号>` 打开任何案件,`search <术语>` 从 shell 中搜索所有案件内容 | | **Settings** | 切换声音、切换 CRT 扫描线效果或重置所有进度 | 案件文件在渲染时带有阅读进度条和机密文件风格的页眉,营造出真实的档案质感。实时的桌面小部件可以追踪案件进度和会话状态,无需打开任何应用。Toast 通知会确认会话开始以及您标记为已审阅的每个案件。完成全部 8 个案件后,将出现一个完整的实地认证屏幕,并带有自动生成的证书 ID。 所有声音(启动蜂鸣声、按键声、通知提示音、登录提示音、窗口打开/关闭、成就解锁)均通过 Web Audio API 实时合成,而非从音频文件加载,因此没有任何二进制音频资产,也不存在任何版权许可问题。可在 Settings 中完全关闭。 特别说明 Live Op Sim:Northgate Ventures 完全是虚构的,所使用的域名带有 `.test` 后缀,该后缀是保留的,因此永远不会解析到真实的网站,并且每一个模拟工具的输出都是编造的。本课程中的每一个实验室都遵循相同的标准。 ### 使用方法 ``` python3 -m http.server 8000 ``` 打开 `http://localhost:8000`。启动序列每次会话播放一次,接着是登录提示(`login: analyst`,输入密码,“ACCESS GRANTED”),然后进入桌面。 ### 托管在 GitHub Pages 推送此 repo,然后在 Settings > Pages 中,将 source 设置为 `main` 分支的根目录。将 Custom domain 字段留空,该字段仅供您单独拥有的域使用。 ### 结构显示完整的文件结构
``` . ├── index.html # boot screen, login screen, desktop shell ├── .nojekyll # tells GitHub Pages to skip Jekyll processing entirely ├── assets/ │ └── wallpaper.png # desktop background ├── css/style.css └── js/ ├── course-data.js # case order and labels, single source of truth ├── content-data.js # the actual case file content, as data ├── glossary-data.js # terminology reference, tied directly to case content ├── exam-data.js # 48 original practice exam questions, 8 per domain ├── investigation-data.js # the Live Op Sim's fabricated scenario ├── sounds.js # synthesized sound effects via Web Audio API, no audio files ├── terminal.js # the terminal app's command parser, self-contained └── app.js # boot, login, desktop, window management, all nine apps ``` `terminal.js` 是刻意设计为独立的:它接收一行输入并返回输出行以及一个可选动作,它对窗口或 DOM 一无所知。`app.js` 负责处理其余所有事务。MIT License
标签:CMS安全, ESC4, HTML5, JavaScript, OSINT, 数据可视化, 漏洞修复, 纯前端项目, 网络安全培训, 自定义脚本