Aller au contenu
use-cases / weekly-canary-agent / hero
CRON · AGENT · SNAPSHOTS

Un canari hebdomadaire qui essaie de casser la production

Chaque dimanche à 7h, une entrée hoody-cron réveille un hoody-agent dans un conteneur neuf. Le prompt de l'agent : se comporter comme un utilisateur malveillant. Il sonde les formulaires de connexion, fuzze l'API, teste le rate limiter — face à un snapshot de la prod, jamais la prod elle-même. À 9h, il écrit un rapport de findings sur une URL.

Lire la documentation agent
use-cases / weekly-canary-agent / mechanism

Comment le canari se réveille, attaque et part à la retraite

Trois appels HTTP en séquence. L'entrée cron déclenche un snapshot de la prod, un conteneur agent est lancé contre le snapshot avec un prompt d'attaque, et le rapport est PUT sur une URL quand l'agent sort. Aucune infrastructure long-running entre deux dimanches.

1 · cron.hoody.com
POST · dimanche 07:00
# A managed cron entry wakes the canary every sunday.POST cron.hoody.com/users/root/entries{ schedule: "0 7 * * 0", // sunday 07:00 command: "/usr/local/bin/canary-run.sh", comment: "weekly-canary-agent"}
snapshot d'abord, attaque ensuite
2 · api.hoody.com
POST · snapshot + agent
# Snapshot prod first — the agent never touches the live container.POST api.hoody.com/api/v1/containers/$PROD/snapshots{ alias: "canary-2026-05-03" }# Spawn an agent task against the snapshot URL.POST agent.containers.hoody.com/api/v1/agent/tasks{ target: "https://canary-snap.containers.hoody.com", prompt: "behave like a malicious user — top 20 OWASP, fuzz the API"}
rapport, puis retraite
3 · files.containers.hoody.com
PUT · rapport statique
# Agent writes the report as a static html file. Anyone can read it.PUT files.containers.hoody.com/api/v1/files/canary/last-sunday.html# Container is destroyed. The snapshot stays for 30 days.200 OK · 3 findings · agent terminated · snapshot retained 30d

Les trois pièces — Cron, Container Snapshots, le service Agent — existent déjà dans le Kit. Les câbler ensemble, c'est un seul script shell. Il n'y a pas de plateforme canari à installer.

use-cases / weekly-canary-agent / sunday

Ce que l'agent fait réellement un dimanche

Deux heures, du début à la fin. L'agent lit son propre prompt comme un runbook. Chaque finding est documenté avec des étapes de reproduction pour que l'ingénieur qui le lit lundi puisse vérifier en moins d'une minute.

  1. 07:00RÉVEIL

    Cron se déclenche. Le script runner envoie un POST au endpoint snapshots puis au service agent. Un alias canary-2026-05-03 est créé.

  2. 07:02RECONNAISSANCE

    L'agent ouvre hoody-browser face à l'URL du snapshot. Il énumère les routes depuis la spec OpenAPI et les liens de la page d'accueil, en construisant une carte de la surface.

  3. 07:30ATTAQUE

    OWASP top 20 dans l'ordre : SQLi, XSS, IDOR, SSRF, race conditions, contournement du rate-limit. Avant chaque requête à risque, l'agent prend un sous-snapshot pour qu'un payload destructeur ne puisse pas empoisonner les tests suivants.

  4. 08:45TRIAGE

    Chaque réponse non-erreur reçoit une sévérité, une recette de reproduction, et un correctif suggéré. Les findings que l'agent peut vérifier lui-même avec une seconde requête reçoivent un score de confiance.

  5. 09:00RAPPORT

    Rapport PUT vers /canary/last-sunday.html. Conteneur détruit. Cron sort 0. La prochaine entrée ne se déclenchera pas avant sept jours.

Deux heures de dimanche matin produisent un rapport statique que votre équipe peut lire avec un café. Il n'y a pas de dashboard où se connecter ni d'agent à surveiller pendant qu'il travaille.

use-cases / weekly-canary-agent / powers

Pourquoi un snapshot est l'avantage déloyal

Un pen-tester ne peut pas lâcher un agent sur la production. Avec Container Snapshots, l'agent a un clone exact à casser — et le système live ne le sent jamais.

ISOLATION

La prod n'est jamais la cible

