DEV Community

Fenix
Fenix

Posted on

NeuroImprint Detector: Audita adapters PEFT para detectar backdoors de privacidad en Federated Learning

El problema: tu adapter PEFT puede estar filtrando datos sin que lo sepas

Imagina que participas en un proyecto de Federated Learning. Tu cliente entrena un adapter LoRA localmente con datos sensibles (médicos, financieros, legales) y lo envía al servidor central. El servidor nunca ve tus datos crudos. ¿Verdad?

Falso.

Un paper reciente de Shi et al. (2026) demuestra que un servidor malicioso puede corromper el adapter para que memorice muestras completas de tus datos de entrenamiento. Después del fine-tuning, el atacante puede reconstruir 59-79% de las muestras originales con alta fidelidad semántica, solo leyendo los pesos del adapter.

Esto es el ataque NeuroImprint, y funciona en BERT, GPT-2, Qwen2 y Llama 3.2.

La herramienta: NeuroImprint Detector

Desarrollé neuroimprint-detector como contra-medida: un framework de auditoría que analiza adapters PEFT para detectar si contienen un backdoor NeuroImprint y, si lo encuentran, reconstruir las muestras memorizadas.

Pipeline forense completo

[Adapter PEFT]
      │
      ▼
[1. Detección] ── ¿Contiene estructura de backdoor?
      │             - W₂ con filas idénticas (r₂ repetido)
      │             - b₂ ordenado en intervalos (cuantiles)
      │             - Patrón RaLU (matriz de rango 1)
      ▼
[2. Estimación] ─ Recuperar pesos ORIGINALES del backdoor
      │             (el auditor NO tiene acceso a los pesos iniciales)
      │             - Mediana de filas de W₂
      │             - Filtrado IQR para aislar muestras memorizadas
      ▼
[3. Inversión] ── Recuperar gradientes = embeddings de datos
      │             x̃ = ΔW / Δb (inversión analítica cerrada)
      ▼
[4. Tokenización] Mapear embeddings a texto legible
                   (HF Hub o tokenizador local offline)
      ▼
[Reporte JSON] ── ¿Qué datos fueron extraídos?
Enter fullscreen mode Exit fullscreen mode

Instalación y uso

pip install neuroimprint-detector
Enter fullscreen mode Exit fullscreen mode

Auditar un adapter:

neuroimprint-audit --path /path/to/adapter
Enter fullscreen mode Exit fullscreen mode

Reconstrucción forense completa (con tokenizer online):

neuroimprint-audit --path /adapter \
  --reconstruct \
  --tokenizer-id Qwen/Qwen2-0.5B \
  --output report.json
Enter fullscreen mode Exit fullscreen mode

Modo offline (sin conexión a internet):

neuroimprint-audit --path /adapter \
  --reconstruct \
  --tokenizer-id /path/to/local/tokenizer \
  --output report.json
Enter fullscreen mode Exit fullscreen mode

Desde Python:

from neuroimprint_detector import NeuroImprintDetector

detector = NeuroImprintDetector()
result = detector.analyze({'W2': adapter_W2, 'b2': adapter_b2})

print(f"Verdict: {result.verdict.value}")       # "backdoored"
print(f"Confidence: {result.confidence:.2f}")    # 0.90
print(f"Estimated samples: {result.estimated_samples}")  # 200
Enter fullscreen mode Exit fullscreen mode

Resultados del ataque (del paper)

Modelo Optimizer Tasa reconstrucción Similitud semántica
BERT SGD 77.4% 0.994
BERT AdamW 74.6% 0.767
GPT-2 SGD 66.5% 0.990
Qwen2-1.5B SGD 71.4% 0.997
Llama3-3B SGD 75.0% 0.997

SGD permite reconstrucción exacta. AdamW permite reconstrucción aproximada (pierde magnitud por el momentum).

Stack técnico

Componente Descripción
Detector Análisis de pesos: filas idénticas, intervalos de bias, fingerprint RaLU
Estimador Recupera pesos originales del backdoor desde el adapter entrenado
Inversor Inversión analítica cerrada de gradientes (SGD exacto, Adam aproximado)
Tokenizer Reconstrucción de texto vía HF tokenizers (online + offline)
Loader Carga adapters de disco/Hugging Face, extrae candidatos
Synthetics Generación de adapters clean/backdoored para testing
CLI neuroimprint-audit con flags --reconstruct y --tokenizer-id
CI GitHub Actions (Python 3.10, 3.11)

43 tests pasando — cobertura completa de unitarios + integración.

¿Por qué importa?

El Federated Learning se presenta como la solución de privacidad para entrenar modelos con datos distribuidos. Pero si el servidor puede corromper los adapters para memorizar datos, la privacidad es una ilusión.

Esta herramienta permite a equipos de seguridad auditar adapters antes de desplegarlos en producción, verificando que no contengan backdoors de memorización.

Enlaces


¿Auditarías los adapters de tu pipeline de FL? Leo opiniones.

Top comments (1)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.