JimmyAder/CheatSheetHost

GitHub: JimmyAder/CheatSheetHost

一个基于Python的本地速查表Web服务器,专为CTF竞赛、逆向工程和安全研究设计的轻量级参考文档托管工具。

Stars: 0 | Forks: 0

# CheatSheet 主机 一个轻量级、内容驱动的 Web 服务器,用于托管交互式速查表和参考资料。非常适合 CTF(夺旗赛)挑战、逆向工程和技术文档。 ## 功能特性 - **简单的基于 JSON 的内容**:使用易于编辑的 JSON 文件定义速查表 - **响应式设计**:适配台式机、平板电脑和移动设备 - **复古终端主题**:怀旧的黑底绿字 CRT 显示器美学 - **局域网可访问**:在本地网络内共享速查表 - **多种板块类型**:表格、文本块、代码片段和 ASCII 表格 - **热重载**:刷新浏览器即可即时查看更改 - **多线程服务器**:处理多个并发连接 ## 快速开始 ### 前置条件 - Python 3.8 或更高版本 ### 安装说明 1. 克隆或下载此仓库: git clone https://github.com/yourusername/CheatSheetHost.git cd CheatSheetHost 2. 运行服务器: python3 host_content_site.py 3. 在浏览器中打开 `http://127.0.0.1:8766` 如果默认文件不存在,服务器将自动创建它们。 ## 使用方法 ### 访问站点 - **本地访问**:`http://127.0.0.1:8766` - **网络访问**:`http://[your-local-ip]:8766`(启动时显示) ### 导航 - **主页**:列出所有可用的速查表 - **单独页面**:点击任意速查表查看其内容 - **导航栏**:指向所有页面的快速链接 ### API 端点 - `GET /api/pages`:返回可用页面 slug 的 JSON 列表 ## 创建和修改速查表 速查表以 JSON 文件形式存储在 `pages/` 目录中。每个文件定义一个单独的页面,结构如下: ``` { "slug": "my-cheatsheet", "title": "My Custom Cheatsheet", "subtitle": "A brief description of this cheatsheet", "sections": [ { "type": "table", "title": "Section Title", "items": [ {"key": "Command", "value": "Description"}, {"key": "Another", "value": "Command"} ] }, { "type": "text", "title": "Notes", "text": "Some explanatory text here." }, { "type": "code", "title": "Example Code", "language": "python", "code": "print('Hello, World!')" } ], "ascii": { "title": "ASCII Table", "blocks_across": 6, "min_width_px": 920 } } ``` ### 板块类型 - **table**:以表格格式显示的键值对 - **text**:纯文本内容(支持换行) - **code**:语法高亮的代码块 - **ascii**:特殊 ASCII 字符表(可选) ### 文件命名 - 文件应以描述性方式命名(例如 `gdb-cheatsheet.json`) - `slug` 字段决定 URL 路径(如果省略,则从文件名自动生成) - JSON 必须有效;无效的文件会被跳过并给出警告 ## 自定义 ### 样式 编辑 `site_template.html` 以修改外观: - `:root` 中的 CSS 变量,用于控制颜色和布局 - 针对不同屏幕尺寸的响应式断点 - 终端风格的设计元素 ### 服务器配置 命令行选项: ``` python3 host_content_site.py --host 0.0.0.0 --port 8080 ``` - `--host`:要绑定的 IP 地址(默认:0.0.0.0) - `--port`:端口号(默认:8766) ## 项目结构 ``` CheatSheetHost/ ├── host_content_site.py # Main server script ├── site_template.html # HTML template and CSS ├── pages/ # Cheatsheet JSON files │ ├── ctf-cheatsheet.json │ ├── gdb-cheatsheet.json │ └── ... └── README.md # This file ``` ## 内置速查表 - **CTF Master Sheet**:寄存器、系统调用和常用技术 - **Bitwise / Crypto Pattern Recognition**:用于识别位运算、编码器、哈希和加密模式的参考 - **GDB/x64dbg**:调试命令和工作流程 - **Ghidra**:逆向工程工具快捷键 - **IDA Pro**:反汇编热键和功能 - **Neovim**:编辑器命令和配置 - **Python for Reverse Engineering**:用于解析、解码和重建算法的实用 Python 参考 - **WinDbg**:Windows 调试命令 - **x64 Assembly**:指令参考 - **x64 Shellcode Syscalls**:系统调用号 - **x86-32 Assembly**:32 位汇编参考 ### 添加新速查表 1. 在 `pages/` 目录中创建一个新的 JSON 文件 2. 遵循上述 JSON 结构 3. 刷新浏览器进行测试 4. 提交 pull request ### 改进代码 - 服务器使用 Python 的 `http.server` 模块构建 - 支持并发请求的多线程 - 最小依赖(仅标准库) ### 报告问题 - 检查服务器日志中的 JSON 解析错误 - 确保 JSON 文件有效 - 在不同的浏览器/设备上测试 ## 开发 ### 从源代码运行 ``` python3 host_content_site.py ``` ### 测试更改 - 编辑 JSON 文件并刷新浏览器 - 修改 `site_template.html` 以更改样式 - 若修改了 Python 代码请重启服务器 ## 许可证 本项目是开源的。可随意使用、修改和分发。 ## 支持 - 如有问题或疑问,请开启 GitHub issue - 欢迎通过 pull request 贡献代码 - 如果觉得有用,请给仓库一个 Star!
标签:CTF工具, Homebrew安装, HTTP服务, JSON, Python, Ruby, Web服务器, 云资产清单, 代码片段, 参考手册, 复古终端, 多模态安全, 局域网共享, 技术文档, 文档管理, 无后门, 本地服务器, 极简主义, 漏洞搜索, 知识库, 自托管, 逆向工程, 速查表