Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Vlun-Agent-X — VulnAgent-X: Um Framework Agêntico em Camadas para Detecção de Vulnerabilidades em Nível de Repositório | Kitploit
Ferramentas/GitHubGitHub/renweimeng/vlun-agent-x
Análise EstáticaAnálise Dinâmica (Sandboxing)Análise de VulnerabilidadesAnálise de CódigoAprendizado de MáquinaPapers e PesquisaSegurança de IA
GitHubrenweimeng/vlun-agent-x

Vlun-Agent-X

VulnAgent-X: Um Framework Agêntico em Camadas para Detecção de Vulnerabilidades em Nível de Repositório

Ver Repositório
17há 6 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

中文 English

Protótipo de Pesquisa VulnAgent-X

VulnAgent-X é um protótipo de detecção de vulnerabilidades/defeitos baseado em múltiplos Agents, voltado à reprodução de pesquisas acadêmicas. A entrada é um repositório local ou um diff, e a saída inclui findings estruturados, cadeia de evidências, resultados de localização, confiança e logs de experimentos.

Capacidades principais

  • Forma de entrada: repo path ou unified diff
  • Fluxo de trabalho: screening -> context expansion -> scheduler -> router -> experts -> sceptic -> verification(stub) -> evidence fusion
  • Campos de saída:
    • issue_type
  • location(file + line range)
  • evidence_summary
  • confidence
  • severity
  • optional_cwe
  • fix_hint
  • evidence_chain
  • counter_evidence
  • Interface: CLI + FastAPI
  • Experimentos reproduzíveis: pytest / mypy / ruff + suporte a execução via Docker
  • Visão geral do fluxo de trabalho

    1. screening: triagem rápida de regiões suspeitas (regras + sinais de metadados)
    2. context_expansion: recupera o "contexto mínimo suficiente" (extrai janelas ao redor das localizações suspeitas)
    3. scheduler: aplica estratégias de escalonamento com base em confiança e risco (early_exit / expert_review / verification)
    4. router_agent: seleciona um Agent especialista para cada região suspeita
    5. semantic/security/logic: fornecem alegações e evidências estruturadas sob diferentes perspectivas
    6. sceptic_agent: gera contraprovas e sinais de penalização
    7. verification: verificação dinâmica opcional (atualmente uma implementação stub segura)
    8. evidence_fusion: realiza a fusão unificada e gera os findings finais

    Tutorial de instalação e execução

    1) Preparação do ambiente

    Requisitos: Python 3.11+ (também é executado em versões mais recentes)

    root@kitploit:~
    cd /Users/xiaolu/Documents/Python_code/vulnAgentX
    python3 -m venv .venv
    source .venv/bin/activate
    python -m pip install -e '.[dev]'
    

    2) Uso via CLI

    Analisar o repositório inteiro:

    root@kitploit:~
    .venv/bin/vulnagentx analyze --repo /path/to/repo --output json
    

    Analisar um arquivo de diff:

    root@kitploit:~
    .venv/bin/vulnagentx analyze --diff-file /path/to/patch.diff --output json
    

    Saída resumida:

    root@kitploit:~
    .venv/bin/vulnagentx analyze --repo /path/to/repo --output summary
    

    3) Uso da API

    Iniciar o serviço:

    root@kitploit:~
    .venv/bin/uvicorn vulnagentx.app.api:app --reload
    

    Verificação de integridade (health check):

    root@kitploit:~
    curl http://127.0.0.1:8000/health
    

    Enviar uma análise:

    root@kitploit:~
    curl -X POST http://127.0.0.1:8000/analyze \
      -H "Content-Type: application/json" \
      -d '{"repo_path":"/path/to/repo"}'
    

    4) Execução com Docker

    root@kitploit:~
    docker compose -f docker/docker-compose.yml up --build
    

    5) Verificação de qualidade e testes

    root@kitploit:~
    .venv/bin/ruff check src tests
    .venv/bin/mypy src
    .venv/bin/pytest
    

    Exemplo de saída

    root@kitploit:~
    {
      "run_id": "...",
      "findings": [
        {
          "issue_type": "command_injection",
          "location": {"file_path": "app.py", "start_line": 42, "end_line": 42},
          "evidence_summary": "Command execution surface detected...",
          "confidence": 0.87,
          "severity": "critical",
          "optional_cwe": "CWE-78",
          "fix_hint": "Avoid shell command composition...",
          "source_agents": ["security_agent", "semantic_agent"],
          "evidence_chain": [],
          "counter_evidence": []
        }
      ],
      "metrics": {
        "runtime_seconds": 0.07
      },
      "logs": []
    }
    

    Explicação da finalidade dos arquivos (arquivo por arquivo)

    Diretório raiz e arquivos do projeto

    ArquivoFinalidade
    .env.exampleModelo de variáveis de ambiente (configurações opcionais, como nível de log).
    pyproject.tomlBuild do projeto, dependências, entradas de scripts e configuração de pytest/ruff/mypy.
    README.mdREADME principal (com botões de troca de idioma; padrão: chinês).
    README.zh.mdDocumentação completa em chinês.
    README.en.mdDocumentação completa em inglês.
    docker/DockerfileArquivo de construção da imagem do contêiner do serviço de API.
    docker/docker-compose.ymlSobe os serviços de contêiner localmente com um clique.
    rules/semgrep/vulnagentx-rules.ymlConjunto de regras Semgrep integradas (injeção de comandos/injeção de SQL/desserialização/API C insegura).
    scripts/run_experiment.pyScript de execução de experimentos em lote sobre datasets; gera predições em JSONL.
    scripts/evaluate.pyLê as saídas dos experimentos e calcula métricas de detecção/localização/eficiência.
    scripts/run_ablation.pyScript de experimentos de ablação (no_semgrep/no_treesitter/no_sceptic/no_verification).

    Código-fonte principal (src/vulnagentx)

    ArquivoFinalidade
    src/vulnagentx/__init__.pyDefinição da versão e das exportações do pacote.
    src/vulnagentx/app/__init__.pyInicialização do subpacote app.
    src/vulnagentx/app/cli.pyPonto de entrada da CLI (vulnagentx analyze).
    src/vulnagentx/app/api.pyPonto de entrada do serviço FastAPI (/health, /analyze).
    src/vulnagentx/app/schemas.pySchemas Pydantic de requisição/resposta da API.
    src/vulnagentx/core/__init__.pyInicialização do subpacote core.
    src/vulnagentx/core/state.pyModelo de estado global: regiões, evidências, saídas dos Agents, Findings, logs e métricas.
    src/vulnagentx/core/screening.pyTriagem rápida da primeira fase; extrai regiões suspeitas.
    src/vulnagentx/core/context_expansion.pyExpansão de contexto: extrai janelas mínimas de código ao redor das localizações.
    src/vulnagentx/core/scheduler.pyEstratégia de escalonamento ciente da confiança (early_exit/expert_review/verification).
    src/vulnagentx/core/verification.pyMódulo de verificação dinâmica opcional (atualmente uma versão stub segura).
    src/vulnagentx/core/evidence_fusion.pyFusão de evidências de múltiplos Agents; gera os findings finais.
    src/vulnagentx/core/workflow.pyPonto de entrada de orquestração de ponta a ponta VulnAgentWorkflow.
    src/vulnagentx/agents/__init__.pyAgregação das exportações dos Agents.
    src/vulnagentx/agents/base.pyClasse base abstrata dos Agents e utilitários de obtenção de contexto.
    src/vulnagentx/agents/router_agent.pyAgent roteador: atribui um Agent especialista a cada região suspeita.

    Arquivos de teste (tests)

    ArquivoFinalidade
    tests/test_agents.pyTestes unitários: saídas estruturadas de cada Agent e lógica de contraprovas.
    tests/test_end_to_end.pyTeste de ponta a ponta: fluxo principal do repositório de entrada até os findings finais.
    tests/test_research_modules.pyTestes dos novos módulos: construção do grafo com Tree-sitter, cadeia de execução da verification e métricas de avaliação.

    Módulos de aprimoramento implementados nesta versão

    • Adaptadores LLM reais: OpenAI + Ollama local + alternância automática via factory
    • AST real com Tree-sitter e grafo de código: analisa funções/importações/relações de chamadas e suporta expansão de contexto para arquivos vizinhos
    • Conjunto real de regras Semgrep: arquivos de regras integrados e conectado à fase de screening
    • Cadeia de execução da sandbox de verification: planejamento de tarefas, execução restrita, controle de timeout e gravação estruturada dos resultados
    • Avaliação em datasets e ablação: carregadores de dados, módulos de métricas e scripts de experimentos e ablação
    Baixar ferramenta
    src/vulnagentx/agents/semantic_agent.py
    Agent semântico: riscos na camada semântica (ex.: ponteiro nulo, desserialização, exceções engolidas).
    src/vulnagentx/agents/security_agent.pyAgent de segurança: regras de vulnerabilidades de segurança (injeção de comandos, injeção de SQL, estouro de limites etc.).
    src/vulnagentx/agents/logic_bug_agent.pyAgent de lógica: defeitos de negócio/fluxo de controle (limites, divisão por zero, autorização ausente etc.).
    src/vulnagentx/agents/sceptic_agent.pyAgent cético: gera contraprovas, penaliza conflitos e reduz a confiança.
    src/vulnagentx/adapters/__init__.pyInicialização do subpacote de adaptadores.
    src/vulnagentx/adapters/sandbox_adapter.pyExecutor de sandbox em subprocesso restrito (com timeout, sem shell) usado para a verification.
    src/vulnagentx/adapters/semgrep_adapter.pyAdaptador da CLI do Semgrep (habilitação opcional).
    src/vulnagentx/adapters/treesitter_adapter.pyAdaptador real de Tree-sitter (analisa AST e relações de chamadas/importações quando disponível; faz fallback quando indisponível).
    src/vulnagentx/adapters/llm/__init__.pyAgregação das exportações dos adaptadores LLM.
    src/vulnagentx/adapters/llm/base.pyInterface de protocolo dos adaptadores LLM.
    src/vulnagentx/adapters/llm/mock_adapter.pyLLM Mock testável offline.
    src/vulnagentx/adapters/llm/openai_adapter.pyAdaptador do SDK oficial da OpenAI.
    src/vulnagentx/adapters/llm/local_adapter.pyAdaptador para modelos locais (API HTTP do Ollama).
    src/vulnagentx/adapters/llm/factory.pySeleciona automaticamente o adaptador LLM conforme a configuração e faz fallback para o Mock.
    src/vulnagentx/retrieval/repo_graph.pyÍndice do grafo de código e recuperação de arquivos vizinhos (com base na sobreposição de símbolos da AST).
    src/vulnagentx/datasets/base.pyEstrutura genérica de amostras de datasets e leitura de JSONL/CSV.
    src/vulnagentx/datasets/devign.pyPonto de entrada de carregamento dos dados Devign.
    src/vulnagentx/datasets/bigvul.pyPonto de entrada de carregamento dos dados Big-Vul.
    src/vulnagentx/datasets/primevul.pyPonto de entrada de carregamento dos dados PrimeVul.
    src/vulnagentx/datasets/jit.pyPonto de entrada de carregamento dos dados JIT.
    src/vulnagentx/eval/detection_metrics.pyMétricas de detecção (Precision/Recall/F1/Accuracy).
    src/vulnagentx/eval/localization_metrics.pyMétricas de localização (Top-1/Top-3/MRR).
    src/vulnagentx/eval/efficiency_metrics.pyMétricas de eficiência (tempo médio, P95, média de findings).
    src/vulnagentx/eval/ablations.pyLógica de execução dos experimentos de ablação.
    src/vulnagentx/utils/config.pyCentro de configuração do fluxo de trabalho (chaves via env/CLI/API).