Le snapshot que l'agent attaque est un clone copy-on-write du système de fichiers et de la config de la prod. Une exploitation réussie modifie le clone, pas le conteneur live. Quand l'agent prend sa retraite, le clone prend la sienne avec lui.

REJEU

Chaque finding peut être rejoué

Le snapshot est conservé trente jours. Les étapes de reproduction du rapport pointent vers une URL de snapshot, ce qui permet à un ingénieur de rejouer n'importe quel payload lundi face à l'état exact que l'agent a vu dimanche.

RAYON DE PROPAGATION

Aucun fuzz ne contamine les vraies données

Quand l'agent soumet un millier de payloads poubelle, ils finissent dans une base qui sera jetée. Pas de ticket de support pour un utilisateur fantôme, pas de remboursement réel crédité par accident, pas de journal d'audit rempli des expériences de l'agent.

use-cases / weekly-canary-agent / economics

À quoi ressemblait le contrat

La réponse standard à « il faudrait pen-tester l'app », c'est un engagement annuel à 40 000 $ qui couvre deux semaines du calendrier de quelqu'un d'autre. Le canari tourne tous les dimanches sur le serveur à tarif fixe Hoody que vous louez déjà — cron est le déclencheur, pas l'unité de facturation.

AVANT · CONTRAT ANNUELdeux engagements par an
$40,000 / yr

Deux fenêtres de deux semaines d'une firme de pen-test externe pour le scoping, le scan, et la rédaction d'un PDF que vous lisez une fois. Les findings sont périmés de six mois au moment où le contrat suivant commence.

  • planification2× / an
  • cadence des rapportsPDF · 6 mois périmé
  • coût40 000 $+
vous le lisez une fois, puis vous l'oubliez
APRÈS · CRON HEBDOMADAIREune entrée cron, cinquante-deux rapports par an
1× cron entry

Une entrée Hoody Cron managée. Un court script shell. Le snapshot vit trente jours. Le conteneur existe pendant deux heures. Il n'y a aucune firme à embaucher ni calendrier à coordonner.

# crontab.weekly-canary0 7 * * 0 /usr/local/bin/canary-run.sh
cinquante-deux rapports de findings par an

Cadrage des coûts. Le chiffre de 40 k$ est un engagement type de pen-test mid-market, pas un devis Hoody. Le canari tourne sur le serveur à tarif fixe que vous payez déjà ; le coût du serveur est le même qu'un agent s'exécute deux heures ou vingt. Les appels LLM de l'agent passent par la Hoody AI Gateway (coût du fournisseur + 5% de marge, prélevés sur AI Balance) ou votre propre clé de fournisseur (chemin BYO, le fournisseur facture séparément). Deux balances, firewalled : General Balance finance le serveur ; AI Balance finance la gateway. Un agent en fuite ne peut pas dévorer votre budget infrastructure.

use-cases / weekly-canary-agent / punchline

Chaque dimanche matin, un agent gagne sa croûte en essayant de casser ce que vous avez construit.

CADENCE52× / anun rapport chaque dimanche — jamais six mois en retard
SURFACE D'ATTAQUEsnapshotla prod n'est jamais la cible — c'est le clone
OPÉRATIONS1× cronpas de plateforme à installer · pas de firme à programmer
Lire l'API snapshots
use-cases / weekly-canary-agent / replaces

Ce que cela remplace

Les outils standards quand vous voulez une pression adversariale continue sur votre propre produit. Chacun vous facture un contrat, un siège de plateforme, ou une marketplace de bug bounty. Le canari s'exécute sur le serveur à tarif fixe Hoody que vous payez déjà ; la ligne cron est une configuration, pas une unité de facturation.

  • prestataires red-teamDeux engagements par an pour un PDF périmé de six mois
  • Synack pentestingTesteurs en crowdsourcing et frais de plateforme par siège
  • scripts chaos-monkey maisonUn projet de week-end que personne ne possède ni ne met à jour
  • passes de QA hebdomadaires manuellesLe lundi matin d'un ingénieur, chaque semaine, pour toujours
  • plateforme chaos engineering GremlinUn siège de plateforme pour ce qui est en fait surtout cron + container snapshots
  • BugBounty as a servicePaie par finding seulement après qu'un finding ait atteint la prod
use-cases / weekly-canary-agent / cta

Câblez le cron, pointez-le vers un snapshot, donnez son prompt à l'agent — et lisez les findings le lundi avec votre café.

Lire la documentation agent
use-cases / weekly-canary-agent / related

Découvrez les autres