SafeAI:面向AI代理的开源静态风险分析工具
SafeAI 是一款静态分析工具,专为AI应用源代码设计,用于检测安全风险、能力暴露和治理缺口。它完全离线运行,不执行代理或调用LLM,可集成到CI/CD管道中。支持8种AI框架,识别多种能力(如shell执行、文件系统访问等),并生成SARIF、JSON、HTML等格式报告。
SafeAI 是一个专为AI代理系统设计的开源静态风险分析工具,旨在帮助开发者在部署前发现源代码中的安全风险、能力暴露和治理缺口。与传统的应用安全工具(如SAST、SCA)不同,SafeAI 专注于AI代理特有的风险面,包括提示注入、代理工具滥用、能力扩散、MCP暴露以及治理缺失等。
该工具完全离线运行,不执行代理代码也不调用大型语言模型,确保分析过程安全可控。它能够解析八种主流AI代理框架,包括LangGraph、CrewAI、LangChain、Semantic Kernel、OpenAI Agents SDK、Microsoft Agent Framework、Azure AI Foundry和Bedrock Agent,并从中提取框架特定信息,如节点、工具、模型等。
SafeAI 的核心功能包括框架检测、能力发现、AI风险分析、提示风险分析、工具分析、内存分析、MCP分析、数据泄露检测以及CI/CD集成。它通过AST解析、能力模式匹配和依赖扫描,将发现的框架对象映射到风险类别,并通过规则引擎生成信任评分(0-100)。支持的能力涵盖shell执行、文件系统访问、浏览器自动化、规划编排、代理委托、内存/检查点、RAG检索、GitHub/Slack/Email集成、数据库访问、云服务、外部API以及MCP服务等。
在输出方面,SafeAI 支持终端摘要、JSON、SARIF 2.1.0和HTML报告,并可直接集成到GitHub Actions、GitLab CI和Azure DevOps等CI/CD管道中。其SARIF输出兼容GitHub Advanced Security和Azure DevOps等平台。
安装SafeAI需要Python 3.11或3.12以及PyYAML。用户可以从源码安装,然后通过命令行运行扫描。SafeAI提供丰富的选项,如指定输出格式和失败阈值。示例输出显示了风险评分和发现的详细信息。
SafeAI目前处于早期预览阶段,遵循Apache 2.0许可证发布,并鼓励社区贡献。项目路线图规划了从静态风险扫描到企业级解决方案的多个阶段,旨在成为AI能力和风险分析的开源基础。