Cyntrisec CLI (Historical)

io.github.cyntrisec由 GitHub 账号 cyntrisec 发布v0.1.14更新于 Nov 3, 2026

Historical AWS analysis CLI; not a current Cyntrisec product.

概览

AI 生成的概览

已停止维护的 AWS 安全分析服务器,让助手查询本地扫描结果:资产、攻击路径、发现项、修复建议与合规状态。

可以做什么
  • 查看扫描与资产:列出工具、设置当前快照、汇总最近一次 AWS 扫描,并按类型或严重级别筛选资产、关系与发现项
  • 探索攻击路径:获取带风险评分的路径,并逐跳解释路径与发现项
  • 规划修复:查找最优修复方案、生成 Terraform 片段、列出未使用的 IAM 权限
  • 检查访问与合规:测试某主体能否访问某资源、检查 CIS AWS 或 SOC 2 状态、比较扫描快照
适用场景
仅适用于已在本地使用该历史 CLI 的既有环境,希望助手读取其已保存的扫描产物。它不是当前产品,也不应作为新 AWS 安全工作选型的理由。
运行要求
需本地安装 Python 包 cyntrisec,并以 stdio 方式启动。AWS 凭证通过 AWS_PROFILE,或 AWS_ACCESS_KEY_ID 与 AWS_SECRET_ACCESS_KEY 提供,可选 AWS_DEFAULT_REGION;README 还提到安装步骤需要 AWS CLI 与 terraform。本地扫描目录中需已有扫描结果。
安装前请注意
项目明确为历史项目、不再维护,按“原样”提供且无任何担保。它需要 AWS 凭证,建议优先使用 AWS_PROFILE 而非长期密钥,并将 IAM 角色限制为只读。修复产物(含 Terraform)应先审阅再应用;可选的 unsafe 写入模式会在本地执行 terraform apply。live 模式需要额外 IAM 权限。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Cyntrisec CLI (Historical),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Cyntrisec CLI

[PyPI] [License] [Status]

Historical pre-company project. cyntrisec-cli was created before Cyntrisec narrowed its company focus to EphemeralML and AIR v1. It is not a current Cyntrisec product, support surface, or commercial offering. The PyPI package name cyntrisec, CLI command cyntrisec, and MCP server ID io.github.cyntrisec/cyntrisec are retained only to avoid breaking historical installs.

[image-download]

[!CAUTION] Historical Software Disclaimer: This tool is no longer an active Cyntrisec product. It is provided "as is", without warranty of any kind. While the CLI is a read-only analysis tool by default, the user assumes all responsibility for any actions taken based on its findings. Always review generated remediation plans and Terraform code before application.

Historical AWS capability graph analysis and attack path discovery CLI.

A read-only CLI tool that historically:

  • Scans AWS infrastructure via AssumeRole
  • Builds a capability graph (IAM, network, dependencies)
  • Discovers attack paths from internet to sensitive targets
  • Prioritizes fixes by ROI (security impact + cost savings)
  • Identifies unused capabilities (blast radius reduction)
  • Outputs deterministic JSON with proof chains

Demo

[Cyntrisec Demo]

Watch how to discover attack paths and generate fixes using natural language with Claude MCP.

Architecture

text
+----------------------------------------------------------------------------------+|                                   CYNTRISEC CLI                                   |+----------------------------------------------------------------------------------+| CLI Layer (Typer)                                                                 ||   scan   analyze   cuts   waste   report   comply   can   diff   serve   ...      |+-----------------------------+----------------------------------------------------+| Core Engine                 | Storage (local)                                     ||  - AWS collectors           |  ~/.cyntrisec/scans/<scan_id>/                      ||  - Normalization/schema     |    snapshot.json, assets.json, relationships.json   ||  - GraphBuilder -> AwsGraph |    findings.json, attack_paths.json                 ||  - Path search -> paths     |  ~/.cyntrisec/scans/latest -> <scan_id>             ||  - Min-cut + Cost (ROI)     |  (Windows fallback: latest is a file)               |+-----------------------------+----------------------------------------------------+| Outputs: JSON/agent, HTML report, remediation plan + Terraform hints              |+----------------------------------------------------------------------------------+

Data Flow

