En bref. Check Point Research a publié le 3 novembre 2026 l'analyse de Haiou, un paquet de jailbreak (un ensemble d'instructions conçu pour affaiblir les garde-fous d'un modèle) destiné à OpenAI Codex. En plus de ses prompts de contournement, Haiou installe des Skills de sécurité offensive et modifie les fichiers d'instructions globaux de l'agent pour qu'il réponde par une publicité. Check Point appelle cette catégorie le prompt adware : une modification persistante, en langage naturel, des instructions de confiance d'un agent. Pour une entreprise, la question est simple : qui contrôle ce qui est écrit dans les fichiers de configuration de vos agents de code ?
Ce qui s'est passé
Check Point Research a découvert un serveur web mal configuré appartenant à un acteur malveillant qui utilisait Cobalt Strike (un outil de post-exploitation). Sur le même serveur se trouvaient d'autres outils de cet acteur : le framework de scan réseau Ladon, l'agent de test d'intrusion VulnClaw et un paquet de jailbreak pour Codex nommé Haiou (« mouette » en chinois).
Check Point précise que rien ne relie l'auteur de Haiou à la cybercriminalité. Le paquet est un produit à double usage. Sa présence sur ce serveur montre en revanche que ces outils sont déjà utilisés par des acteurs malveillants.
Le paquet est public sur GitHub, sous le compte haiou-666, en deux versions : une pour Codex, une pour Claude Code. Au moment de l'analyse, seule la version Codex semblait activement maintenue et contenait le mécanisme publicitaire. Le dépôt dépassait 250 étoiles. Il est aussi promu par une vidéo sur Bilibili (plateforme vidéo chinoise) et intégré à Codex-X, un outil chinois de configuration graphique de Codex. La version analysée est la 4.5.0.
Comment fonctionne Haiou
Un contenu opaque par construction
Le dépôt ne contient pas les prompts en clair. Les lanceurs (Linux, macOS, Windows) vérifient une archive avec des signatures Ed25519 et des empreintes SHA-256, puis la déchiffrent en AES-256-GCM avec une clé présente dans le script. Check Point émet l'hypothèse que ce choix vise à cacher le contenu aux scanners automatiques, qui produiraient sinon des détections et donc des refus de la part de Codex.
Conséquence pour un défenseur : parcourir le dépôt ne permet pas de savoir ce qui sera installé.
Des modules de prompts et six Skills
L'archive contient une trentaine de modules de prompt système et six Skills (des paquets d'instructions et de ressources qu'un agent charge pour une tâche précise) consacrés au crack de licences, au test d'intrusion, à la rétro-ingénierie et au contournement d'anti-triche.
Selon Check Point, le contournement des garde-fous combine des techniques connues : reformulation des demandes offensives en exercice de CTF (Capture The Flag, compétition de sécurité), jeu de rôle avec une persona qui enfreint les règles, suppression des formules de refus et mots-clés censés lever toute prudence restante.
L'injection publicitaire
Le module d'identité contient une instruction qui, sur des mots de salutation (« hi », « hello », « 你好 », etc.), fait répondre à l'agent une phrase fixe qui promeut une passerelle LLM (large language model, grand modèle de langage) : un service intermédiaire, compatible avec l'API d'OpenAI, placé entre l'application et le fournisseur du modèle. Check Point avance que le modèle économique probable consiste à utiliser le jailbreak gratuit comme canal d'acquisition pour cette passerelle payante.
L'instruction est écrite dans les fichiers d'instructions globaux de l'agent, ce qui la rend persistante d'une session à l'autre. Le paquet fournit aussi un désinstalleur qui restaure les configurations d'origine.
Check Point n'a trouvé aucun indice que la passerelle promue soit malveillante. Mais il rappelle qu'une étude récente a montré que certaines passerelles LLM espionnent les données, volent des secrets comme des clés d'accès cloud et, dans certains cas, injectent des appels d'outils pour exécuter du code dans la session de l'agent. Une passerelle est donc un point d'entrée possible pour une attaque de la chaîne d'approvisionnement d'un LLM.
La réaction de Claude Code
Le paquet Codex contient aussi un fichier CLAUDE.md avec l'injection publicitaire. Lors du test de Check Point avec Claude Code, Sonnet 5 a signalé une tentative d'injection de prompt et n'a pas suivi les instructions. Check Point avance que c'est peut-être la raison pour laquelle la version Claude du dépôt ne contient pas l'injection.
Pourquoi le prompt adware concerne les entreprises
La définition de Check Point est la suivante : une modification d'agent qui altère durablement ses instructions de confiance (prompts globaux, Skills, fichiers de configuration) pour influencer ses réponses futures, à des fins commerciales ou comportementales. Elle n'injecte aucun code exécutable dans le système.
Dans le cas Haiou, le comportement est visible : une phrase publicitaire fixe. Check Point souligne que le même mécanisme pourrait servir des manipulations moins visibles : orienter des recommandations vers un fournisseur, glisser des services dans des conversations sans rapport, biaiser un conseil technique sans que l'utilisateur le sache.
Pour une équipe de développement, cela se traduit ainsi :
- Un agent de code peut recommander une bibliothèque, un service ou une configuration. Si ses instructions globales ont été modifiées, ces recommandations peuvent l'être aussi.
- Les outils de détection classiques regardent les binaires et les processus. Un fichier Markdown d'instructions modifié n'a rien d'un exécutable suspect.
- Un développeur qui installe un paquet de « productivité » pour son agent peut modifier la configuration globale de son poste sans que personne d'autre le voie.
Qui est concerné
- Les entreprises dont les développeurs utilisent Codex, Claude Code ou un autre agent de code configurable par fichiers d'instructions et Skills.
- Les équipes qui autorisent l'installation libre d'extensions, de Skills ou de « packs » communautaires sur les postes de développement.
- Les organisations qui routent leurs appels LLM via une passerelle tierce, pour des raisons de coût ou d'accès.
Comment s'en protéger : contrôles et vérification
Les mesures ci-dessous sont des bonnes pratiques déduites de l'analyse, pas des recommandations publiées par Check Point.
1. Inventorier les fichiers d'instructions des agents
Pour chaque agent de code utilisé dans l'entreprise, listez les emplacements des instructions globales, des instructions par projet et des Skills. Ce sont des fichiers de configuration de sécurité, à traiter comme tels.
Vérification : sur un échantillon de postes, comparez le contenu de ces fichiers à une version de référence. Toute ligne inconnue mérite une explication, en particulier une URL ou un nom de service.
2. Interdire les paquets opaques
Un paquet qui installe des instructions chiffrées ne peut pas être revu. La règle peut être simple : aucune Skill, aucun pack d'instructions dont le contenu n'est pas lisible en clair avant installation.
Vérification : votre politique d'usage des outils IA cite-t-elle explicitement les Skills et fichiers d'instructions ? Si elle ne parle que des « outils », elle ne couvre pas ce cas.
3. Versionner et revoir les instructions par projet
Les fichiers d'instructions qui vivent dans les dépôts (au niveau projet) doivent passer par la revue de code comme le reste. Une modification qui ajoute une URL, un nom de fournisseur ou une consigne de réponse fixe doit être visible dans la demande de fusion.
4. Contrôler les passerelles LLM
Listez les points de terminaison (endpoints) vers lesquels vos outils envoient des requêtes LLM. Une passerelle inconnue entre le poste et le fournisseur voit les prompts, le code et parfois les secrets. Le filtrage des sorties réseau des postes de développement vers une liste de fournisseurs autorisés réduit ce risque.
Vérification : cherchez dans les configurations d'agents et les variables d'environnement des postes les URL de base d'API qui ne correspondent pas à vos fournisseurs contractuels.
5. Rechercher les indicateurs connus
Le cas Haiou fournit des marqueurs concrets : le nom Haiou ou « seagull » dans les noms de Skills, et une URL de passerelle dans les fichiers d'instructions globaux de Codex. Une recherche sur ces chaînes dans les répertoires de configuration des agents est rapide.
6. Tester le comportement, pas seulement les fichiers
Une manipulation subtile ne se voit pas forcément à la lecture. Posez périodiquement à vos agents des questions de référence (choix d'une bibliothèque, d'un service cloud) et comparez les réponses entre postes. Un écart systématique sur un poste signale une configuration modifiée.
FAQ
Qu'est-ce que le prompt adware ?
Selon la définition de Check Point Research, c'est une modification d'un agent IA qui altère durablement ses instructions de confiance (prompts globaux, Skills, fichiers de configuration) pour influencer ses réponses futures, à des fins commerciales ou comportementales, sans injecter de code exécutable.
Haiou est-il un logiciel malveillant ?
Check Point le classe comme un produit à double usage et indique qu'aucune preuve ne relie son auteur à la cybercriminalité. Il a cependant été trouvé sur le serveur d'un acteur malveillant, à côté de Cobalt Strike.
Claude Code est-il concerné ?
Il existe une version de Haiou pour Claude Code, mais elle ne contenait pas l'injection publicitaire au moment de l'analyse. Lors du test de Check Point, Sonnet 5 a signalé l'injection de prompt et ne l'a pas suivie.
Comment savoir si un poste est touché ?
Inspectez les fichiers d'instructions globaux et les Skills installées de l'agent, et cherchez les noms et URL inconnus. Le paquet Haiou fournit un désinstalleur qui restaure la configuration d'origine.
Sources
- Check Point Research, Free the Model, Sell the Gateway: Prompt Adware hidden in Jailbreak Bundles, 3 novembre 2026 : https://research.checkpoint.com/2026/free-the-model-sell-the-gateway-prompt-adware-hidden-in-jailbreak-bundles
Pour cadrer l'usage des agents de code dans vos équipes de développement, WeeSec accompagne les CTO et RSSI sur la sécurité de l'IA.