
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 套件、用戶端設定與工具定義,全為唯讀靜態檢查。