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
pgm-attack — Código de pesquisa para ataques de envenenamento no PGM-index, demonstrando como criar dados adversariais para degradar o desempenho de índices aprendidos. | Kitploit
Ferramentas/GitHubGitHub/atsukisato/pgm-attack
Aprendizado de MáquinaPapers e PesquisaSegurança de IAAtaque Adversário
GitHubatsukisato/pgm-attack

pgm-attack

Código de pesquisa para ataques de envenenamento no PGM-index, demonstrando como criar dados adversariais para degradar o desempenho de índices aprendidos.

Ver Repositório
11há 11 diasAinda 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

PGM-attack

Visão Geral

Código oficial do nosso artigo, Poisoning Attacks on the PGM-index.

Início Rápido

1. Clonar e submódulos

root@kitploit:~
git clone [REPOSITORY LINK]
cd pgm-index-poisoning
git submodule update --init --recursive

2. Compilar

root@kitploit:~
./scripts/build.sh

Requer CMake (ver Dependências). As saídas são gravadas em build/ (binários em build/bin por padrão).

3. Baixar, pré-processar e dados sintéticos

root@kitploit:~
./scripts/download_alex_dataset.sh       # ALEX
./scripts/download_mgbench.sh            # mgbench
./scripts/download_sosd_datasets.sh      # SOSD
./scripts/preprocess_alex_dataset.sh     # ALEX
./scripts/preprocess_mgbench.sh          # mgbench
./scripts/generate_synthetic_dataset.sh  # sintético

4. Experimentos

Cada execução recebe um config JSON via ./scripts/run_experiment.sh <config.json>. Exemplos:

4.1 Maximizar o erro máximo (ex.: n=16, método consecutivo)

root@kitploit:~
./scripts/run_experiment.sh "configs/experiments/poison_attack/maximize_maxerror_consec/baseline_n16.json"

4.2 Minimizar chaves legítimas cobertas (ex.: epsilon=2, método consecutivo)

root@kitploit:~
./scripts/run_experiment.sh "configs/experiments/poison_attack/minimize_segment_length/baseline_epsilon2.json"

4.3 Maximizar m_opt (exemplo do PGM-index)

root@kitploit:~
./scripts/run_experiment.sh "configs/experiments/poison_attack/inject_poisons_to_minimize_segment_length_swing_lambda_with_theta/baseline.json"

4.4 Limite superior de m_opt (exemplo dependente da instância)

root@kitploit:~
./scripts/run_experiment.sh "configs/experiments/upper_bound/fix_w_per_block/baseline.json"

4.5 Executar todos os experimentos (lote)

Executa a lista completa de configs de experimentos em scripts/run_all_experiment.sh (edite esse arquivo para alterar o conjunto).

root@kitploit:~
./scripts/run_all_experiment.sh

5. Gráficos e tabelas

A partir da raiz do repositório:

root@kitploit:~
./scripts/plot.sh
./scripts/print_table.sh

Figuras e logs são gravados em fig/. Instale primeiro as dependências Python: pip install -r requirements.txt.

Dependências

  • Toolchain C++: g++, make e CMake (o script de build configura com CMake e compila com cmake --build, que normalmente invoca o Make).
  • Python 3 com os pacotes em requirements.txt (scripts de gráficos / tabelas).
  • jq — exigido por ./scripts/run_experiment.sh para analisar o JSON dos experimentos.

Estrutura do Projeto

Docker

Compile a imagem uma vez:

root@kitploit:~
./docker_build.sh
  • docker_run.sh — Contêiner interativo: monta o repositório em /workspace, aloca 8 CPUs (0–7), abre um bash para que você possa compilar e executar comandos manualmente.
  • docker_run_all.sh — Execução destacada: executa ./scripts/run_all_experiment.sh dentro do contêiner (8 CPUs) e grava a saída padrão em results/run_all.log.
  • docker_run_all_single_cpu.sh — Igual ao docker_run_all.sh, mas com uma CPU e OMP_NUM_THREADS=1 para execuções de thread única.

Todos os três usam a imagem pgm_poisoning:latest e as mesmas configurações de capacidade / volume dos scripts.

Baixar ferramenta
CaminhoFunção
src/Fontes C++ (ataques, benchmarks PGM, ferramentas, limites superiores).
configs/experiments/Configs JSON dos experimentos (caminhos sob poison_attack/, upper_bound/, etc.).
scripts/Build, dados, run_experiment.sh, run_all_experiment.sh, plot.sh, print_table.sh.
third_party/Submódulos Git (PGM-index, FITing-Tree, RadixSpline).
data/, results/, fig/Dados, saídas das execuções e figuras / logs de tabelas gerados.
plot/Scripts Python de plotagem e impressão de tabelas.