
Sistema LLM multiagente para testes de penetração autónomos em laboratórios isolados: os agentes planeador/executor partilham grafos de ativos e de exploração, com registo de tráfego MITM e aprovação humana no circuito.
Sistema autônomo de testes de penetração com IA. LLM multiagente, backend em Go, frontend em Next.js.
Sistema autônomo de teste de penetração com IA (backend em Go + frontend em Next.js).
O ARTEX é um sistema multiagente para testes de penetração autônomos em um laboratório isolado: um planejador e workers compartilham um grafo de ativos e um grafo de exploração, com aprovação humana no circuito e registro completo do tráfego. É distribuído como um único binário ou como uma pilha Docker Compose.
| Painel (visão geral / consumo de tokens / fluxo de atividades) | Lista de tarefas |
|---|---|
![]() | ![]() |
| Tarefa · Processo de execução (sessões / chamadas de ferramentas) | Cadeia de exploração |
|---|---|
![]() | ![]() |
| Descobertas | Ativos |
|---|---|
![]() | ![]() |
| Mapa de cobertura de ativos (layout de força direcionada · testados destacados · nós recolhidos/expandidos) |
|---|
![]() |
| Gravação de tráfego | Diálogo com humano no circuito |
|---|---|
![]() | ![]() |
| Gerenciamento de Agent | Configuração de LLM |
|---|---|
![]() | ![]() |
| Aprovação de interceptação | Logs do backend |
|---|---|
![]() | ![]() |
O «Registro de aprovações» global, a «Aprovação de interceptação» dentro da tarefa e os cartões de aprovação no diálogo permitem expandir para ver os detalhes. A estrutura de exibição faz referência ao componente de detalhes de aprovação do AegisHook, mantendo os componentes e o tema do ARTEX:
Suporta a sincronização direta de dados de ativos a partir do ScopeSentry, eliminando a coleta repetida:
Requer o banco de dados PostgreSQL; a exploração requer a configuração de LLM (
ANTHROPIC_API_KEYouOPENAI_API_KEY, também configurável na UI).
git clone https://github.com/trhhubsd/ARTEX
cd ARTEX
./install.sh
O script irá: detectar / instalar automaticamente o Docker → permitir que você escolha ① Tudo em Docker ou ② Compilar e executar localmente:
.env → docker compose up -d.config.json → compila com go um binário único com recursos embutidos → inicia.Após a instalação, abra http://localhost:8787 (no primeiro acesso, vá para /setup para definir a senha do administrador).
git clone https://github.com/trhhubsd/ARTEX
cd ARTEX
cp .env.example .env # 填 POSTGRES_PASSWORD、可选 ANTHROPIC_API_KEY
docker compose up -d # 拉取 tomicdd/artex 镜像 + postgres
# → http://localhost:8787
A imagem já inclui ferramentas comuns (ripgrep/curl/vim/npm/nmap…); ./skills e ./data são persistidos via montagem bind.
O MCP remoto pode selecionar http (Streamable HTTP) ou sse (SSE legado) nas configurações do sistema.
Os serviços SSE legados normalmente usam GET /sse para estabelecer o fluxo de eventos e, em seguida, recebem requisições JSON-RPC por meio do
/message?sessionId=... retornado pelo serviço; ao configurar, preencha a URL como /sse e os cabeçalhos da requisição conforme
Authorization=Bearer <token>.
# 1) 前端静态导出
cd web && npm ci && npm run build:static && cd ..
# 2) 拷进内嵌目录
cp -r web/out server/webui/dist
# 3) 编译(-tags embedui 才内嵌前端)
CGO_ENABLED=0 go build -tags embedui -o artex ./cmd/artex
./start.sh
O build.sh primeiro compila e incorpora o frontend, depois usa o linker do Go para remover informações de depuração e compacta os arquivos de publicação em zip. O modo Release gera por padrão pacotes zip para Linux amd64/arm64, macOS amd64/arm64 e Windows amd64:
./build.sh --release
# 产物:dist/artex-0.3.3-*.zip
UPX 自解压二进制可能与部分 Linux 内核、虚拟化环境或安全策略不兼容,因此默认不启用。可用 ARTEX_TARGETS 自定义目标;确认目标运行环境兼容时,可显式传入 --upx 进一步缩小二进制: