Skip to content

Repository files navigation

Ada - 自主检测AI代理

Ada 是一个专门用于渗透测试的完全自主的AI代理系统。它能够自主地扫描系统、检测安全配置错误、发现漏洞并提出缓解建议,从而简化渗透测试和漏洞评估流程。

✨ 主要特性

  • 🤖 自主操作: 基于ReAct架构的AI代理,具备规划、执行和反思能力
  • 🛡️ 安全沙箱: 所有测试都在隔离的Docker沙箱环境中执行
  • ⚡ 多工具集成: 内置nmap、hydra、sqlmap、nuclei、metasploit等渗透测试工具
  • 🧠 智能记忆: 具备短期记忆系统,能够记住和学习测试过程中的发现
  • 💻 终端集成: 支持tmux会话管理和实时命令执行
  • 🔍 代码分析: 能够分析和理解目标应用的代码逻辑
  • 📊 实时反馈: 提供详细的测试进度和结果反馈

🏗️ 系统架构

ada/
├── agents/          # AI代理核心系统
│   ├── ada.py      # 主代理实现
│   ├── base.py     # ReAct基础代理
│   ├── planner.py  # 任务规划器
│   └── executor.py # 任务执行器
├── llm/            # 大语言模型接口
├── memory/         # 记忆系统
├── sandbox/        # 沙箱运行时环境
├── tools/          # 工具集合
│   ├── tmux.py     # tmux会话管理
│   ├── exec_python_code.py  # Python代码执行
│   └── command_exec.py      # 命令执行
└── cli.py          # 命令行界面

📋 系统要求

  • Python 3.13+
  • Docker (用于沙箱环境)
  • OpenAI API密钥

🚀 安装说明

使用UV包管理器 (推荐)

  1. 安装依赖:
uv sync
  1. 配置环境变量:
cp .env.example .env
# 编辑 .env 文件,添加你的 OpenAI API 密钥
  1. 启动Ada:
uv run ada

💡 使用方法

启动Ada后,你可以:

  1. 输入你的渗透测试任务描述
  2. Ada会自动分析任务并制定执行计划
  3. 在安全的沙箱环境中执行各种测试工具
  4. 获得详细的漏洞报告和建议
  5. 输入 'exit' 退出程序

示例对话

>>> 对目标IP 192.168.1.100 进行端口扫描和漏洞检测
>>> 检测网站 https://example.com 的SQL注入漏洞
>>> 分析这个Web应用的身份验证绕过可能性

🎬 演示

asciicast

🛠️ 技术栈

  • AI框架: OpenAI GPT模型
  • 代理架构: ReAct (Reasoning + Acting)
  • 容器化: Docker
  • 终端管理: tmux
  • 依赖管理: UV
  • 测试框架: pytest

🔧 开发说明

运行测试

pytest tests/

添加新工具

  1. ada/tools/ 目录下创建新的工具文件
  2. 继承 Tool 基类
  3. ada/tools/__init__.py 中注册工具

扩展记忆系统

记忆系统位于 ada/memory/ 目录,支持短期记忆存储和检索。

About

Ada: Agentic Detection AI

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages