maxwellokumu/OkAudit-Core
GitHub: maxwellokumu/OkAudit-Core
一个模块化的IT审计能力框架,通过9个专家角色和36项可复用技能帮助企业标准化审计流程并支持多合规框架映射。
Stars: 0 | Forks: 0
# OkAudit Core
[](https://github.com/maxwellokumu/OkAudit/actions/workflows/ci.yml)
[](https://www.python.org/downloads/)
[](LICENSE)
[]()
[]()
## 目录
- [概述](#overview)
- [OkAudit Core 是什么](#what-okaudit-core-is)
- [架构](#architecture)
- [技能域](#skill-domains)
- [快速开始](#quick-start)
- [安装](#installation)
- [使用](#usage)
- [CLI 使用](#cli-usage)
- [能力打包](#capability-packaging)
- [配置](#configuration)
- [环境变量](#environment-variables)
- [测试](#testing)
- [合规框架](#compliance-frameworks)
- [项目结构](#project-structure)
- [路线图](#roadmap)
- [贡献](#contributing)
- [作者](#author)
- [许可证](#license)
## 概述
IT 审计工作仍然受到重复设置、碎片化的证据收集、不一致的审查质量以及难以跨团队和框架扩展的工作流程的拖累。
**OkAudit Core** 通过将实用的审计方法转化为可复用的能力来解决这个问题。该仓库组织了一个由 **9 个专家角色**和 **36 项技能**组成的虚拟审计团队,每个角色和技能旨在支持身份、合规、隐私、应用安全、网络安全、日志记录、供应商风险、硬件和物理控制以及首席审计师工作流程中的不同审计任务。
这些能力可以独立开发和测试,通过 CLI 工作流执行,并在下游打包供从业人员使用。
### 为什么这很重要
OkAudit Core 旨在帮助团队:
- 更一致地构建审计计划
- 改进证据审查和控制分析
- 跨多个保障领域标准化工作流程
- 减少重复审计中的重复设置工作
- 从现场工作更快地转向有据可依的报告
## OkAudit Core 是什么
OkAudit Core 是:
- OkAudit 能力库的权威开发仓库
- 构建、测试和改进专家审计技能的地方
- 感知框架的可复用审计工作流来源
- Claude 就绪分发仓库的上游基础
OkAudit 目前有两个互补的公开层:
- **OkAudit Core**:构建、测试和扩展能力的源仓库
- **OkAudit Claude Skills**:打包技能以便直接上传到 Claude 并使用的分发仓库
如果您想要源逻辑、开发工作流、测试和能力框架,请使用此仓库。
如果您想要上传就绪的从业人员包,请使用 Claude Skills 仓库。
## 架构
```
┌─────────────────────────────────────────────────────────────┐
│ OkAudit Core │
│ Source Repository for Audit Capabilities │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────────┼───────────────────┐
▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ CLI Runner │ │ Skill Logic │ │ Packaging │
│ (main.py) │ │ + Playbooks │ │ Layer │
└──────┬──────┘ └──────┬──────┘ └──────┬──────┘
└───────────────────┼───────────────────┘
│
┌─────────────▼─────────────┐
│ Capability Library │
│ (36 reusable audit skills)│
└─────────────┬─────────────┘
│
┌─────────────────────┼─────────────────────┐
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌────────────┐
│ Evidence │ │ Analysis │ │ Reporting │
│ Inputs │──────▶│ Engine │──────▶│ Outputs │
│ (JSON/CSV) │ │(Rules+Logic)│ │(MD/JSON/CSV)│
└────────────┘ └────────────┘ └────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ SOC2 │ │ ISO27001 │ │ PCI-DSS │
│ NIST │ │ GDPR │ │ Mappings │
└──────────┘ └──────────┘ └──────────┘
OkAudit follows a layered architecture where raw system data is ingested, transformed through modular AI skills, and surfaced as structured, framework-aligned audit intelligence. Each layer is independently testable and replaceable.
```
## 技能域
OkAudit 将其 36 项技能组织在 9 个专家审计角色中:
| 角色 | 技能 | 关键能力 |
|------|--------|-----------------|
| **首席 IT 审计师** | 范围界定、报告、编排 | 审计范围界定、风险优先级排序、高管报告 |
| **身份与访问** | 访问审查、SoD 分析、权限审计 | 过度特权账户检测、职责分离分析、MFA 合规 |
| **合规** | 策略验证、控制追踪、差距分析 | 框架控制映射、策略漂移检测、整改追踪 |
| **日志监控** | 威胁检测、异常分析、审计踪迹 | 日志摄取、行为异常检测、事件重构 |
| **供应商风险** | 风险评分、第三方审查、合同分析 | 供应商分类、风险评分、SLA 合规检查 |
| **网络安全** | 防火墙审查、分段审计、暴露分析 | 防火墙规则分析、网络区域验证、开放端口枚举 |
| **隐私与数据** | 数据映射、同意审查、保留审计 | PII 识别、数据流映射、同意链验证 |
| **硬件与资产** | 资产清单、配置基线、EOL 检测 | 资产发现、基线漂移检测、生命周期结束标记 |
| **应用安全** | 代码审查、依赖审计、认证分析 | SAST 对齐的代码审查、依赖项中的 CVE 检测、认证流程分析 |
```
## 快速开始
The fastest way to work with OkAudit Core is to clone the repository and execute a skill directly.
```bash
# 克隆仓库
git clone https://github.com/maxwellokumu/OkAudit.git
cd OkAudit
# 设置 Python 环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
# 运行审计范围工作流
cd lead-it-auditor/audit-scope-checklist
python main.py \
--system "AWS payment application" \
--roles "iam,network" \
--frameworks "PCI-DSS"
```
## 安装
### 前置条件
- Python 3.8 或更高版本
- `pip` 和 `venv`
- 仅当使用连接云端的技能时需要 AWS 或 Azure 凭证
### 步骤
```
# 1. 克隆
git clone https://github.com/maxwellokumu/OkAudit.git
cd OkAudit
# 2. 创建并激活虚拟环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 3. 安装依赖
pip install -r requirements.txt
# 4. (可选) 配置环境变量
cp .env.example .env
# 使用你的凭证编辑 .env
```
## 使用
### CLI 使用
每个技能都位于其自己的目录中,并公开一个 `main.py` 入口点。所有技能都遵循一致的调用模式:
```
python main.py [--input ] [--options ]
```
#### IAM 访问审查
```
cd identity-access/access-review
python main.py --input iam_policy.json
```
**示例输出:**
```
{
"findings": [
{
"severity": "HIGH",
"user": "svc-payments",
"issue": "AdministratorAccess policy attached",
"recommendation": "Restrict to least-privilege policy",
"framework_ref": "PCI-DSS 7.1"
}
],
"summary": {
"total_users": 42,
"over_privileged": 7,
"mfa_disabled": 3
}
}
```
#### 日志分析
```
cd log-monitoring/log-analyzer
python main.py --logs cloudtrail.json --frameworks "SOC2,ISO27001"
```
#### 审计范围定义
```
cd lead-it-auditor/audit-scope-checklist
python main.py \
--system "Azure SaaS platform" \
--roles "iam,appsec,vendor" \
--frameworks "ISO27001,GDPR"
```
#### 供应商风险评分
```
cd vendor-risk/risk-scoring
python main.py --vendor vendor_profile.json --tier critical
```
#### 网络防火墙审查
```
cd network-security/firewall-review
python main.py --rules firewall_rules.json --segment "production"
```
### Claude 集成
OkAudit 技能可以直接在 Claude 中使用其代码执行环境执行。
**步骤 1:** 在 Claude 设置中启用代码执行。
**步骤 2:** 上传相关的技能文件夹(例如 `identity-access/access-review/`)以及您的证据文件。
**步骤 3:** 使用自然语言调用技能:
```
Analyze this IAM policy for over-privileged accounts and SoD violations.
Map findings to PCI-DSS controls.
```
每个技能都包含一个 `skill.yaml`,其中声明了其输入、输出和 Claude 执行上下文。当文件夹上传时,Claude 会自动读取此文件。
**示例提示词:**
```
Run an access review on the attached iam_policy.json and highlight
any accounts with AdministratorAccess.
```
```
Analyze these CloudTrail logs for anomalous activity and produce
a SOC2 CC6.1-aligned finding report.
```
```
Score this vendor profile against our third-party risk framework
and flag any critical gaps.
```
## 配置
每个技能都可以通过其 `config.yaml` 进行配置。常见的配置选项:
```
# config.yaml (示例 — identity-access/access-review)
frameworks:
- PCI-DSS
- SOC2
thresholds:
max_admin_accounts: 2
mfa_required: true
inactive_days_threshold: 90
output:
format: json # json | csv | markdown
include_remediation: true
severity_filter: medium # low | medium | high | critical
```
## 环境变量
将 `.env.example` 复制到 `.env` 并填写与您打算运行的技能相关的变量。云凭证变量仅在技能连接到实时云环境时才需要。
| 变量 | 必需 | 描述 |
|----------|----------|-------------|
| `AWS_ACCESS_KEY_ID` | 可选 | 用于连接云端的技能的 AWS 访问密钥 |
| `AWS_SECRET_ACCESS_KEY` | 可选 | AWS 密钥 |
| `AWS_DEFAULT_REGION` | 可选 | 默认 AWS 区域(例如 `us-east-1`) |
| `AZURE_CLIENT_ID` | 可选 | Azure 服务主体客户端 ID |
| `AZURE_CLIENT_SECRET` | 可选 | Azure 服务主体密钥 |
| `AZURE_TENANT_ID` | 可选 | Azure Active Directory 租户 ID |
| `LOG_LEVEL` | 可选 | 日志详细程度:`DEBUG`、`INFO`、`WARNING`、`ERROR`(默认值:`INFO`) |
| `OUTPUT_DIR` | 可选 | 审计输出文件的目录(默认值:`./output`) |
## 测试
OkAudit 包含一个完整的测试套件和覆盖率报告。
```
# 运行所有测试
pytest tests/
# 运行并生成 HTML coverage 报告
pytest tests/ --cov=. --cov-report=html
open htmlcov/index.html
# 运行特定 skill domain 的测试
pytest tests/identity_access/ -v
# 仅运行单元测试 (跳过集成测试)
pytest tests/ -m "not integration"
```
### 测试结构
```
tests/
├── unit/
│ ├── test_iam_review.py
│ ├── test_log_analyzer.py
│ ├── test_vendor_scoring.py
│ └── ...
├── integration/
│ ├── test_pipeline_execution.py
│ └── test_claude_skill_invocation.py
└── fixtures/
├── sample_iam_policy.json
├── sample_cloudtrail.json
└── sample_vendor_profile.json
```
## 合规框架
OkAudit Core 围绕实用的工作流程构建,可以支持跨以下领域的感知框架保障工作:
| 框架 | 范围 | 示例控制措施 |
|-----------|-------|-----------------|
| **SOC 2** | 信任服务标准 | CC6.1, CC6.2, CC7.2, CC9.2 |
| **ISO 27001** | ISMS 控制 | A.9.2, A.12.4, A.14.2 |
| **PCI-DSS v4** | 支付卡安全 | 7.1, 8.3, 10.2, 11.3 |
| **NIST CSF** | 网络安全框架 | ID.AM, PR.AC, DE.CM, RS.AN |
| **GDPR** | 数据保护 | Art. 5, Art. 25, Art. 30, Art. 32 |
重点不仅在于控制命名,还在于可复用的工作流程,帮助从业人员测试、解释和报告控制的有效性。
## 项目结构
```
OkAudit/
├── lead-it-auditor/
│ ├── audit-scope-checklist/
│ ├── risk-prioritization/
│ └── audit-reporting/
├── identity-access/
│ ├── access-review/
│ ├── sod-analysis/
│ └── privilege-audit/
├── compliance/
│ ├── policy-validation/
│ └── gap-analysis/
├── log-monitoring/
│ ├── log-analyzer/
│ └── anomaly-detection/
├── vendor-risk/
│ └── risk-scoring/
├── network-security/
│ ├── firewall-review/
│ └── segmentation-audit/
├── privacy-data/
│ ├── data-mapping/
│ └── consent-review/
├── hardware-assets/
│ └── asset-validation/
├── application-security/
│ └── dependency-audit/
├── tests/
├── assets/
├── requirements.txt
├── .env.example
├── CONTRIBUTING.md
└── README.md
```
## 路线图
| 里程碑 | 状态 |
|-----------|--------|
| 36 项核心技能 | 已完成 |
| Claude 就绪打包层 | 已完成 |
| 跨领域 CLI 执行 | 已完成 |
| 扩展框架覆盖范围 | 进行中 |
| 特定管辖区的扩展 | 计划中 |
| 其他保障工作流程 | 计划中 |
| 更广泛的集成面 | 计划中 |
未来的扩展可能包括更多的区域和监管支持,包括特定管辖区的隐私和网络治理工作流程,前提是从业人员有此需求。
## 作者
**Maxwell Okumu**
开放 IT 审计咨询、AI 系统设计和安全自动化合作。
- 个人主页:https://maxwellokumu.github.io
- 邮箱:omaxwell23@gmail.com
## 许可证
MIT © Maxwell Okumu — 完整条款见 [LICENSE](LICENSE)。
标签:ESC漏洞, GDPR, Homebrew安装, IAM, ISO27001, IT审计, IT治理, NIST, PCI-DSS, Python, SOC2, 供应商管理, 供应链风险, 内部控制, 合规框架, 安全合规, 安全测试, 审计自动化, 审计领导力, 开源框架, 持续集成, 攻击性安全, 文档结构分析, 无后门, 漏洞利用检测, 硬件审计, 网络代理, 网络安全, 网络安全, 聊天机器人, 证据收集, 身份与访问管理, 隐私保护, 隐私保护, 风险治理