nonfx/starchitect-cloudguard
GitHub: nonfx/starchitect-cloudguard
一款AI驱动的云安全测试框架,通过运行时检查和IaC静态分析双重能力,实现对云基础设施全生命周期的安全合规验证。
Stars: 11 | Forks: 0
[](https://starchitect.ai)
[加入我们的社区!](https://discord.gg/kDTtfpgFFq)
# Starchitect-CloudGuard
[](https://github.com/nonfx/starchitect-cloudguard/actions/workflows/regula-test.yml)
[](./LICENSE)
[](https://discord.gg/kDTtfpgFFq)

Starchitect-CloudGuard 是一个 AI 驱动的综合安全测试框架,配备功能强大的 CLI,允许您在整个开发生命周期中运行同一套安全测试——包括本地开发期间、部署前的 CI/CD 管道中,以及部署后的实时云环境中。
## 核心功能
- **运行时安全检查**:验证您的实时云基础设施
- 对云环境的直接安全评估
- 目前支持 AWS(GCP、Azure 即将推出)
- 多种日志格式:JSON、stdout(集成到日志桶,例如 s3 即将推出)
- 并行和并发测试执行能力
- **静态分析 (SAST)**:在部署前分析您的基础设施即代码
- 目前支持 AWS 和 GCP 的 Terraform 配置
- 根据既定的安全基准进行验证
- 与 CI/CD 管道集成
- 可以作为 Terraform provider 使用 [这里](https://github.com/nonfx/terraform-provider-starchitect)
- **AI 驱动的测试生成**:自动创建高质量的安全测试
- 前沿的 AI 代理凭借深厚的云安全理解能力精心制作测试
- 由 [The Non-Functionional Co.](https://nonfx.com) 团队进行细致的人工审查
- 确保可靠且全面的合规性验证
该框架设计灵活且可扩展。虽然我们目前专注于 AWS 运行时检查和 Terraform 静态分析,但对其他云提供商(如 GCP、Azure)和 IaC 格式(如 Pulumi、Bicep、CloudFormation)的支持正在不断增加。如果您有特定需求,请提交 GitHub issue;我们的团队很乐意为您提供帮助。
## 安装
通过 Node.js 运行时是开始使用 CLI 的最快方式,但我们也为各大平台提供了 Homebrew taps、deb/rpm 包和独立二进制文件。
```
# 如果你有 npm
npx -y starkit
# 如果你有 bun
bunx starkit
```
您可以通过以下几种方式安装 Starchitect CLI:
### 使用 Homebrew
```
brew tap nonfx/starkit
brew install starkit
```
### 使用 npm
```
npm install -g starkit
```
有关更多安装平台和选项,请查看我们的 [releases 版本](https://github.com/nonfx/starchitect-cloudguard/releases)。
## 运行基准测试
您可以使用我们的 CLI 在实时 AWS 环境中运行所有基准测试:
```
starkit runtime aws
```
### AWS 凭证配置
在运行测试之前,您需要配置 AWS 凭证。有两种方法可以做到这一点:
1. 使用环境变量
在终端中导出这些变量:
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
2. 使用 AWS CLI(推荐)
首先,从以下网址安装 AWS CLI:https://aws.amazon.com/cli/
然后,运行:
aws configure
AWS Access Key ID: [your-access-key]
AWS Secret Access Key: [your-secret-key]
Default region name: [your-region]
Default output format: [json]
参考:
- 创建访问密钥:https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html
- AWS CLI 设置指南:https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html
## 安全基准覆盖范围
| 基准 | 状态 |
| --------------------------------------------------- | ------ |
| CIS Amazon Web Services Foundations | ✅ |
| CIS Google Cloud Computing Platform Foundation | ✅ |
| CIS Amazon Web Services Three-tier Web Architecture | ✅ |
| AWS Foundational Security Best Practices | ✅ |
| CIS Google Cloud Platform Security Foundations | ✅ |
## 项目结构
仓库主要包含以下三个目录:
- `/runtime` - 包含所有用 JavaScript 编写的运行时安全测试
- `/runtime/aws` - AWS 服务特定的测试(例如 Lambda, CloudTrail, KMS)
- `/runtime/utils` - 运行时测试的共享实用程序
- `/terraform` - 包含使用 [Fugue Regula](https://github.com/fugue/regula) 的静态分析测试
- `/terraform/aws` - AWS 服务特定的 Terraform 配置
- `/terraform/gcp` - GCP 服务特定的 Terraform 配置
- `/cli` - 命令行界面实现
## 常见问题解答
1. 你们为什么要使用 Commons Clause 许可证?
我们选择在这个项目中使用 [Commons Clause](https://commonsclause.com/) 许可证,是为了在开源价值观和可持续性之间取得平衡。我们的目标是确保软件仍然供所有人免费使用、修改和共享,同时也保护我们进一步开发和维护项目的能力。
Commons Clause 是一个可以添加到现有开源许可证(如 Apache、MIT 或 GPL 许可证)中的许可条件。应用后,Commons Clause 允许免费使用、修改和共享软件,但禁止他人在未经明确许可的情况下销售该软件或将其作为商业托管服务的一部分提供。
我们相信这种方法有几个好处:
- **对所有用户免费:** 该软件对任何用户永远免费,无论您是个人、非营利组织、初创公司还是大型企业。只要您遵守开源许可证的条款,您就可以在自己的项目中使用它,根据需要修改它,并与他人共享。
- **保护项目的可持续性:** 通过禁止未经授权的商业转售,Commons Clause 确保原始开发者和维护者能够维持项目的开发。否则,第三方可能会拿走软件进行转售,在不回馈的情况下获取价值。
- **允许商业许可:** 对于希望商业销售软件或将其作为付费托管服务提供的公司,Commons Clause 允许协商商业许可证。这确保了项目可以在适当的时候通过货币化来资助持续的开发。
我们理解有些人可能对 Commons Clause 及其对开源的影响有所担忧。然而,我们相信这种平衡的方法目前是让软件尽可能广泛可用,同时确保项目长期可持续性和成功的最佳方式。Commons Clause 提供了强制执行这些条款的法律效力。
如果您对许可证有任何其他问题或疑虑,请随时与我们联系。我们相信对许可证的选择及其对社区的影响保持完全透明。我们的目标是创建出色的软件来赋能用户,同时构建一个可持续的开源项目。
标签:AI 安全, AWS, Azure, CISA项目, DevSecOps, DPI, ECS, GCP, IaC 安全, MITM代理, SAST, Terraform, 上游代理, 二进制发布, 云安全监控, 人工智能, 多语言支持, 安全测试框架, 开源工具, 数据可视化, 暗色界面, 用户模式Hook绕过, 盲注攻击, 策略即代码, 聊天机器人安全, 自动化攻击, 静态分析, 风险治理