text
CLI (scan) --AssumeRole--> AWS Session --Describe/Get/List--> AWS APIs (read-only)     |     vCollectors -> normalize -> Assets + Relationships -> AwsGraph                                                |                                                v                                   Attack path search (BFS/DFS)                                                |                                                v                                   Min-cut (remediation cuts)                                                |                                                v                                      Cost engine (ROI)
Local artifacts: ~/.cyntrisec/scans/<scan_id>/*.json

Installation

bash
pip install cyntrisec

Windows PATH Fix

If you see "cyntrisec is not recognized", the Scripts folder isn't on PATH:

powershell
# Option 1: Run with python -mpython -m cyntrisec --help
# Option 2: Add to PATH for current session$env:PATH += ";$env:APPDATA\Python\Python311\Scripts"

Quick Start

Prerequisite: Ensure you have AWS CLI installed and configured with credentials (e.g., aws configure) or environment variables set. terraform is required for the setup step.

bash
# 1. Create the read-only IAM role in your accountcyntrisec setup iam 123456789012 --output role.tf
# 2. Apply the Terraformcd your-infra && terraform apply
# 3. Run a scancyntrisec scan --role-arn arn:aws:iam::123456789012:role/CyntrisecReadOnly
# 4. View attack pathscyntrisec analyze paths --min-risk 0.5
# 5. Find minimal fixes (prioritized by ROI)cyntrisec cuts --format json
# 6. Generate HTML reportcyntrisec report --output report.html

Commands

Core Analysis

CommandDescription
scanScan AWS infrastructure
analyze pathsView attack paths
analyze findingsView security findings
analyze statsView scan statistics
analyze businessBusiness entrypoint analysis
reportGenerate HTML/JSON report

Setup & Validation

CommandDescription
setup iamGenerate IAM role Terraform
validate-roleValidate IAM role permissions

Remediation

CommandDescription
cutsFind minimal fixes (Cost & ROI prioritized)
wasteFind unused IAM permissions
remediateGenerate or optionally apply Terraform plans (gated)

Policy Testing

CommandDescription
canTest "can X access Y?"
diffCompare scan snapshots
complyCheck CIS AWS / SOC2 compliance

Agentic Interface

CommandDescription
manifestOutput machine-readable capabilities
explainNatural language explanations
askQuery scans in plain English
serveRun as MCP server for AI agents

MCP Server Mode

The historical CLI can still run as an MCP server for compatibility with existing local setups:

bash
# Install with MCP support (now included by default)pip install cyntrisec
bash
cyntrisec serve              # Start stdio servercyntrisec serve --list-tools # List available tools

MCP Tools (15)

CategoryToolDescription
Discoverylist_toolsList all available tools
set_session_snapshotSet active snapshot for session
get_scan_summaryGet summary of latest AWS scan
Assetsget_assetsGet assets with type/name filtering
get_relationshipsGet relationships between assets
get_findingsGet security findings with severity filtering
Attack Pathsget_attack_pathsGet attack paths with risk scores
explain_pathDetailed hop-by-hop path breakdown
explain_findingDetailed finding explanation
Remediationget_remediationsFind optimal fixes for attack paths
get_terraform_snippetGenerate Terraform code for remediation
Accesscheck_accessTest if principal can access resource
get_unused_permissionsFind unused IAM permissions
Compliancecheck_complianceCheck CIS AWS or SOC 2 compliance
compare_scansCompare scan snapshots

Claude Desktop

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

json
{  "mcpServers": {    "cyntrisec": {      "command": "python",      "args": ["-m", "cyntrisec", "serve"]    }  }}

Claude Code (CLI)

Run the following command to configure the server:

bash
claude mcp add cyntrisec -- python -m cyntrisec serve

Google Gemini / Antigravity

Locate your agent configuration (e.g., ~/.gemini/antigravity/mcp_config.json) and add:

json
{  "mcpServers": {    "cyntrisec": {      "command": "python",      "args": ["-m", "cyntrisec", "serve"]    }  }}

Trust & Safety

Read-Only Guarantees

This tool makes read-only API calls to your AWS account. The IAM role should have only Describe*, Get*, List* permissions.

No Data Exfiltration

All data stays on your local machine. Nothing is sent to external servers. Scan results are stored in ~/.cyntrisec/scans/.

No Auto-Remediation (Default Safe Mode)

By default, Cyntrisec is read-only and does not modify your AWS infrastructure.

  • It analyzes your account using read-only APIs.
  • It can generate remediation artifacts (e.g., Terraform modules) for you to review.
  • It does not apply changes automatically.

Optional Remediation Execution (Explicit Opt-In)

Cyntrisec includes an explicitly gated path that can execute Terraform only if you intentionally enable it.

This mode is:

  • Disabled by default
  • Requires --enable-unsafe-write-mode
  • Requires an additional explicit flag (e.g. --execute-terraform) to run Terraform
  • Intended for controlled environments (sandbox / CI with approvals), not unattended production

If you do not pass these flags, Cyntrisec will never run terraform apply.

Write Operations

Cyntrisec makes no AWS write API calls during scanning and analysis.

The only supported "write" behavior is optional execution of Terraform locally on your machine, and only when explicitly enabled via unsafe flags.

Every AWS API call is logged in CloudTrail under session name cyntrisec-cli.

Trust & Permissions

Cyntrisec runs with a read-only IAM role. Generate the recommended policy with cyntrisec setup iam <ACCOUNT_ID> and keep permissions to Describe*, Get*, and List*. Live modes (waste --live, can --live) require extra IAM permissions; the generated policy and docs cover those additions.

Output Format

Primary output is JSON to stdout. When stdout is not a TTY, the CLI automatically switches to JSON:

bash
cyntrisec analyze paths --format json | jq '.paths[] | select(.risk_score > 0.7)'

Agent-friendly output wraps results in a structured envelope:

bash
cyntrisec analyze paths --format agent
json
{  "schema_version": "1.0",  "status": "success",  "data": {...},  "artifact_paths": {...},  "suggested_actions": [...]}

Exit Codes

CodeMeaning
0Success / compliant
1Findings / regressions / denied
2Usage error
3Transient error (retry)
4Internal error

Use in CI/CD:

bash
cyntrisec scan --role-arn $ROLE_ARN || exit 1cyntrisec diff || echo "Regressions detected"

Storage

Scan results are stored locally:

text
~/.cyntrisec/|-- scans/|   |-- 2026-01-17_123456_123456789012/|   |   |-- snapshot.json|   |   |-- assets.json|   |   |-- relationships.json|   |   |-- findings.json|   |   `-- attack_paths.json|   `-- latest -> 2026-01-17_...`-- config.yaml

Versioning

This project follows Semantic Versioning. See CHANGELOG.md for release notes.

License

Apache-2.0

Links

来源:README.md,提交 a2039a2

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.14最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分