themikewylie/threat-hunting-lab-zia

GitHub: themikewylie/threat-hunting-lab-zia

基于 ZIA 代理日志的威胁狩猎实战实验室,通过 GitHub Codespaces 提供零配置的交互式学习环境。

Stars: 0 | Forks: 0

# 威胁狩猎实验室 – ZIA 欢迎来到官方实验室环境: ## **实战威胁狩猎:构建动态狩猎计划** 本次互动实验室将引导您使用真实世界风格的安全 Web 网关(ZIA 风格)代理日志,构建可重复的威胁狩猎方法论。 这**不是**一个预先录制的演示。 您将: * 建立基线 * 识别异常 * 使用最低出现频率 (LFO) * 制定并验证假设 * 为您的发现进行辩护 # 目标 在本实验结束时,您将能够: * 构建结构化的狩猎工作流 * 识别大型数据集中的长尾异常 * 狩猎可疑的 HTTP/HTTPS 行为 * 将发现转化为检测机会 * 将狩猎结果转化为程序改进并实现运营化 # 实验环境概述 本实验完全在您的浏览器中使用 **GitHub Codespaces** 运行。 * 无需安装 * 无需本地 Python 设置 * 无需 WSL * 无需 Homebrew 您将获得: * Linux 环境 * Bash shell * Python 3 * Jupyter Notebook * 预加载的数据集 * 预安装的库 # 开始 (5 分钟) 查看分步实验指南 [此处](https://github.com/themikewylie/threat-hunting-lab-zia/blob/main/Lab_Step_by_Step_Setup_Guide.pdf)。 此 [视频](https://youtu.be/U-X8FxnuHCw) 提供了本指南的分步演示。 ## 步骤 1 — 登录 GitHub 1. 访问:[https://github.com](https://github.com) 2. 使用您的 GitHub 凭据登录。 如果您没有 GitHub 账户,请先创建一个。 ## 步骤 2 — 打开仓库 1. 访问实验仓库: [https://github.com/themikewylie/threat-hunting-lab-zia](https://github.com/themikewylie/threat-hunting-lab-zia) 2. 点击右上角附近的绿色 **Code** 按钮。 3. 选择 **Codespaces** 标签页。 4. 点击 **Create codespace on main** 这将启动一个新的浏览器标签页并开始构建您的云端开发环境。 ## 步骤 3 — 等待 Codespace 构建 首次创建 Codespace 可能需要几分钟。 在后台,GitHub 正在: * 创建 Linux 容器 * 安装依赖项 * 配置 Python * 准备您的实验环境 请耐心等待。请**不要**刷新页面。 完成后,您将看到: * 浏览器中的 VS Code 风格界面 * 编辑器中打开的 `README.md` 文件 * 底部的终端面板 ## 步骤 4 — 验证终端访问权限 在屏幕底部的终端面板中,输入: ``` ls -lah ``` 按 **Enter**。 您应该看到仓库中的文件和目录列表。 这确认了: * 容器正在工作 * 您拥有终端访问权限 * 仓库已成功克隆 ## 步骤 5 — 验证所需的实验目录 在屏幕左侧(资源管理器面板),确认您看到: * `/data` * `/lab-guides` * `/notebooks` 如果您看到这些文件夹,说明您的环境已正确加载。 如果没有: * 点击资源管理器图标(左上角的文件图标) * 展开仓库文件夹 ## 步骤 6 — 打开 Jupyter Notebook 1. 导航至: ``` /notebooks ``` 2. 打开: ``` getting_started.ipynb ``` ## 步骤 7 — 安装所需的扩展 (首次设置) 首次在 Codespaces 中打开 Jupyter notebook 时,您可能会看到安装以下内容的提示: * Python 扩展 * Jupyter 扩展 这些是必需的。 在屏幕底部,点击 **Install**。 ## 步骤 8 — 运行第一个 Python 测试单元 在 `getting_started.ipynb` 内部,您将看到一个简单的 `print()` 语句。 点击第一个代码单元格内部。 然后执行以下操作之一: * 按 **Shift + Enter** * 或点击 ▶ **Run** 按钮 如果一切配置正确,您将看到输出显示在单元格下方。 这确认了: * Python 正常工作 * Jupyter 已连接 * 内核处于活动状态 ## 步骤 9 — 选择正确的 Python 解释器 运行第一个代码单元格时,系统可能会提示您安装/启用: **Python + Jupyter 扩展** 1. 点击 **Install** 或 **Enable** 2. 等待安装完成 每个 Codespace 只需执行一次此操作。 您可能还会被提示选择 Python 环境。 点击: ``` Select Kernel → Python Environments… ``` 然后选择: ``` Python 3.12.1 ~/python/current/bin/python3 ``` 这确保了: * 您正在使用正确的解释器 * 所有实验依赖项安装正确 * 您的 notebook 可以执行 Python 代码 如果您没有选择正确的环境,单元格可能无法运行。 ## 步骤 10 — 运行 Notebook 单元格 确认 Python 可用后: 您有两个选择: ### 选项 A — 一次运行一个单元格 (推荐用于学习) 在每个单元格上按 **Shift + Enter**,并随时查看输出。 最适合理解正在发生的事情。 ### 选项 B — 运行所有 (推荐用于快速设置) 点击 notebook 顶部的 **Run All**。 这将: * 安装所需的 Python 包 (通过 `pip`) * 加载 CSV 文件 * 验证数据访问权限 ## 步骤 11 — 监控包安装 如果是首次运行,您可能会看到 `pip` 安装输出。 这是正常的。 滚动查看输出并确认: * 安装成功 * 没有红色的错误消息 * 依赖项已安装的确认信息 ## 步骤 12 — 验证 CSV 数据正确加载 Notebook 将从以下位置读取实验数据集: ``` ../data/ ``` 您应该看到以下确认信息: * `lab_github.csv` 加载成功 * `lab_phishing.csv` 加载成功 * `lab_dprk.csv` 加载成功 * 显示 dataframe 预览 * 没有发生文件路径错误 如果您看到显示的行和列,则您的环境已完全准备就绪。 # 故障排除提示 ### Notebook 无法运行? * 确保已安装 Python + Jupyter 扩展 * 确认选择了正确的解释器 (Python 3.12.1) ### 找不到 CSV? * 确认您是从 `/notebooks` 目录运行的 * 确认 `/data` 目录存在 ### 终端不可见? * 点击 **View → Terminal** 重新打开它 ### 其他所有方法都失败了? * 重启内核 # 您现在拥有的内容 如果所有步骤均成功,您现在拥有: * 一个功能齐全的云端实验室环境 * Python 3.12 已配置 * Jupyter Notebook 可运行 * 访问所有实验数据集 * 用于基于 bash 狩猎的终端访问权限 ## 您已准备好开始威胁狩猎。 **祝狩猎愉快。**
标签:GitHub Codespaces, HTTP/HTTPS, IP 地址批量处理, LFO, NoSQL, Python, SWG, Threat Hunting, ZIA Logs, Zscaler, 云端环境, 代码示例, 假设驱动, 基线建立, 安全培训, 安全网关, 实验室, 应用安全, 异常检测, 数据分析, 无后门, 最小频率出现, 沙箱, 网络安全, 防御战术, 隐私保护