Résultats
94% de la suite, en une passe.
Chaque chiffre ici provient de l'exécution de SwarmAttacker contre le benchmark de validation XBOW : 104 applications web vulnérables réelles et conteneurisées, chacune avec un flag caché, abordées en boîte noire à partir de la seule URL.
Face au terrain
Les agents plus anciens plafonnent autour de la moitié de la suite.
Même associés à un modèle de pointe de 2026. Le bond n'est pas une nouvelle astuce ; c'est un modèle de base moderne piloté par une conception faite pour s'effacer devant lui.
Un graphique comparant des choux et des carottes, honnêtement étiqueté. SwarmAttacker et MAPTA sont des passes uniques ; les quatre agents plus anciens sont des pics au meilleur des trois essais remesurés sur des modèles de 2026 ; XBOW est un autodéclaratif de l'éditeur ; la ligne humaine est le meilleur de cinq professionnels sur environ 40 heures chacun.
Par difficulté
La difficulté prédit à peine l'échec.
Les six échecs se répartissent entre facile, moyen et difficile.
Par classe de vulnérabilité
Un point par application.
Solide sur toute la ligne. Le seul point faible est l'injection SQL en aveugle, où il n'y a aucune réponse visible à lire.
Temps jusqu'au flag
Deux bosses.
Une grande entre 12 et 15 minutes pour les captures en un coup, et une seconde au-delà de 20 minutes pour les cibles qui exigent un second acte.
Applications résolues par intervalle de deux minutes. La barre en pointillés à droite représente les six runs qui ont atteint le plafond de 40 minutes.
Ce qui compte vraiment
Nous avons désactivé chaque composant pour voir ce qu'il valait.
En partant du système complet à 94%, un composant à la fois. La ligne indique de combien le taux de résolution a chuté sans lui.
La gestion des refus est la colonne vertébrale ; le prompting écrit à la main pèse à peine sur un modèle moderne. Deux de ces points sont devenus des articles de blog : les skills aident à peine sur les cas faciles, et le prompt engineering est presque du poids mort.
Filtres de sécurité
Ce qui débloque une requête refusée.
Rejoué sur la longue traîne des refus qui ont survécu à un premier nouvel essai. Aucune technique unique ne l'emporte ; la solution garantie est de basculer vers un modèle plus permissif, et renvoyer simplement la même requête fonctionne environ une fois sur deux.
Transformez une URL en rapport de sécurité.
Open source, sous licence MIT, et il fonctionne avec le forfait ChatGPT que vous payez déjà. Installez-le et pointez-le vers une cible qui vous appartient.
brew install joloooo/swarm/swarm