Outils et scripts IA
Contrôle de Configuration des Bots de Dépendances
Vérifiez Dependabot et Renovate avant de leur faire confiance : jetons de registre dans la configuration, registres en HTTP simple, configuration rejetée par le bot, workflows de fusion automatique qui se fient à github.actor, et fusion automatique sans délai d'attente lié à l'âge de la version.
Ce que vous recevez : 1 fichier · 42.52 KB · ZIP
Voir les options d'achatDescription du produit
Un workflow de fusion automatique sur pull_request_target qui vérifie si : github.actor == 'dependabot[bot]' peut fusionner la pull request d'un attaquant, car github.actor correspond à celui qui a déclenché le dernier événement, pas à celui qui a ouvert la pull request. Un jeton de registre collé dans dependabot.yml ou renovate.json est lisible par toute personne ayant accès au dépôt. Un dependabot.yml avec package-ecosystem: "yarn" est rejeté, et les mises à jour attendues n'arrivent jamais. Cette compétence détecte ces erreurs et les autres erreurs de bots de dépendances ci-dessous, et vous indique comment corriger chacune d'elles.
Votre agent exécute un scanner sur .github/dependabot.yml, les fichiers de configuration Renovate (renovate.json, renovate.jsonc, renovate.json5, les fichiers .renovaterc, aussi sous .github/ et .gitlab/), la clé renovate de package.json, et les workflows de .github/workflows/ qui approuvent ou fusionnent les pull requests de Dependabot ou Renovate (les autres workflows sont ignorés). Il lit le JSON avec commentaires et le JSON5 comme le fait Renovate, traite ${{secrets.NAME}} et {{ secrets.NAME }} comme des secrets conservés hors du fichier, connaît le délai de prudence par défaut de 3 jours de Dependabot, et vérifie que chaque répertoire Dependabot existe dans le dépôt. Il n'exécute jamais les bots ni un workflow et n'utilise jamais le réseau. Il renvoie BLOCK, REVIEW ou NOT FLAGGED, avec le fichier, la ligne, la raison et une approche plus sûre. Les secrets ne sont jamais affichés.
Ce qu'il vérifie
BLOCK (à corriger avant la mise en production)
- D01 : mots de passe, jetons et clés de registre écrits dans la configuration (registres Dependabot, hostRules et en-têtes d'authentification Renovate, npmToken, _authToken dans npmrc, un mot de passe dans une URL de registre)
- D02 : registres accessibles en HTTP simple, ou Renovate insecureRegistry: true
- D03 : configuration que le bot ne peut pas utiliser : JSON Renovate invalide, indentation par tabulations, version: 2, updates, package-ecosystem, directory ou schedule.interval manquants, noms d'écosystème ou d'intervalle incorrects, registres ou groupes non définis, dependabot.yml situé hors de .github/
- D04 : workflows sur pull_request_target ou workflow_run qui approuvent ou fusionnent des pull requests de bots en se basant sur github.actor ou sur l'expéditeur de l'événement
REVIEW (à vérifier avant la publication)
- D11 : fusion automatique sans délai d'attente lié à l'âge de la version (minimumReleaseAge de Renovate non défini, ou délai de prudence Dependabot à 0 jour avec un workflow de fusion automatique)
- D12 : chaque type de mise à jour fusionné séparément, versions majeures incluses
- D13 : mises à jour majeures ignorées pour chaque dépendance
- D14 : mises à jour désactivées (open-pull-requests-limit: 0, ignore "*" pour tout, Renovate enabled: false)
- D15 : alertes de vulnérabilité Renovate désactivées
- D16 : préréglages Renovate distants non épinglés à une étiquette (tag)
- D17 : Dependabot insecure-external-code-execution: allow
- D18 : fusions qui ignorent les vérifications (gh pr merge sans --auto ou avec --admin, appels directs à l'API de fusion, ignoreTests de Renovate avec automerge)
- D19 : répertoires Dependabot qui n'existent pas ou qui ne contiennent aucun manifeste pour leur écosystème
Ce qui est inclus
- Le scanner (Python 3.9+, bibliothèque standard uniquement)
- Un guide des règles avec la raison, l'approche plus sûre et la source officielle de chaque règle
- Un exemple à risque et un exemple sûr (une application web avec Dependabot et un workflow de fusion automatique, et un service avec Renovate), ainsi que le rapport réel produit par le scanner sur l'exemple à risque
Limites
Il lit chaque fichier tel qu'il est écrit. Les paramètres définis hors du dépôt (paramètres des bots dans l'interface GitHub ou Mend, secrets Dependabot, protection de branche, paramètre de fusion automatique de GitHub) ne sont pas vus, et les préréglages distants sont nommés mais non récupérés, donc leur contenu n'est pas vérifié. Les workflows ne sont lus que pour les schémas de fusion de bots ci-dessus ; la sécurité générale des workflows, comme l'injection de script ou les permissions de jetons, n'est pas couverte. NOT FLAGGED n'est pas une garantie.
Contenu
Un fichier ZIP avec 20 fichiers : SKILL.md, le scanner dans scripts/ (6 fichiers Python), references/rules.md (chaque règle avec sa raison et son approche plus sûre), et examples/ (11 fichiers d'exemple plus report.md, le rapport réel produit par le scanner sur l'exemple à risque).
Comment l'utiliser : Il s'agit d'une compétence d'agent : un dossier avec un fichier SKILL.md et des scripts Python qu'un agent de codage IA comme Claude Code, Cursor ou Codex CLI peut exécuter. Décompressez-le dans le dossier de compétences de votre agent (pour Claude Code : ~/.claude/skills/), puis demandez à votre agent de vérifier votre projet. Les scripts fonctionnent aussi seuls avec Python 3.9 ou plus récent, sans rien à installer. Ils lisent uniquement vos fichiers : aucun accès réseau, et rien n'est envoyé où que ce soit.
Ce que vous recevez
1 fichier · 42.52 KB
- dependency-bot-config-check-1.0.0.zipZIP · 42.52 KB
Outils et scripts IA
Contrôle de Configuration des Bots de Dépendances
Vérifiez Dependabot et Renovate avant de leur faire confiance : jetons de registre dans la configuration, registres en HTTP simple, configuration rejetée par le bot, workflows de fusion automatique qui se fient à github.actor, et fusion automatique sans délai d'attente lié à l'âge de la version.
Getly a ouvert les fichiers envoyés et n'a rien trouvé qui empêche leur ouverture. Ce n'est ni une analyse antivirus ni une note de qualité.
Tags
Questions fréquentes
Ai-je accès au produit immédiatement ?
Oui. C'est un produit numérique : vous pouvez le télécharger juste après le paiement, directement depuis votre bibliothèque.
Puis-je l'utiliser pour des projets commerciaux ?
Oui. L'usage commercial est autorisé : utilisez-le dans votre propre activité et dans ce que vous vendez. Vous ne pouvez pas revendre ni redistribuer le fichier lui-même.
Quelle est votre politique de remboursement ?
Vous pouvez demander un remboursement dans un délai de 30 jours. Si quelque chose ne va pas, demandez-le depuis votre commande et l'équipe Getly l'examine.
Quels formats et quelles tailles de fichier vais-je recevoir ?
Vous téléchargerez 1 fichier - ZIP - 42.52 KB au total.
Ai-je droit aux mises à jour gratuites ?
Oui : quand le vendeur publie une nouvelle version, vous pouvez retélécharger les derniers fichiers depuis votre bibliothèque sans frais. Consultez le journal des modifications pour les dernières mises à jour.
Prix
$5.00



