originsec/praxis
GitHub: originsec/praxis
面向端点 AI 编程 Agent 的语义命令与控制研究平台,支持 Agent 发现、流量拦截、配置篡改和自然语言驱动的自动化操作。
Stars: 15 | Forks: 7
# Praxis
**面向 AI Agent 的语义命令与控制框架**
随着 AI 计算机使用/编程 Agent 变得日益普及——它们拥有读取文件、执行命令以及直接与系统交互的工具——理解其安全属性变得至关重要。
Praxis 是一个开源研究和实验平台,用于在端点上发现、控制和编排计算机使用 AI Agent。
我们希望丰富大家的认知,了解当合法拥有这些 Agent 运行系统的访问权限时,可以实现哪些操作,以及这对端点安全意味着什么。
由 [Origin](https://originhq.com) 为安全研究和红队行动构建。
## 功能
| 功能 | 描述 |
|---------|-------------|
| **Agent 发现** | 在端点上指纹识别和检测计算机使用 Agent |
| **侦察** | 枚举工具(MCP servers、技能)、配置和会话历史 |
| **配置可见性** | 直接查看和编辑 Agent 配置文件 |
| **流量拦截** | 用于 Agent-to-LLM 流量的 MITM 代理 |
| **Agent 对话** | 与 Agent 创建交互式会话 |
| **语义操作** | 定义和链接自然语言任务以实现多步骤自动化 |
| **链式自动化** | 按计划、拦截匹配或新节点事件自动触发链 |
| **工具包** | 内置攻击操作库,支持链集成 |
| **终端访问** | 远程节点上的 PTY 终端 |
| **编排器** *(实验性)* | 用于协调跨 Agent 任务的高级助手 |
### 支持的 Agent
- Claude Code CLI
- Codex CLI (OpenAI)
- Cursor Agent CLI
- Gemini CLI
- Microsoft 365 Copilot (Windows)
连接器以 Lua Agent 脚本形式实现,可通过 Web UI 更新。
## 早期版本说明
这是一个早期版本,旨在展示初步功能。它**尚未准备好**用于大规模红队行动或生产环境使用——尽管您完全可以尽情实验!
该平台正在积极开发中,并且:
- 部分功能不完整或处于实验阶段
- 代码库正在快速演进
- **本工具设计上并不隐蔽**——它会安装根证书、修改系统设置,通常动静很大
我们尽早发布是为了获得社区的反馈和贡献。
## 快速开始
### 一键安装 (Docker)
```
curl -fsSL https://praxis.originhq.com/docker.sh | bash
```
这会克隆最新版本,使用 Docker Compose 构建,并启动服务、Web UI 和 RabbitMQ。在浏览器中打开 **http://localhost:8080**。
CLI 二进制文件已构建在 Docker 镜像中。使用以下命令提取:
```
docker cp praxis-praxis-1:/app/praxis_cli ./praxis_cli
```
### 手动 Docker
```
git clone https://github.com/originsec/praxis.git
cd praxis
docker compose up --build
```
在无 Web UI 模式下运行(无头模式 —— 仅服务 + RabbitMQ):
```
PRAXIS_HEADLESS=1 docker compose up --build
```
### 原生安装
```
# Linux/macOS
curl -fsSL https://praxis.originhq.com/install.sh | bash
```
这会在需要时安装 Rust,从源代码构建,并在 `~/.praxis/bin/` 中设置二进制文件,包括 `praxis_cli`。
### 部署节点
服务运行后,将节点部署到目标系统:
1. 在 Web UI 中进入 **Settings** → **Service**
2. 下载相应的节点二进制文件(Linux 或 Windows)
3. 在目标系统上运行节点:
```
# Linux (用于测试的 localhost RabbitMQ URL)
./praxis_node
# 或者使用自定义 RabbitMQ URL
PRAXIS_RABBITMQ_URL=amqp://user:pass@your-server:5672 ./praxis_node
```
节点二进制文件也可从 [GitHub Releases](https://github.com/originsec/praxis/releases) 获取。
## 配置
启动 Praxis 后,在 **Settings** → **LLM Providers** 中至少配置一个 LLM 提供商:
1. 添加模型定义(提供商 + 模型 + API 密钥)
2. 将其分配给您要使用的功能:
- **Semantic Operations** - 用于执行操作
- **Semantic Parser** - 用于在侦察期间发现工具
- **Traffic Parser** - 用于总结拦截的流量
对于解析器密集型工作流,我们建议使用低延迟提供商(例如 **Groq** 或 **Cerebras**)。
## CLI
Praxis CLI (`praxis_cli`) 提供了一个交互式 REPL,用于从命令行控制 Praxis 网络。
```
praxis [b3bf7460:claudecode *] ❯ session prompt "list all files"
```
功能:
- 带有选择状态的**交互式 REPL** —— 选择一次节点和 Agent,然后运行命令而无需重复 `-n`/`-a` 标志
- **Tab 补全**,支持节点 ID、Agent 名称、操作名称和短 ID
- 通过 `-C "command"` 实现**单次执行模式**,便于脚本编写
- 通过 `--mcp` 实现 **MCP server 模式**,可与 Claude Code、Cursor 和其他 AI 助手集成
详见 [CLI 文档](https://originsec.github.io/praxis/usage/cli.html)。
## 架构概览
Praxis 有三个核心组件:
- **Node**:运行在目标系统上,发现 Agent,处理会话/侦察/拦截
- **Service**:中央后端 + 数据库 + 操作/链编排
- **Web**:React 前端和 WebSocket 网桥
详见 [架构概览](https://originsec.github.io/praxis/architecture/overview.html)。
## 文档
完整文档请访问 **[originsec.github.io/praxis](https://originsec.github.io/praxis/)**
- [安装](https://originsec.github.io/praxis/getting-started/installation.html) - Docker、本地开发构建、交叉编译
- [快速开始](https://originsec.github.io/praxis/getting-started/quick-start.html) - 首次步骤演示
- [节点与 Agent](https://originsec.github.io/praxis/usage/nodes-and-agents.html) - 使用节点和 Agent
- [侦察](https://originsec.github.io/praxis/usage/recon.html) - 工具和配置发现
- [会话](https://originsec.github.io/praxis/usage/sessions.html) - 交互式 Agent 会话
- [Agent 连接器](https://originsec.github.io/praxis/connectors/overview.html) - 支持的 Agent 及添加新的 Agent
- [CLI](https://originsec.github.io/praxis/usage/cli.html) - 交互式 REPL、单次执行模式、MCP 集成
- [拦截](https://originsec.github.io/praxis/usage/interception.html) - 流量捕获设置和选项
- [架构](https://originsec.github.io/praxis/architecture/overview.html) - 各部分如何协同工作
## 许可证
Apache 2.0 — 详见 [LICENSE](https://github.com/originsec/praxis/blob/main/LICENSE) 和 [NOTICE](https://github.com/originsec/praxis/blob/main/NOTICE)
如需探讨其他许可安排,请联系 legal@preludesecurity.com
## 关于 Origin
[Origin](https://originhq.com) 是一家端点安全公司,致力于为语义计算时代构建防护。随着 AI Agent 成为企业工作流的核心部分,Origin 提供了组织所需的可见性和控制力,以便安全地授予 Agent 所需的权限。
## 贡献
非常欢迎贡献!请随时:
- 提交 Bug 或功能请求的 Issue
- 提交 Pull Request
- 分享关于新 Agent 连接器或功能的想法
我们特别感兴趣的是围绕新 Agent 支持和攻击技术的贡献。
## 联系方式
- **Email**: david.kaplan@preludesecurity.com
- **Twitter/X**: [@depletionmode](https://twitter.com/depletionmode)
- **GitHub Issues**: [originsec/praxis/issues](https://github.com/originsec/praxis/issues)
标签:C2框架, Claude Code, Codex CLI, HTTP工具, IP 地址批量处理, Lua脚本, PE 加载器, rizin, 人工智能安全, 代理发现, 可视化界面, 合规性, 安全学习资源, 流量拦截, 端点安全, 网络安全审计, 自动化编排, 补丁管理, 计算机控制, 语义操作, 请求拦截, 远程控制, 通知系统, 通知系统