clay-good/mantissa-log

GitHub: clay-good/mantissa-log

Mantissa Log 是一款基于无服务器架构和自然语言接口的开源云原生 SIEM 平台,旨在以低成本替代商业方案,提供日志分析、身份威胁检测及自动化响应功能。

Stars: 13 | Forks: 1

# Mantissa 日志 **从噪音中分离信号** 一个开源、云原生的 SIEM,基于无服务器架构和自然语言查询构建。部署到 AWS、GCP 或 Azure,成本仅为商业解决方案的一小部分。 ## 问题 安全团队面临工具支离破碎的局面: **SIEM 价格极其昂贵。** Splunk、Datadog 和 Sumo Logic 对企业部署的收费高达每年 150,000 至 300,000 美元。定价与数据量挂钩,因此成本增长速度远超预算。团队被迫选择摄取哪些日志,从而造成盲区。 **查询语言是瓶颈。** 分析师编写 SPL、KQL 或 Lucene 的时间比实际调查威胁的时间还要多。每个 SIEM 都有自己的查询语法,跨平台关联需要掌握多种语言的专业知识。 **身份攻击是 #1 入侵向量。** 超过 80% 的泄露事件涉及受损凭证,但大多数 SIEM 仅将身份日志视为另一个数据源,缺乏行为分析、跨提供商关联,也无法理解特定用户的“正常”状态。 **日志源故障未被检测。** 当收集器静默停止发送数据时,依赖该源的每一条检测规则都会变成盲区。大多数 SIEM 没有针对日志源的内置健康监控。 **开源替代方案不完整。** 现有的开源 SIEM 要求您运行 Elasticsearch 集群、管理复杂的基础设施,并且仍然缺乏自然语言查询、身份威胁检测和自动响应功能。 ## Mantissa Log 如何解决这个问题 ### 用简单的英语提问 无需学习查询语言。只需询问 _“显示本周来自美国以外的所有失败登录”_ 即可获得结果。系统将问题转换为优化的 SQL,显示预估查询成本,并为后续提问保持对话上下文。支持 8 家 LLM 提供商(Anthropic Claude、OpenAI GPT-4、Google Gemini、AWS Bedrock、Azure OpenAI、GCP Vertex AI)。 ### 基于无服务器运行,每年约需 $23,500 无需管理集群。Lambda 函数、云数据湖(S3/GCS/Blob)和无服务器查询引擎(Athena/BigQuery/Synapse)意味着您只需为使用量付费。在每天 1 TB 的摄取量下,预估年成本约为 $23,500,而商业 SIEM 则需 $150,000 以上。 ### 跨提供商检测身份威胁 针对 Okta、Azure AD、Google Workspace、Duo 和 Microsoft 365 中的每个用户建立行为基线。检测不可能旅行、凭证填充、MFA 疲劳、权限提升链和会话劫持。8 阶段身份攻击杀伤链跟踪,附带加权风险评分(0-100)。 ### 监控日志源健康状况 当日志源停止发送数据、出现意外缺口或显示异常卷变化时自动检测。针对每个源的延迟和静默阈值,根据学习基线进行 Z-score 卷异常检测,以及子窗口粒度的缺口检测。 ### 部署到任意云 云无关的核心,包含 AWS、GCP 和 Azure 的原生适配器。为所有三个提供商提供 Terraform 模块。无论您部署在何处,都使用相同的检测规则、相同的解析器和相同的告警逻辑。 ### 使用 647 条预构建规则检测威胁 Sigma 格式的检测规则,可自动转换为特定于云的 SQL。涵盖 AWS、GCP、Azure、Okta、GitHub、Kubernetes 等。49 条专为身份威胁检测构建的规则。使用自然语言或 Sigma YAML 编写新规则。 ### 自动响应 将事件响应计划转换为可执行的手册。终止会话、禁用账户、阻止 IP、创建工单并通知团队。针对危险操作的审批工作流。完整的审计跟踪。 ## 架构 ``` +-----------------------------------------------------------------+ | MANTISSA LOG | +-----------------------------------------------------------------+ | | | +------------------+ +------------------+ +-----------------+| | | SIEM | | OBSERVABILITY | | SOAR || | | (Core Module) | | (APM Module) | | (Response) || | +------------------+ +------------------+ +-----------------+| | | - Log Collection | | - OTLP Receiver | | - Playbooks || | | - NL Queries | | - Metrics/Traces | | - IR Plan Parse || | | - Sigma Rules | | - Service Maps | | - Auto Response || | | - Alerting | | - Trace Viewer | | - Approvals || | | - ITDR | | - APM Alerts | | - Action Buttons|| | +------------------+ +------------------+ +-----------------+| | | | | | | +---------------------+---------------------+ | | | | | +--------------------+ | | | Shared Services | | | | - Query Engine | | | | - Alert Router | | | | - LLM Providers | | | | - Health Monitor | | | | - Storage (S3/BQ) | | | +--------------------+ | +-----------------------------------------------------------------+ ``` Mantissa Log 是模块化的。仅部署您需要的内容: | 模式 | 模块 | Terraform 标记 | |------|---------|-----------------| | **仅 SIEM** | 核心(收集、查询、检测、告警、ITDR) | `enable_apm=false`, `enable_soar=false` | | **SIEM + 可观测性** | 核心 + APM(OTLP 追踪、指标、服务地图) | `enable_apm=true`, `enable_soar=false` | | **完整平台** | 全部(+ 自动响应、手册、审批) | `enable_apm=true`, `enable_soar=true` | ## 功能 ### 自然语言查询界面 - 简单的英语转 SQL(Athena、BigQuery 或 Synapse) - 查询执行前的成本估算 - 用于后续提问的对话上下文 - 8 家 LLM 提供商:Anthropic Claude、OpenAI GPT-4、Google Gemini、AWS Bedrock、Azure OpenAI、GCP Vertex AI - 查询缓存以降低 LLM API 成本 ### 身份威胁检测与响应 (ITDR) - 14 天学习期的行为基线 - 异常检测:不可能旅行、异常登录时间、新设备/位置 - 凭证攻击:暴力破解、密码喷洒、凭证填充、MFA 疲劳 - 权限监控:提升链、自我授权授予、休眠账户激活 - 会话安全:劫持、令牌盗窃、并发会话异常 - 跨 Okta、Azure AD、Google Workspace、Duo、M365 的跨提供商关联 - 8 阶段身份攻击杀伤链跟踪 - 风险评分:加权多因素模型(0-100) ### 日志源健康监控 - 检测日志源何时停止发送数据或出现意外缺口 - 根据每个上游 API 调整的每源延迟和静默阈值 - 根据学习的小时基线进行 Z-score 卷异常检测 - 5 分钟桶粒度的缺口检测 - 多云状态存储(DynamoDB、Firestore、Cosmos DB) - 收集器报告计数,辅以数据湖查询回退 ### 检测引擎 - 647 条预构建的 Sigma 检测规则(49 条特定于 ITDR) - 针对每个云平台的自动 Sigma 到 SQL 转换 - 通过 EventBridge / Cloud Scheduler / Timer Triggers 进行定时检测 - 告警去重和状态管理 - 利用误报反馈进行检测调优 ### 告警路由 - 7 种集成:Slack、PagerDuty、Jira、Email、ServiceNow、Microsoft Teams、Webhook - 由 LLM 驱动的告警增强,包含 5W1H 上下文 - 针对外部目标的 PII/PHI 红字脱敏 - 基于严重性的路由和升级 ### 可观测性 / APM - 兼容 OpenTelemetry 的追踪和指标摄取(OTLP) - 具有父子 span 关系的分布式追踪 - 根据追踪数据自动生成的服务依赖关系图 - 追踪瀑布图可视化 - 针对延迟峰值和错误率的 APM 专用 Sigma 规则 - APM 自然语言查询:_“为什么 checkout 很慢?”_ ### SOAR(自动响应) - 手册管理:创建、编辑、版本控制、部署 - IR 计划导入:上传 markdown/YAML,自动转换为手册 - 告警操作按钮:隔离主机、禁用用户、阻止 IP - 针对危险操作的审批工作流 - 完整的执行跟踪和审计跟踪 ### 上下文增强 - IP 地理位置(MaxMind GeoIP2、IPInfo) - 威胁情报(VirusTotal、AbuseIPDB) - 用户上下文(Google Workspace、Azure AD、Okta 目录) - 资产上下文(AWS、Azure、GCP 原生清单) ### 数据收集器(25+ 个来源) - **云**:AWS CloudTrail、VPC Flow Logs、GuardDuty、GCP Audit Logs、Azure Activity Logs - **身份**:Okta、Google Workspace、Microsoft 365、Duo Security - **端点**:CrowdStrike Falcon、Jamf Pro - **SaaS**:Snowflake、Salesforce、1Password、Slack Audit Logs - **DevOps**:GitHub Enterprise、Kubernetes Audit Logs、Docker ### Web 界面 - React 18 搭配 Vite、Tailwind CSS、Zustand - 带有攻击时间线和地理可视化的 ITDR 仪表板 - 带有活动时间线的用户风险档案 - 行为基线查看器 - 检测规则管理 - APM 追踪查看器和服务地图 ## 快速开始 ### 前置条件 - 具有适当权限的 AWS、GCP 或 Azure 账户 - Terraform >= 1.5 - Python >= 3.11 - Node.js >= 18 - LLM API 密钥(Anthropic、OpenAI、Google 或云原生) ### AWS 部署 ``` git clone https://github.com/clay-good/mantissa-log.git cd mantissa-log # 配置 Terraform cd infrastructure/aws/terraform cp backend.tf.example backend.tf cp environments/dev.tfvars.example environments/dev.tfvars # 使用您的配置编辑文件 # 部署基础设施 terraform init terraform plan -var-file=environments/dev.tfvars terraform apply -var-file=environments/dev.tfvars # 部署 Lambda 代码 cd ../../.. bash scripts/deploy.sh ``` 有关 GCP 和 Azure 部署说明,请参阅 [docs/deployment/](docs/deployment/)。 ## 项目结构 ``` mantissa-log/ ├── src/ │ ├── shared/ # Cloud-agnostic core modules │ │ ├── alerting/ # Alert routing (7 integrations) │ │ ├── auth/ # Authentication middleware │ │ ├── detection/ # Detection engine, Sigma conversion │ │ ├── enrichment/ # Geo, threat intel, user context │ │ ├── health/ # Log source health monitoring │ │ ├── identity/ # ITDR module (behavioral analysis) │ │ ├── llm/ # LLM providers (8) and query generation │ │ ├── parsers/ # Log parsers (25+ sources) │ │ ├── soar/ # Playbooks and automated response │ │ ├── apm/ # APM/observability detection │ │ ├── redaction/ # PII/PHI redaction │ │ ├── models/ # Data models and identity mappers │ │ └── cost/ # Query cost estimation │ ├── aws/ # AWS Lambda handlers │ ├── gcp/ # GCP Cloud Functions │ ├── azure/ # Azure Functions │ ├── api/ # REST API layer │ └── collectors/ # Log source collectors ├── web/ # React 18 frontend ├── infrastructure/ # Terraform IaC (AWS, GCP, Azure) ├── rules/ │ ├── sigma/ # 647 Sigma detection rules │ └── playbooks/ # SOAR playbook definitions ├── tests/ # Unit, integration, and rule tests ├── docs/ # Documentation (28 guides) └── scripts/ # Deployment and utility scripts ``` ## 成本对比 **传统 SIEM(Splunk/Datadog/Sumo Logic):** 典型成本:企业版每年 $150,000-$300,000 **AWS 上的 Mantissa Log(1 TB/天摄取量估算):** | 组件 | 年成本 | |-----------|------------| | S3 存储 | ~$8,400 | | Athena 查询 | ~$9,100 | | Lambda 执行 | ~$2,400 | | DynamoDB | ~$600 | | LLM API 调用 | ~$3,000 | | **总计** | **~$23,500** | 这些是粗略估算。实际成本取决于查询模式、数据量、LLM 使用情况和优化程度。 ## 测试 ``` # 安装依赖项 pip install -r requirements.txt pip install -r requirements-dev.txt # 运行所有测试 PYTHONPATH=. pytest tests/ -v # 运行特定类别 pytest tests/unit/ -v # Unit tests pytest tests/integration/ -v # Integration tests pytest tests/unit/identity/ -v # ITDR tests pytest tests/rules/ -v # Rule validation ``` ## 文档 | 指南 | 描述 | |-------|-------------| | [入门指南](docs/getting-started.md) | 首次设置和您的第一次查询 | | [快速入门教程](docs/tutorials/quick-start-with-samples.md) | 包含示例数据的实践演练 | | [AWS 部署](docs/deployment/aws-deployment.md) | 完整的 AWS 部署指南 | | [多云部署](docs/deployment/multi-cloud.md) | GCP 和 Azure 部署 | | [检测规则](docs/configuration/detection-rules.md) | 编写和管理 Sigma 规则 | | [告警路由](docs/configuration/alert-routing.md) | Slack、PagerDuty、Jira、Email 设置 | | [LLM 配置](docs/configuration/llm-configuration.md) | 提供商设置和调优 | | [日志源](docs/configuration/log-sources.md) | 收集器配置 | | [运维手册](docs/operations/runbook.md) | 日常运维程序 | | [API 参考](docs/api/api-reference.md) | REST API 端点 | | [架构](docs/architecture/architecture.md) | 系统设计概述 | | [贡献](docs/development/contributing.md) | 代码贡献指南 | 完整文档索引:[docs/README.md](docs/README.md) ## 环境变量 完整参考请参阅 [docs/configuration/](docs/configuration/)。关键变量: | 变量 | 描述 | 必填 | |----------|-------------|----------| | `LLM_PROVIDER` | LLM 提供商(`anthropic`、`openai`、`bedrock` 等) | 是 | | `CORS_ALLOWED_ORIGIN` | 允许的 CORS 源(出于安全进行设置) | 是(生产环境) | | `ATHENA_DATABASE` / `BIGQUERY_DATASET` / `SYNAPSE_DATABASE` | 查询数据库 | 是 | | `STATE_TABLE` | 状态存储表/集合/容器 | 是 | | `ANTHROPIC_API_KEY` / `OPENAI_API_KEY` / etc. | LLM 凭证 | 是 | ## 限制 ### 状态 本项目处于 **alpha** 阶段(v0.1.0)。尚无已知的大规模生产部署。基础设施已完成,但大规模实际性能尚未验证。 ### 技术限制 - **LLM 依赖**:需要 LLM API 密钥。查询质量取决于模型能力。LLM 生成的 SQL 可能偶尔不正确。 - **基线冷启动**:行为分析需要 14 天的历史数据。新部署没有基线——所有用户最初都表现为异常。 - **基于批量的检测**:无服务器架构批量处理事件,而非实时处理。最小延迟等于您的轮询间隔(通常为 5-15 分钟)。 - **冷启动**:无服务器函数具有冷启动延迟(首次请求 3-10 秒)。 - **单租户**:每次部署仅服务于一个组织。 - **无内置仪表板**:改用自然语言查询。如果需要可视化仪表板,请集成外部 BI 工具。 - **无案例管理**:集成 Jira、ServiceNow 等进行案例跟踪。 ### 需要安全配置 - 设置 `CORS_ALLOWED_ORIGIN`(默认 `*` 是不安全的) - 配置 API Gateway 授权器(Cognito/Identity Platform) - 在生产环境中将 API 密钥从环境变量移至 Secrets Manager/Key Vault - 切勿在生产启用 `MANTISSA_DEV_MODE=true` ## 组件汇总 | 组件 | 数量 | |-----------|-------| | Python 源文件 | 339 | | Sigma 检测规则 | 647(49 条特定于 ITDR) | | LLM 提供商 | 8 | | 告警集成 | 7 | | 日志源解析器 | 25+ | | 身份提供商 | 5 | | 云平台 | 3(AWS、GCP、Azure) | | Terraform 模块 | 14 (AWS) + GCP + Azure | | React 页面 | 11 | | 文档文件 | 28 | | 测试文件 | 83 |
标签:AI安全, AMSI绕过, AWS, Azure, C2, Chat Copilot, Datadog替代, DevSecOps, DLL 劫持, DPI, GCP, IAM, LLM, NLP, Serverless, Splunk替代, SQL生成, Unmanaged PE, 上游代理, 企业安全, 多云部署, 大语言模型, 威胁检测, 安全信息与事件管理, 安全运营, 成本优化, 扫描框架, 搜索引擎爬取, 数据摄取, 日志源监控, 查询转换, 漏洞探索, 用户代理, 网络安全, 网络资产管理, 自动化响应, 身份威胁检测, 身份安全, 运维监控, 逆向工具, 降本增效, 隐私保护