
cloud-audit
io.github.gebalamariusz由 GitHub 账号 gebalamariusz 发布v2.0.1更新于 Oct 24, 2026
AWS security scanner with attack chain detection, IAM privilege escalation, and fixes
发布方自己的服务:audit.domains - Domain Valuation
概览
只读的 AWS 安全扫描 MCP 服务器,让助手扫描账户、查看发现与攻击链,并评估被劫持的 Bedrock 或 AgentCore 智能体能触及什么。
- 可以做什么
- 执行只读 AWS 扫描,获取发现、攻击链、健康评分和修复建议(含 AWS CLI 与 Terraform 修复),并列出可用检查项与合规框架。评估 AI 智能体暴露面:盘点 Bedrock Agents 与 AgentCore 运行时、网关和工具,按身份接管与行为接管两种威胁模型报告被劫持智能体可触及的范围。基于已保存的扫描报告离线运行爆炸半径、假设模拟和暴露排序。
- 适用场景
- 当你希望助手审计 AWS 账户的安全状况、排定修复优先级,或回答 Bedrock 与 AgentCore 智能体在被提示注入或凭据被盗后能触及什么时适用。
- 运行要求
- 以 Python 包形式本地运行(Python 3.10 至 3.13),可通过 uvx 或 pip 安装;真实扫描需要 AWS 凭据,建议使用 AWS 托管的 SecurityAudit 策略;需要访问 AWS 的网络。离线命令基于已保存报告运行,不调用 AWS。
安装
在 SourceWeft 中
- 打开 控制台中的 cloud-audit,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
cloud-audit
What can a hijacked AI agent reach in your AWS account, and can you prove it?
Open-source, read-only AWS security scanner. 110 checks, 64 IAM privilege-escalation methods, 31 attack-chain
rules, blast radius for any resource, and agent-blast for Bedrock Agents and AgentCore:
what a prompt-injected or credential-stolen agent can reach, with the IAM policy simulator as the witness.
Every finding ships an AWS CLI + Terraform fix. Nothing is written to your account.
[PyPI version] [Python versions] [CI] [License: MIT] [Docker] [Documentation]
30-second demo - agent-blast - Full scan - What's inside - Proof Mode - Installation - Documentation
Thirty seconds, no AWS account needed
The sample account is invented. Everything derived from it (attack chains, root causes, breach cost, security graph, agent reach) is produced by the same engines a real scan uses.
With credentials, the real thing is one command and read-only. The AWS-managed SecurityAudit
policy covers every check (permissions):
agent-blast: what a hijacked AI agent can reach
An AI agent in AWS is a bundle of IAM identities: the role the agent runs as, the execution roles of
the Lambda functions behind its tools, the roles of its knowledge bases, gateways and sandboxes.
When the agent is hijacked, the attacker acts with those identities. agent-blast answers what
that means, per agent, under two threat models:
Real output for the sample agent (cloud-audit agent-blast --demo -a support-bot):
The story the output tells: the support bot itself is harmless, but a document that tricks it into
calling create-ticket runs code under a role that can pass an admin role to a new Lambda. The
search-docs tool, meant to read product docs, can also read the production database secret and
write into the backups bucket. Every line names the identity, the action and the resource, so the
fix is a policy statement, not a debate.
The same engine covers AgentCore. For the sample gateway (--demo -a tools-gw) the headline is a
cross-agent one:
What agent-blast reads (all list/get, no charge):
- Bedrock Agents: the agent resource role, every action group at the
DRAFTversion resolved to its Lambda and the Lambda's execution role, knowledge bases resolved to their S3 data-source buckets. - AgentCore: runtime role and network mode, gateway role with authorizer, policy engine and every target (Lambda, remote MCP server, API Gateway, OpenAPI, Smithy) with its credential provider, code interpreter and browser execution roles.
- IAM policies of exactly those identities (inline, attached, group), kept raw: action, resource,
effect, whether a
Conditionis present. Conditions are flagged, never guessed. The simulator decides.
Then, per identity: the 64 privilege-escalation methods, AssumeRole hops through the trust graph,
and every data, secret, lateral, code-execution and model-invocation grant matched against concrete
resources. A knowledge-base bucket is always a concrete target, even behind s3:* on *, and
write access to it is reported as RAG poisoning. Anything the scanner could not read (a denied
region, a tool without an IAM identity) is a coverage note, never a silent pass.
--verify asks iam:SimulatePrincipalPolicy about every concrete pair, with the context an attacker
really has (no MFA on the session, TLS transport), and marks each reach PROVEN, DENIED (with the
policy layer that denied: SCP, permissions boundary) or not asserted. Output formats: tree,
json, markdown. The MCP server exposes the same report as get_agent_blast.
A full scan
cloud-audit scan runs 110 read-only checks across 25 AWS services, correlates the findings into
attack chains, ranks the fixes by how many chains they break and prices the exposure. This is the
sample account (cloud-audit demo), rendered by the same code as a real scan and trimmed for length:
Preview a fix before touching anything. simulate removes the findings a check would fix and
recomputes score, chains and exposure offline:
Walk outward from any resource to see what its compromise reaches:
--format json drops straight into the open browser visualizer at
blast-audit.haitmg.pl; --format mermaid gives a diagram for a
wiki page. exposure ranks every node of the security graph by internet reachability and escalation:
[blast-audit visualizer - executive briefing view]
The visualizer runs entirely in your browser on a blast-radius --format json export.
What's inside
The ten threat-feed detectors, as cloud-audit threat-feed --list prints them (rules pack 2026-Q2):
Proof Mode: simulated, not guessed
Static analysis of IAM policies over-reports. Proof Mode asks AWS's own authorization engine,
iam:SimulatePrincipalPolicy, which is read-only and carries no per-call charge.
scan --verifychecks every detected escalation path.verified: truemeans the simulator allowed every required action;falsemeans it denied one (the path is very likely a false positive);nullmeans not asserted, with the reason inverification_detail.agent-blast --verifychecks every concrete (principal, action, resource) reach, supplies the context an attacker with stolen or assumed credentials has, and names the layer that denied.
What the simulator evaluates as of 2026-07-30: identity policies, the attached permissions boundary,
the organization's SCPs including their condition keys, and the context keys you supply. What it does
not: resource control policies, VPC endpoint policies, role chaining, and resource-based policies for
IAM roles. cloud-audit says so on every verified line. A true proves the permission exists. It does
not prove an end-to-end attack; nothing is executed.
Reports
CI/CD
--quiet exits with a code only: 0 clean, 1 findings, 2 error. Gate on severity with
--min-severity high. cloud-audit diff old.json new.json --quiet exits 1 on new findings, so a
daily scan catches ClickOps drift. The repository is also a composite GitHub Action
(gebalamariusz/cloud-audit@v0). Ready-made workflows: basic scan,
daily diff, post-deploy.
Installation
Docker with credentials:
Python 3.10 to 3.13. Dependencies: boto3, typer, rich, pydantic, jinja2, pyyaml, mcp.
AWS permissions
Read-only. Attach the AWS-managed SecurityAudit policy; it covers every check, the IAM escalation
analysis, the agent inventory and Proof Mode:
cloud-audit never modifies your infrastructure. simulate, blast-radius, exposure, diff,
trend and agent-blast run locally against a saved scan and make no AWS calls; --verify adds
simulator calls only. Regions where a service does not exist are skipped; regions where the scanner
is denied a read are listed as coverage gaps.
MCP server
Seven read-only tools for AI assistants: scan_aws, get_findings, get_attack_chains,
get_remediation, get_health_score, list_checks, get_agent_blast.
Then ask: "scan my AWS account and tell me what my Bedrock agents could reach if hijacked".
Common flags and configuration
Defaults live in .cloud-audit.yml (regions, min_severity, exclude_checks, time-boxed
suppressions). Environment variables (CLOUD_AUDIT_REGIONS, CLOUD_AUDIT_MIN_SEVERITY, ...)
override the file; CLI flags override everything. See the
configuration guide.
Documentation
Full documentation at haitmg.pl/cloud-audit: getting started, agent-blast, attack chains, IAM escalation, blast radius, Proof Mode, threat feed, data perimeter, AgentCore, compliance, and the full check reference.
Commercial support
cloud-audit is free and stays free. If you want a human on the findings, the author offers professional services:
- Scanner output review (free): send your cloud-audit, Prowler or Security Hub output, get a short written review of what actually matters and what to fix first
- AWS security audit: full account audit with a prioritized report and ready-to-apply fixes
- AI agent access review: what your Bedrock and AgentCore agents can reach, with the policy changes to narrow it
- Remediation support: Terraform and IAM changes, verified against your workloads
- Palo Alto VM-Series on AWS: architecture and security review (GWLB/TGW, HA, routing)
Details: haitmg.pl/cloud-audit-support or email [email protected].
Development
See CONTRIBUTING.md to add a check. Releases in CHANGELOG.md.
License
来源:README.md,提交 0207aa0
工具
0版本历史
1- v2.0.1最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
其他 Audit 集成
audit.domains - Domain Valuation
domains.audit官方发布者
确定性的域名估值服务:提供公允价值区间、真实可比成交记录、可用性查询,以及经 DNS 验证的待售域名市场。
Revenue Agent — OpenAPI Audit & Change Detection
news.prh官方发布者
一个远程 MCP 端点,用于审计 OpenAPI 规范并检测 API 变更,每次分析通过 Base 上的 x402 收取 0.10 USDC。

SEO Audit & Broken Link Checker
由 GitHub 账号 prometheus-maker 发布
由 Apify 托管的 MCP 服务器,用于审计网站页面的 SEO 元数据并查找失效链接和图片,返回每页评分。

FinePrint AI Legal Risk & Contract Audit MCP Server
由 GitHub 账号 RitualDev-Lab 发布
本地内存中运行的合同风险扫描器,为编码代理评估法律合同、NDA 与租约风险并生成修订建议。

Mcp Supply Audit
由 GitHub 账号 kimmawla 发布
把 MCP 服务器当作供应链产物来审计:注册表条目、PyPI/npm 包、客户端配置与工具定义,全部为只读静态检查。