Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
GraphIP-Bench — Banco de pruebas y biblioteca para evaluar ataques de extracción de modelos y defensas de propiedad (marcas de agua, perturbación de salida, detección de consultas) en redes neuronales de grafos bajo un único protocolo de caja negra. | Kitploit
Herramientas/GitHubGitHub/labrai/graphip-bench
Herramientas DefensivasAprendizaje AutomáticoPapers e InvestigaciónAprendizaje y EducaciónSeguridad de IAAtaque Adversario
GitHublabrai/graphip-bench

GraphIP-Bench

Banco de pruebas y biblioteca para evaluar ataques de extracción de modelos y defensas de propiedad (marcas de agua, perturbación de salida, detección de consultas) en redes neuronales de grafos bajo un único protocolo de caja negra.

Ver Repositorio
236hace 5 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

GraphIP-Bench

¿Qué tan difícil es robar una red neuronal de grafos y podemos evitarlo?

Un benchmark y una biblioteca unificados para evaluar ataques de extracción de modelos y defensas de propiedad sobre redes neuronales de grafos bajo un único protocolo de caja negra reproducible.

Project Python PyTorch DGL PyG License

Por qué GraphIP-Bench · Aspectos destacados · Inicio rápido · Preguntas de investigación · Estructura · Citación

Attacks Defenses Datasets Backbones Tasks Joint Track


Por qué GraphIP-Bench

Las redes neuronales de grafos desplegadas como servicios en la nube pueden ser robadas mediante ataques de extracción de modelos: un adversario envía consultas cuidadosamente elegidas, registra las etiquetas o puntuaciones de confianza que devuelve el endpoint y entrena un sustituto local que reproduce el comportamiento del objetivo. Un robo exitoso filtra la propiedad intelectual del dueño, socava los ingresos por pago por consulta y permite a los competidores recrear funcionalidades propietarias a bajo coste.

Una línea creciente de defensas de propiedad —marcas de agua, huellas digitales, perturbación de la salida, detección de patrones de consulta— intenta prevenir o rastrear dicho robo. Pero la práctica experimental en este área está fragmentada: los estudios usan particiones privadas, presupuestos incompatibles y métricas inconsistentes; los pocos bancos de pruebas existentes se centran en robustez o privacidad y excluyen la extracción de modelos junto con la verificación de propiedad.

GraphIP-Bench aborda esta brecha. Estandariza la evaluación de dos pistas complementarias —la pista de extracción (un adversario entrena un sustituto que imita una GNN desplegada) y la pista de propiedad (el dueño del modelo verifica una marca de agua o huella digital tras la extracción)— bajo un único protocolo de caja negra con particiones, consultas y presupuestos compartidos. A continuación añadimos una pista conjunta de ataque y defensa que ejecuta cada ataque de extracción sobre cada objetivo defendido y mide la supervivencia de la marca de agua en el sustituto extraído —el escenario que determina realmente si una defensa es útil.

ComponenteQué te ofrece
12 ataquesSeis líneas base de estilo MEA (MEA0–MEA5), adversarial (AdvMEA), basado en centralidad (CEGA), consciente de la estructura (Realistic) y tres variantes sin datos (DFEA_I/II/III)
12 defensas5 de trazabilidad de propiedad (BackdoorWM, RandomWM, SurviveWM, ImperceptibleWM, Integrity) + 7 de limitación de información (OP_low, OP_high, PR_2bit, PR_top1, PRADA, AdaptMisinfo, GradRedir)
10 conjuntos de datosCitación homofílica (Cora, CiteSeer, PubMed), coautoría/producto (CoauthorCS, CoauthorPhysics, Computers, Photo), a gran escala (OGBN-Arxiv), heterofílicos (RomanEmpire, AmazonRatings)
3 backbones × 3 tareasGCN, GAT, GraphSAGE en clasificación de nodos, predicción de enlaces, clasificación de grafos
Pista conjuntaFidelidad del sustituto y supervivencia de la marca de agua en el sustituto extraído, todo bajo un mismo protocolo
ReproducibilidadParticiones públicas, conjuntos de consultas compartidos, semillas fijas, salidas JSON-Lines, scripts de agregación listos para usar

Aspectos destacados

Un protocolo, dos lados

Cada ataque se evalúa contra cada defensa bajo las mismas particiones, presupuestos y supuestos de extremo. La fidelidad, la verificación de propiedad, la utilidad y el coste computacional se reportan en una suite de métricas compartida.

Supervivencia de la marca de agua, no solo su incrustación

La pista conjunta mide si una marca de agua aún se verifica después de que el modelo se extrae realmente — exponiendo la brecha que las evaluaciones de un solo modelo pasan por alto.

Grafos heterofílicos y a gran escala

Más allá de los siete grafos homofílicos del protocolo central, añadimos OGBN-Arxiv (169K nodos, 40 clases) y los heterofílicos RomanEmpire / AmazonRatings para poner a prueba el comportamiento de ataques y defensas.

Reproducible por construcción

Semillas fijas, conjuntos de consultas compartidos y registros de salida JSON-Lines por celda (conjunto de datos, ataque, defensa, régimen, presupuesto, semilla). Una ejecución con una sola semilla es directamente comparable con la celda correspondiente del artículo.


De un vistazo

SeñalEscala en el benchmark
Ataques de extracción12
Defensas de propiedad / limitación de información12
Conjuntos de datos de grafos10
Backbones GNN3 (GCN, GAT, GraphSAGE)
Tareas de aprendizaje en grafos3 (nodo / enlace / grafo)
Regímenes de disponibilidad de datos4 (ambos, solo características, solo estructura, sin datos)
Presupuestos de consulta estandarizados5 (0.05× — 1.00× del tamaño de test)
Semillas por celda3
Pistas de evaluación3 (extracción, propiedad, conjunta)

Inicio 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

Ejecuta una celda de la pista de extracción:

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

Ejecuta la pista conjunta de ataque y defensa sobre un único conjunto de datos:

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

Cada ejecución escribe un registro JSON-Lines por cada tupla (ataque, defensa, régimen, presupuesto, semilla) en outputs/. Los registros se pueden fusionar y analizar con los helpers de scripts/ (p. ej., merge_rq1_rq5_faithful_results.py).


Instalación

GraphIP-Bench es compatible con Linux (recomendado) y Python 3.10+. Fijamos las versiones de PyTorch / DGL / PyG porque los kernels graphbolt de DGL 2.1.0 solo se distribuyen como bibliotecas compartidas precompiladas para PyTorch 2.0–2.2 en CUDA 12.1.

Opción A: Conda (recomendado)

Descargar herramienta