Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
GraphIP-Bench — Benchmark e biblioteca para avaliar ataques de extração de modelos e defesas de propriedade (marcação de água, perturbação de saída, deteção de consultas) em redes neuronais de grafos sob um único protocolo de caixa negra. | Kitploit
Ferramentas/GitHubGitHub/labrai/graphip-bench
Ferramentas DefensivasAprendizado de MáquinaPapers e PesquisaAprendizado e EducaçãoSegurança de IAAtaque Adversário
GitHublabrai/graphip-bench

GraphIP-Bench

Benchmark e biblioteca para avaliar ataques de extração de modelos e defesas de propriedade (marcação de água, perturbação de saída, deteção de consultas) em redes neuronais de grafos sob um único protocolo de caixa negra.

Ver Repositório
236há 5 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

GraphIP-Bench

Quão Difícil É Roubar uma Rede Neural em Grafos, e Podemos Impedi-lo?

Um benchmark e biblioteca unificados para avaliar ataques de extração de modelos e defesas de propriedade em redes neurais em grafos sob um único protocolo de caixa-preta reproduzível.

Project Python PyTorch DGL PyG License

Por que GraphIP-Bench · Destaques · Início Rápido · Questões de Pesquisa · Estrutura · Citação

Attacks Defenses Datasets Backbones Tasks Joint Track


Por que GraphIP-Bench

Redes neurais em grafos implantadas como serviços em nuvem podem ser roubadas por meio de ataques de extração de modelos: um adversário envia consultas cuidadosamente escolhidas, registra os rótulos ou pontuações de confiança que o endpoint retorna e treina um substituto local que reproduz o comportamento do alvo. Um roubo bem-sucedido vaza a propriedade intelectual do proprietário, prejudica a receita de pagamento por consulta e permite que concorrentes recriem funcionalidades proprietárias a baixo custo.

Uma linha crescente de defesas de propriedade — marca d'água, fingerprinting, perturbação de saída, detecção de padrões de consulta — tenta prevenir ou rastrear esse roubo. Mas a prática experimental nessa área é fragmentada: os estudos usam divisões privadas, orçamentos incompatíveis e métricas inconsistentes; os poucos testbeds existentes focam em robustez ou privacidade e excluem a extração de modelos juntamente com a verificação de propriedade.

GraphIP-Bench aborda essa lacuna. Ele padroniza a avaliação de duas trilhas complementares — a trilha de extração (um adversário treina um substituto que imita uma GNN implantada) e a trilha de propriedade (o proprietário do modelo verifica uma marca d'água ou fingerprint após a extração) — sob um único protocolo de caixa-preta com divisões, consultas e orçamentos compartilhados. Em seguida, adicionamos uma trilha conjunta de ataque e defesa que executa cada ataque de extração em cada alvo defendido e mede a sobrevivência da marca d'água no substituto extraído — o cenário que de fato determina se uma defesa é útil.

ComponenteO que ele oferece
12 ataquesSeis baselines no estilo MEA (MEA0–MEA5), adversarial (AdvMEA), orientado por centralidade (CEGA), sensível à estrutura (Realistic) e três variantes sem dados (DFEA_I/II/III)
12 defesas5 de rastreamento de propriedade (BackdoorWM, RandomWM, SurviveWM, ImperceptibleWM, Integrity) + 7 de limitação de informação (OP_low, OP_high, PR_2bit, PR_top1, PRADA, AdaptMisinfo, GradRedir)
10 conjuntos de dadosCitação homofílica (Cora, CiteSeer, PubMed), coautoria/produto (CoauthorCS, CoauthorPhysics, Computers, Photo), em larga escala (OGBN-Arxiv), heterofílicos (RomanEmpire, AmazonRatings)
3 backbones × 3 tarefasGCN, GAT, GraphSAGE em classificação de nós, predição de links, classificação de grafos
Trilha conjuntaFidelidade do substituto e sobrevivência da marca d'água no substituto extraído, tudo sob um único protocolo
ReprodutibilidadeSplits públicos, conjuntos de consultas compartilhados, sementes fixas, saídas JSON-Lines, scripts de agregação prontos

Destaques

Um protocolo, dois lados

Cada ataque é avaliado contra cada defesa sob os mesmos splits, orçamentos e suposições de endpoint. Fidelidade, verificação de propriedade, utilidade e custo computacional são reportados em uma suíte de métricas compartilhada.

Sobrevivência da marca d'água, não apenas incorporação

A trilha conjunta mede se uma marca d'água ainda é verificável após o modelo ser efetivamente extraído — expondo a lacuna que avaliações de modelo único deixam passar.

Grafos heterofílicos e em larga escala

Além dos sete grafos homofílicos do protocolo central, adicionamos OGBN-Arxiv (169K nós, 40 classes) e os heterofílicos RomanEmpire / AmazonRatings para testar sob estresse o comportamento de ataque e defesa.

Reprodutível por construção

Sementes fixas, conjuntos de consultas compartilhados e registros de saída JSON-Lines por célula (conjunto de dados, ataque, defesa, regime, orçamento, semente). Uma execução com semente única é diretamente comparável à célula correspondente no artigo.


Visão Geral

SinalEscala no benchmark
Ataques de extração12
Defesas de propriedade / limitação de informação12
Conjuntos de dados de grafos10
Backbones de GNN3 (GCN, GAT, GraphSAGE)
Tarefas de aprendizado em grafos3 (nó / link / grafo)
Regimes de disponibilidade de dados4 (ambos, apenas features, apenas estrutura, sem dados)
Orçamentos de consulta padronizados5 (0,05× — 1,00× do tamanho do teste)
Sementes por célula3
Trilhas de avaliação3 (extração, propriedade, conjunta)

Início Rápido

git clone https://github.com/LabRAI/GraphIP-Bench.git
cd GraphIP-Bench
conda create -n graphip python=3.11 -y
conda activate graphip
pip install -r requirements.txt

Execute uma célula da trilha de extração:

python scripts/run_rq1_single.py \
  --dataset Cora \
  --attack MEA0 \
  --regime both \
  --budget 0.25 \
  --seed 0 \
  --gpu \
  --output-dir outputs/RQ1

Execute a trilha conjunta de ataque e defesa em um único conjunto de dados:

python examples/run_joint_evaluation.py \
  --dataset Cora \
  --seed 0 \
  --gpu

Cada execução grava um registro JSON-Lines por tupla (attack, defense, regime, budget, seed) em outputs/. Os registros podem ser mesclados e analisados com os helpers em scripts/ (por exemplo, merge_rq1_rq5_faithful_results.py).


Instalação

O GraphIP-Bench oferece suporte a Linux (recomendado) com Python 3.10+. Fixamos as versões de PyTorch / DGL / PyG porque os kernels graphbolt do DGL 2.1.0 só são distribuídos como bibliotecas compartilhadas pré-compiladas para PyTorch 2.0–2.2 em CUDA 12.1.

Opção A: Conda (recomendado)

conda create -n graphip python=3.11 -y
conda activate graphip
pip install -r requirements.txt

Opção B: pip + venv

python -m venv .venv && source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
Baixar ferramenta