raylee-hawkins/HawkinsOperations

GitHub: raylee-hawkins/HawkinsOperations

一个证据优先的SOC作品集仓库,提供跨平台检测规则、事件响应剧本和自动化验证框架,强调可验证性和可复现性。

Stars: 3 | Forks: 1

# HawkinsOperations [![Verification](https://img.shields.io/github/actions/workflow/status/raylee-hawkins/HawkinsOperations/verify.yml?branch=main&label=verify)](https://github.com/raylee-hawkins/HawkinsOperations/actions/workflows/verify.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) ## 发布更新 (03-02-2026) - AutoSOC 生产强化已完成,旨在提升流水线弹性和操作员可见性: - 针对临时性索引器连接故障的轮询重试/退避处理 - 空闲周期的明确无新警报遥测数据 - 队列增长防护,包含溢出归档至已处理通道 - 流水线日志保留控制和单次运行日志元数据 - 端到端工作流已通过实时警报处理验证: - ingest -> triage -> redact -> pack -> repo-staged 事件输出 - 调度器在健康周期内以 `Last Result: 0` 稳定运行 - 主页视觉刷新: - 核心位置的 hero 资源已升级为 AutoSOC 系统地图 - OG/Twitter 分享图片已与新地图对齐,以确保外部预览的一致性 - 已添加运维文档: - `docs/execution/AUTOSOC_OPERATIONS_RUNBOOK_03-02-2026.md` ## 作品集站点与快速入口 - 站点:[hawkinsops.com](https://hawkinsops.com) - 验证包:[`PROOF_PACK/PROOF_INDEX.md`](PROOF_PACK/PROOF_INDEX.md) - 克隆 + 验证:[`scripts/verify/verify-counts.ps1`](scripts/verify/verify-counts.ps1) - 项目:[`projects/`](projects/) ## 仓库简介(一句话) 一个专注于可验证检测内容(Sigma, Splunk, Wazuh)、结构化 IR Playbook 以及可在本地或 CI 中验证的可复现工件的安全运营作品集仓库。 如果一项声明无法被验证,它就不属于这里。 ## 选择您的路径(任选其一) | 您的身份 | 从这里开始 | 您可以快速验证的内容 | |---|---|---| | 招聘人员 / 招聘经理 | [`START_HERE.md`](START_HERE.md) | 数分钟内的验证通道 + 样本工件 | | 技术审查人员 | [`PROOF_PACK/VERIFIED_COUNTS.md`](PROOF_PACK/VERIFIED_COUNTS.md) | 实时计数 + 确切位置 | | 检测工程师 | [`detection-rules/INDEX.md`](detection-rules/INDEX.md) | 跨 Sigma/Splunk/Wazuh 的规则结构 | | 事件响应人员 | [`incident-response/INDEX.md`](incident-response/INDEX.md) | Playbook 目录 + 一致的框架 | | 作品集审查人员 | [`PROOF_PACK/PROOF_INDEX.md`](PROOF_PACK/PROOF_INDEX.md) | 精选的审查通道 | | SOC 集成方向 | [`projects/lab/PP_SOC_Integration/README.md`](projects/lab/PP_SOC_Integration/README.md) | 规则已验证,现运行于生产模拟工作流中 | ## 当前已验证清单(根据仓库内容生成) 事实来源:[`PROOF_PACK/VERIFIED_COUNTS.md`](PROOF_PACK/VERIFIED_COUNTS.md) ### 检测规则 | 平台 | 数量 | 位置 | |---|---:|---| | Sigma (YAML) | 103 条规则 | `detection-rules/sigma/` | | Splunk (SPL) | 8 个查询 | `detection-rules/splunk/` | | Wazuh (XML) | 24 个文件 / 28 个规则块 | `detection-rules/wazuh/rules/` | ### 事件响应 | 类型 | 数量 | 位置 | |---|---:|---| | IR Playbook (`IR-*.md`) | 10 个 Playbook | `incident-response/playbooks/` | 为何有两个 Wazuh 计数:当某些 XML 模块包含多个 `` 块时,文件数和规则块数是不同的。 ## 90 秒验证 1. 打开 [`START_HERE.md`](START_HERE.md) 查看 5 分钟验证路径。 2. 查看 [`PROOF_PACK/VERIFIED_COUNTS.md`](PROOF_PACK/VERIFIED_COUNTS.md) 获取当前计数。 3. 通过 [`PROOF_PACK/PROOF_INDEX.md`](PROOF_PACK/PROOF_INDEX.md) 检查 `PROOF_PACK/SAMPLES/` 中的 2-3 个工件。 ## 快速验证(本地,可复现) 从仓库根目录运行 (PowerShell): ``` pwsh -NoProfile -File ".\scripts\verify\verify-counts.ps1" pwsh -NoProfile -File ".\scripts\verify\generate-verified-counts.ps1" -OutFile ".\PROOF_PACK\VERIFIED_COUNTS.md" python .\scripts\drift_scan.py --refresh pwsh -NoProfile -File ".\scripts\build-wazuh-bundle.ps1" node .\scripts\build-site-includes.js node .\scripts\generate-site-data.js node .\scripts\generate-site-content.js node .\scripts\generate-media-manifest.js node .\scripts\verify\hosting-cloudflare-only.js # Release/proof-pack JSON 镜像(在正常 UI 提交中可选) node .\scripts\generate-site-data.js --with-proof-pack python -m http.server --directory site 8000 ``` 预期工件: - `PROOF_PACK/VERIFIED_COUNTS.md` - `site/assets/verified-counts.json` - `dist/wazuh/local_rules.xml` ## 仓库地图 | 区域 | 包含内容 | 存在原因 | |---|---|---| | `lab/` | 实时基础设施工档、VM 笔记、实验室 Runbook | 家庭实验室的运维背景 | | `PROOF_PACK/` | 精选工件 + 证据通道 | 面试中可审查的证明路径 | | `detection-rules/` | Sigma/Splunk/Wazuh + 映射 | 多平台检测工程 | | `incident-response/` | Playbook + 模板 + 索引 | 一致的 IR 执行模型 | | `threat-hunting/` | 狩猎矩阵 + 假设笔记 | 结构化狩猎实践 | | `tools/` | 辅助工具和迁移工具 | 可重复的维护和打包支持 | | `scripts/` | 验证 + 打包构建器 | 可复现性 + 可部署工件 | | `docs/` | 执行笔记和支持文档 | 实施决策和审查背景 | | `site/` | 静态作品集站点源码 | 已发布的面向招聘人员的网页内容 | | `content/` | 结构化站点内容 (JSON) | 内容驱动列表的事实来源 | | `components/` | 设计系统规范 | UI/区块架构约定 | | `projects/` | 参考/归档项目子树 | 非规范、有时间限制或遗留的工作流 | ## 内容流转方式(仓库 -> 证明 -> 部署) ``` detection-rules/* incident-response/* | | |-- verify-counts.ps1 |-- IR-*.md (counted) | |-- generate-verified-counts.ps1 -> PROOF_PACK/VERIFIED_COUNTS.md | '-- build-wazuh-bundle.ps1 -> dist/wazuh/local_rules.xml content/projects.json + content/detections.json |-- generate-site-content.js -> site/assets/data/*.json '-- portfolio-data.js -> rendered listings + filters PROOF_PACK/VERIFIED_COUNTS.md |-- generate-site-data.js -> site/assets/verified-counts.json '-- generate-site-data.js --with-proof-pack -> PROOF_PACK/verified_counts.json (release mirror) '-- drift_scan.py -> fail on markdown/json/site drift ``` 这与文档化的 Wazuh 部署流程一致:模块 -> 包 -> `/var/ossec/etc/rules/local_rules.xml` -> 重启管理器。 ## 安全与脱敏 - 安全策略:[`SECURITY.md`](SECURITY.md) - 脱敏检查表:[`PROOF_PACK/EVIDENCE_CHECKLIST.md`](PROOF_PACK/EVIDENCE_CHECKLIST.md) 仓库标准:无真实凭据/令牌,无内部 IP,无意外身份泄露。敏感内部细节请使用 `[REDACTED_INTERNAL]`。 ## 深入文档 - 架构 + 覆盖范围:`PROOF_PACK/ARCHITECTURE.md` - 贡献工作流:[`CONTRIBUTING.md`](CONTRIBUTING.md) - 验证通道索引:[`PROOF_PACK/PROOF_INDEX.md`](PROOF_PACK/PROOF_INDEX.md) ## 站点架构(静态 + 内容驱动) - 运行时保持为 `site/` 下的静态 HTML/CSS/JS(无框架锁定)。 - 设计令牌和流式布局原语:`site/assets/design-system.css`。 - 内容驱动页面: - `site/projects.html` 读取 `site/assets/data/projects.json`。 - `site/security.html` 读取 `site/assets/data/detections.json`。 - 源内容文件: - `content/projects.json` - `content/detections.json` - 构建同步脚本: - `scripts/generate-site-data.js`(验证计数 JSON 生成 + 检测计数同步) - `scripts/drift_scan.py`(漂移门禁:markdown -> json -> 站点声明表面) - `scripts/generate-site-content.js`(内容 JSON 发布步骤) - `scripts/generate-media-manifest.js`(媒体清单 + 分类报告 + 安全媒体副本) Cloudflare Pages 生产构建: - `node scripts/generate-site-data.js && node scripts/generate-site-content.js && node scripts/generate-media-manifest.js && node scripts/verify/hosting-cloudflare-only.js` - 输出目录:`site` ## 许可证 MIT。详见 [LICENSE](LICENSE)。
标签:AI合规, AMSI绕过, ATT&CK框架, DAST, EDR, IR剧本, MITM代理, Sigma规则, Wazuh, 取证, 后端开发, 后端开发, 威胁情报, 威胁检测, 子域名暴力破解, 安全工程, 安全运营, 开发者工具, 恶意软件分析, 扫描框架, 目标导入, 网络安全, 脆弱性评估, 自动化检测, 逆向工具, 防御性安全, 隐私保护