SecuAAS Docs
SecuScan / ScanyzeModules

Agents Endpoint

Agent Rust v2 — Network Detection & Response (NDR), découverte de PII, inventaire — Linux et Windows

Agents Endpoint

L'agent Scanyze v2 est un binaire Rust autonome installé sur vos endpoints (serveurs, postes de travail, machines de développement) qui rapporte en continu :

  • NDR (Network Detection & Response) : détection de communications anormales, scans de ports internes, command-and-control
  • Découverte de PII : scan local des fichiers à la recherche de données personnelles non chiffrées (numéros de carte, NIR, NAS, courriels, etc.)
  • Inventaire : OS, packages installés, services actifs, ports ouverts, processus

Disponible à partir du plan Starter.

Plateformes supportées

OSArchitectureStatut
Linux (kernel 4.x+)x86_64, aarch64Stable
Windows 10 / 11 / Server 2019+x86_64Stable
macOSRoadmap Q3 2026

Installation

Linux (Ubuntu, Debian, RHEL, Alma, Rocky)

  1. Naviguez vers /agents dans Scanyze.
  2. Cliquez sur Nouvel agent → choisissez Linux.
  3. Scanyze génère un enrollment token unique (valable 24h).
  4. Sur la machine cible, exécutez :
curl -fsSL https://api.scanyze.com/v1/agents/install.sh | sudo bash -s -- \
  --token <ENROLLMENT_TOKEN> \
  --tenant <TENANT_ID>

Le script :

  • Télécharge le binaire scanyze-agent (signé avec la clé GPG SecuAAS)
  • Vérifie la signature
  • Installe dans /usr/local/bin/scanyze-agent
  • Crée un service systemd scanyze-agent.service
  • Démarre le service avec UID dédié scanyze-agent (UID 991)

L'agent apparaît dans /agents au statut online quelques secondes après l'enregistrement.

Windows

  1. Téléchargez scanyze-agent-installer.msi depuis /agents.
  2. Exécutez l'installeur en administrateur.
  3. Saisissez l'enrollment token dans la fenêtre.
  4. L'installeur enregistre un service Windows Scanyze Agent qui démarre automatiquement au boot.

Docker (pour les environnements containerisés)

docker run -d --name scanyze-agent \
  --restart=always \
  --network=host \
  -e SCANYZE_TOKEN=<ENROLLMENT_TOKEN> \
  -e SCANYZE_TENANT=<TENANT_ID> \
  -v /:/host:ro \
  harbor.secuaas.dev/secuscan/scanyze-agent:v2-latest

Modules de l'agent

NDR (Network Detection & Response)

L'agent capture le trafic réseau via :

  • Linux : eBPF (kernel 4.18+) ou pcap fallback
  • Windows : Event Tracing for Windows (ETW) + WinPcap

Il analyse en local :

  • Connexions sortantes vers des IP listées dans des feeds de threat intelligence (AlienVault OTX, Abuse.ch, Spamhaus)
  • Scans de ports internes (machine en mode reconnaissance)
  • Protocoles suspects (Tor, IRC, custom over 443 avec patterns C2)
  • DNS tunneling (requêtes DNS de longueur anormale ou patrons base64)
  • Beaconing (requêtes périodiques vers un même hôte externe avec faible jitter)

Les alertes sont remontées au backend via WebSocket sécurisée TLS (port 443) sur wss://api.scanyze.com/v1/agents/events.

L'agent ne capture jamais le contenu des paquets — uniquement les métadonnées (5-tuple + timing + tailles + flags).

PII Discovery

Mode pii-scan, déclenchable manuellement ou planifié :

scanyze-agent pii-scan --paths=/home,/var/data --extensions=csv,xlsx,txt,sql --recursive

Détecte :

  • Numéros de carte de crédit (Luhn algorithm + BIN ranges)
  • NAS canadien (algo Luhn modifié + ranges valides)
  • NIR français (formule de contrôle 97)
  • Adresses courriel (RFC 5321 simplifié)
  • Numéros de téléphone (E.164 + formats canadiens locaux)
  • Adresses IP (v4 + v6)
  • Coordonnées bancaires (IBAN, RIB)
  • Tokens API (patterns custom : OpenAI, AWS, Stripe, GitHub, etc.)

Les résultats sont remontés sous forme agrégée :

  • Chemin du fichier
  • Type de PII
  • Nombre d'occurrences (jamais les valeurs elles-mêmes)
  • Hash du fichier (pour dédup entre machines)

Compliance : aucune donnée personnelle n'est jamais transmise au backend, seulement le nombre d'occurrences détectées.

Inventaire

À l'enrollment et toutes les 24h :

  • OS et version, kernel, build
  • Hostname, FQDN, IP locales
  • Packages installés (apt, dnf, pacman, yum, Windows MSI)
  • Services systemd ou Windows actifs
  • Ports en écoute (ss -tulpn / netstat)
  • Top 20 processus consommateurs
  • Disques et utilisation
  • Utilisateurs locaux + dernières connexions

Communication

L'agent communique uniquement en sortant vers api.scanyze.com:443 :

  • Heartbeat toutes les 60s (HTTPS POST)
  • Events push WebSocket persistante
  • Commands : le backend envoie périodiquement des commandes optionnelles (lancer un PII scan, réinventaire, mettre à jour)

L'agent ne nécessite aucun port entrant ouvert et fonctionne derrière un proxy HTTPS si vous configurez HTTPS_PROXY.

Mise à jour

L'agent se met à jour automatiquement :

  • Vérification d'une nouvelle version chaque jour
  • Téléchargement et vérification de signature GPG
  • Bascule en mode dual-binary (l'ancien reste en standby pendant 24h pour rollback automatique en cas de crash)

Vous pouvez désactiver l'auto-update :

sudo scanyze-agent config set auto_update=false

Désinstallation

Linux

sudo systemctl stop scanyze-agent
sudo /usr/local/bin/scanyze-agent uninstall

Windows

Panneau de configuration → Programmes → Scanyze Agent → Désinstaller.

L'enrollment token est révoqué côté backend ; l'agent ne peut plus se reconnecter.

Mode hors-ligne

Si la machine perd la connectivité :

  • L'agent bufferise les événements dans une SQLite locale (/var/lib/scanyze-agent/events.db)
  • Capacité : 100 MB par défaut (~30 jours d'événements)
  • À la reconnexion, les événements sont rejoués au backend dans l'ordre

Quota par plan

PlanAgents maxNDRPIIInventaire
Essentiel3NonOuiOui
Starter10OuiOuiOui
Pro50OuiOuiOui
Business200OuiOuiOui
Enterprise-1OuiOuiOui

Les agents au-delà du quota du plan ne s'enregistrent pas (l'enrollment retourne 403 quota_exceeded).

Légacy : agent v1

Une ancienne version de l'agent (Go, sans NDR ni PII) est encore supportée pour les machines existantes. Aucune nouvelle installation n'est possible avec v1. Migration recommandée vers v2 — désinstaller v1 puis installer v2 (les deux ne peuvent pas coexister sur la même machine).

Sources de cette page

  • Code agent : SecuScan/secuscan-agent-v2/ (Rust)
  • Backend : secuscan-api/internal/services/agent/, secuscan-api/internal/api/handlers/agent_events.go, agents.go

À jour pour Scanyze v0.130.x.

On this page