{"repo":"Symph0nia/CyberEdge","free":true,"listed":false,"github":"https://github.com/Symph0nia/CyberEdge","clone":"git clone https://github.com/Symph0nia/CyberEdge.git","description":"互联网资产综合扫描/攻击面测绘","language":"Rust","stars":611,"topics":["cybersecurity","redteam","scanner","security"],"license":"Apache-2.0","category":"security-tools","readme_excerpt":"CyberEdge CyberEdge 是一个面向 AI Agent 的外部攻击面管理引擎。AI Agent 通过 Skills 和强类型 RPC 合同操作系统，人员通过可选的只读 Web 界面查看资产、任务、发现、证据与变化。 系统围绕一条可审计的数据链路工作：发现资产、记录观测、验证发现、保留证据并推动修复。所有主动探测都必须属于带有明确授权依据的 Scope。 技术栈 - Rust 1.97、Tokio、tonic - gRPC + Protobuf 控制面 - PostgreSQL 持久化与初始任务队列 - React + TypeScript + Vite 只读 Web - 通过强类型 Adapter 隔离扫描器进程 详细设计参见产品架构、实现架构和运维手册。 部署 基础部署 准备 Docker 和 Docker Compose，然后执行： 基础部署会启动 PostgreSQL 和 CyberEdge Core，但不会暴露 Web 界面。默认 Agent 策略来自 config/agents.example.toml ，生产环境应复制为独立配置并按实际 Agent、Skill 和 capability 收紧授权。 常用维护命令： 数据库数据保存在 Compose 的 postgres-data volume 中。执行 docker compose down -v 会删除数据库，除非明确需要清空环境，否则不要使用。 启用扫描与情报 Adapter 按需要叠加对应的 Compose 文件： 各 Adapter 的凭据、模板同步、安全边界和覆盖语义见运维手册。未配置或不可用的 Adapter 会在任务 coverage 中明确标记，不会伪装成已完成。 启用只读 Web Web 是观察界面，不提供修改接口，但仍然包含敏感资产数据。网络部署必须配置 OIDC： OIDC Token 至少需要 cyberedge.read 角色。查看原始 Evidence 需要 cyberedge.evidence.read ，查看 Scope 授权依据及 Audit 身份字段需要 cyberedge.sensitive.read 。 仅本机开发预览时，可以使用： 然后打开 。不安全本地模式只允许绑定 loopback，不能用于局域网或公网。 使用 CyberEdge 主要由 AI Agent 通过仓库中的 Skills 使用，而不是由人员手工拼接扫描命令。推荐流程： 1. 创建带有授权依据的 Scope。 2. 运行 readiness 检查，确认可用的 Adapter。 3. 启动 standard 或 thorough Assessment。 4. 等待 Task 到达终态，并检查每个阶段的 coverage。 5. 根据 Observation、Evidence 和 Finding 复核结论。 6. 需要持续监控时，再创建 Schedule 并比较后续 ExposureChange。 完整评估使用 cyberedge-assess-scope Skill；资产发现、服务发现、网站与证书观察、漏洞扫描、公共代码情报、CVE 关联、注册信息和结果检查分别由对应的 cyberedge- Skill 完成。 cyberedge-agent 是供 Skills 使用的 JSON stdin/stdout 机器桥接器，不是面向人员的交互式 CLI。下面的示例仅用于部署联调： 创建 Scope 后，可由 Assessment Skill 使用返回的 scope id 启","default_branch":null,"files":null,"tree":[],"storefront":"/r/Symph0nia","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Symph0nia/CyberEdge/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}