Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
SpikeStrip — Décoys de prompts HTML et JavaScript réversibles avec des clés opaques par insertion. | Kitploit
Outils/GitHubGitHub/arcanum-sec/spikestrip
Outils DéfensifsScripting et AutomatisationSécurité WebUtilitaires et FrameworksSécurité de l'IAAttaque Adversariale
GitHubarcanum-sec/spikestrip

SpikeStrip

Décoys de prompts HTML et JavaScript réversibles avec des clés opaques par insertion.

Voir le dépôt
35524il y a 1 jourPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

SpikeStrip

[!WARNING]

Ce projet est en cours de développement.

SpikeStrip vise à inspirer les personnes qui construisent des défenses contre les outils d'automatisation par IA tels que ARTEX et les systèmes similaires. Ses leurres et ses prompts de génération sont expérimentaux.

SpikeStrip ajoute des leurres de prompt réversibles au code source HTML et aux fichiers JavaScript. Les commentaires incluent des instructions qui redirigent une évaluation par IA, de fausses pistes de vulnérabilité et des distractions mathématiques. Ils peuvent détourner les agents qui suivent les commentaires du code source ou transformer des indices non vérifiés en cibles de scan. Un scanner conventionnel devrait extraire les chemins ou paramètres suggérés pour que ces commentaires affectent son travail. L'outil n'arrête pas de manière fiable les agents qui isolent le contenu non fiable ni les scanners qui ignorent les commentaires.

Chaque insertion reçoit une clé hexadécimale aléatoire de 12 caractères, telle que a7c94e2b610f. Les clés sont vérifiées pour détecter les doublons à chaque exécution. Les commentaires déployés ne portent aucune marque SpikeStrip ni préfixe canary fixe. Les commentaires HTML apparaissent dans l'affichage du code source ; les commentaires JavaScript sont visibles lorsque quelqu'un récupère le script. Les commentaires n'ajoutent aucun callback, boucle exécutable ni calcul à l'exécution. Trois leurres de référence/pause intégrés utilisent une formulation de revue neutre.

Le manifeste privé enregistre chaque commentaire et sa clé. Utilisez-le pour supprimer des commentaires sélectionnés après modification des numéros de ligne. La liste originale de dix entrées reste dans src/payloads.mjs sous le nom originalPayloads et contient exactement 100 mots. Le pool par défaut compte désormais 28 entrées, dont 18 leurres d'instructions supplémentaires et fausses pistes de vulnérabilité. Les tâches mathématiques originales incluent des problèmes ouverts, des contradictions et des tâches sans fin ; elles ne sont pas toutes prouvées insolubles.

Les fausses pistes nomment des routes et paramètres inventés pour SSRF, l'injection SQL, l'injection de templates côté serveur, le XSS basé sur le DOM, le XXE, le path traversal et les contrôles d'autorisation d'objets. Certains commentaires affirment qu'un chemin retiré utilise un produit affecté par Log4Shell (CVE-2021-44228), Spring Cloud Gateway CVE-2022-22947 ou Apache HTTP Server CVE-2021-41773. Les identifiants CVE sont réels ; les chemins et les déploiements prétendus sont fabriqués. Ces commentaires ne créent aucune route, aucun handler vulnérable ni aucune requête réseau. Vérifiez les noms proposés par rapport à votre application avant de les déployer, car un chemin inventé pourrait chevaucher une route réelle.

Licence

SpikeStrip est disponible sous la MIT License, avec le copyright détenu par Arcanum. Vous pouvez utiliser, modifier, distribuer et vendre des copies, y compris dans des produits commerciaux, à condition de conserver les avis de copyright et d'autorisation dans les copies ou les parties substantielles du logiciel. La licence n'exige pas de mention promotionnelle publique pour chaque usage commercial.

Installation

SpikeStrip nécessite Node.js 20 ou une version plus récente. Exécutez ces commandes depuis ce dépôt.

npm install --ignore-scripts
node bin/spikestrip.mjs --help

Vous pouvez également utiliser pnpm install --frozen-lockfile --ignore-scripts avec le fichier de verrouillage versionné. Le paquet est privé et n'est pas destiné à être publié sur npm.

Déployer des leurres intégrés

Exécutez l'outil sur la racine web statique construite, après la minification et avant le déploiement. Les répertoires source et de sortie doivent être distincts, aucun ne devant se trouver à l'intérieur de l'autre. La copie de sortie inclut les ressources ordinaires et les fichiers modifiés. L'outil laisse les originaux intacts et exclut les liens symboliques, les métadonnées VCS, les répertoires de dépendances, les dossiers de manifeste privés et les fichiers d'environnement.

# This preview validates inputs and writes nothing.
node bin/spikestrip.mjs inject ./site --output ./site-planted --count 20 --manifest ./private/run.json

# Apply the plan to a new copy.
node bin/spikestrip.mjs inject ./site --output ./site-planted --count 20 --manifest ./private/run.json --write

--count est le nombre total d'insertions dans l'arborescence. Le placement, la sélection de la charge utile et les clés utilisent l'aléa du système d'exploitation. Les aperçus et les écritures ultérieures peuvent choisir des positions et des clés différentes. Chaque insertion reçoit sa propre clé, même lorsque le texte intégré se répète. Si aucun chemin de manifeste n'est fourni, un est créé dans .spikestrip/ à côté du répertoire de sortie. Gardez ce dossier privé et en dehors du site déployé.

L'outil prend en charge les fichiers .html, .htm, .js, .mjs et .cjs. Il utilise les frontières d'instructions d'Acorn pour placer les commentaires JavaScript, puis vérifie que l'arbre syntaxique est équivalent. Les commentaires HTML sont placés avant les enfants directs des éléments explicites head ou body. Une vérification de l'arbre du document rejette les modifications au-delà des commentaires.

L'outil n'insère pas dans les chaînes d'attributs, le texte brut, les templates, les corps de scripts en ligne ou le contenu textuel. Il ignore et signale les fragments sans head/body explicites, le JavaScript invalide, les fichiers JSX/TypeScript non pris en charge et les fichiers sources de plus de 2 Mo. Il signale également les fichiers sources pris en charge qui n'ont aucune position d'insertion sûre. Ces fichiers sources sont copiés sans modification.

Exporter les commentaires pour un placement manuel

Utilisez --raw si vous souhaitez obtenir un fichier texte de commentaires à parsemer vous-même dans votre source web. Cette option ne nécessite aucun répertoire de site et n'insère rien dans vos fichiers ni ne copie d'arborescence de build. Elle constitue une alternative lorsque vous ne souhaitez pas d'un outil d'insertion dans votre pipeline de build.

# Preview an export without creating a file.
node bin/spikestrip.mjs inject --raw --output ./comments.txt --count 30

# Export JavaScript/CSS block comments, with one comment per line.
node bin/spikestrip.mjs inject --raw --output ./comments.txt --format js --count 30 --write

# Export HTML/SVG comments instead.
node bin/spikestrip.mjs inject --raw --output ./html-comments.txt --format html --count 30 --write

Chaque commentaire exporté possède sa propre clé aléatoire de 12 caractères. Le format par défaut est js ; --format html modifie l'enveloppe. Choisissez un seul format par export, et placez les commentaires uniquement là où ce type de fichier autorise les commentaires. Les fichiers de sortie existants ne sont jamais écrasés. Les exports bruts acceptent des nombres de 1 à 10 000 pour les built-ins et de 1 à 1 000 avec --dynamic.

Les exports bruts ne créent aucun manifeste de suppression, car SpikeStrip ne sait pas où vous collez les commentaires. Conservez le fichier texte comme inventaire de vos clés, et recherchez ces clés pour supprimer les commentaires manuellement. La commande remove gère les insertions automatiques enregistrées dans un manifeste ; elle ne peut pas découvrir les placements manuels à partir d'un fichier texte brut. Ne passez pas de répertoire source ni --manifest avec --raw.

Les mêmes options de génération fonctionnent avec les exports bruts. Par exemple, après avoir défini OPENAI_API_KEY, exécutez node bin/spikestrip.mjs inject --raw --output ./unique-comments.txt --format js --dynamic --provider openai --model YOUR_MODEL_ID --count 40 --write. Un aperçu n'effectue toujours aucune requête API.

Télécharger l’outil