Aller au contenu principal

Menu de commandes

Accédez à une page ou recherchez dans le catalogue

Outils et scripts IA

Vérification de sécurité des API Hono

Vérifiez vos API Hono avant de déployer : CORS qui renvoie n'importe quelle origine avec credentials, secrets d'authentification dans le code ou les vars Wrangler, données de requête dans raw() ou c.html(), SQL construit à partir des requêtes, redirections ouvertes, csrf() manquant et plus encore.

$5.00

Ce que vous recevez : 1 fichier · 47.45 KB · ZIP

Voir les options d'achat

Description du produit

cors({ origin: (origin) => origin, credentials: true }) permet à n'importe quel site web d'appeler votre API avec les cookies de vos utilisateurs et de lire les réponses, et c.html() avec une simple chaîne de template envoie ${c.req.query('q')} au navigateur sans échappement, car seul le tag html échappe le contenu. Ce skill détecte ces erreurs Hono ainsi que les autres listées ci-dessous avant votre déploiement, et vous explique comment corriger chacune d'elles.

Votre agent exécute un scanner sur votre code Hono (TypeScript et JavaScript sur Cloudflare Workers, Bun, Deno ou Node, y compris les imports jsr:@hono/hono) et votre wrangler.toml ou wrangler.json. Il ignore les commentaires et les fichiers de test, suit les données de requête (params, query, en-têtes, cookies, corps et entrées validées) à travers les variables locales, considère comme sûrs le tag html, JSX, D1 .bind() et les templates SQL tagués, sait que les bindings c.env et env(c) ne sont pas des secrets littéraux, et prend en compte secureHeaders(), csrf() et bodyLimit() enregistrés n'importe où dans le projet. Il n'exécute jamais votre application. 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 qui est vérifié

BLOCK (à corriger avant la mise en production)

  • H01 : cors() avec credentials et une fonction origin qui renvoie n'importe quelle origine de requête, ou un en-tête Access-Control-Allow-Origin copié depuis la requête
  • H02 : des secrets d'authentification JWT, Basic et Bearer ou des secrets de cookies signés écrits dans le code, comme valeur de repli ou dans les vars Wrangler (les clés publiques et les paramètres comme la durée de vie des jetons ne sont pas concernés)
  • H03 : des données de requête dans raw(), dans c.html() avec une simple chaîne de template ou une fonction du même fichier qui en construit une, ou dans dangerouslySetInnerHTML
  • H04 : du SQL pour D1, pg, Prisma ou Drizzle construit à partir de données de requête avec un template literal ou + (les listes de placeholders et les valeurs choisies parmi des options fixes ne posent pas de problème)

REVIEW (à vérifier avant la publication)

  • H11 : des credentials CORS avec l'origine '*', des vérifications d'origine avec startsWith, includes, endsWith sans point ou des regex non ancrées, et un csrf() qui autorise les requêtes intersites
  • H12 : c.redirect() vers une URL provenant de la requête sans vérification de l'origine ou d'une liste d'autorisation (une simple vérification startsWith('/') laisse toujours passer /\evil.com)
  • H13 : des applications qui servent du HTML sans secureHeaders()
  • H14 : des routes d'upload sans bodyLimit()
  • H15 : un onError qui renvoie des messages d'erreur ou des traces de pile
  • H16 : des routes POST authentifiées par cookie sans csrf() ni cookies de session SameSite
  • H17 : un middleware d'authentification enregistré après les routes qu'il doit protéger
  • H18 : des cookies de session sans httpOnly ou secure
  • H19 : c.html() alimenté par une fonction de vue appelée avec des données de requête et dont le scanner ne peut pas voir l'intérieur

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 projet Workers d'exemple risqué et un projet sûr (routes Hono, D1, R2 et wrangler.toml), ainsi que le rapport réel produit par le scanner sur le projet risqué

Limites

Il lit chaque fichier séparément et ne suit les données de requête qu'à travers les variables de ce fichier : les valeurs transmises à des helpers situés dans d'autres fichiers et les définitions de routes chaînées ne sont pas suivies, et secureHeaders(), csrf() et bodyLimit() comptent pour l'ensemble du projet sans correspondance de leurs chemins. Il ne compare pas votre version de Hono aux bulletins de sécurité et ne vérifie ni les paramètres du tableau de bord Cloudflare ni les secrets définis avec wrangler secret put. NOT FLAGGED n'est pas une garantie.

Contenu

Un fichier ZIP de 17 fichiers : SKILL.md, le scanner dans scripts/ (5 fichiers Python), references/rules.md (chaque règle avec sa raison et son approche plus sûre) et examples/ (9 fichiers d'exemple plus report.md, la sortie réelle du scanner sur l'exemple risqué).

Mode d'emploi : Il s'agit d'un skill d'agent : un dossier contenant un fichier SKILL.md et des scripts Python qu'un agent de programmation IA comme Claude Code, Cursor ou Codex CLI peut exécuter. Décompressez-le dans le dossier des skills 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 se contentent de lire vos fichiers : aucun accès réseau, et rien n'est envoyé nulle part.

Ce que vous recevez

1 fichier · 47.45 KB

  • hono-api-safety-check-1.0.0.zipZIP · 47.45 KB
LicenceUsage commercial autorisé
Vérification du paquetRéussie

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é.

Publié12 nov. 2026
Taille du fichier47.45 KB
Format du fichierZIP
Versionv1.0

Tags

honocloudflare-workersapisecuritytypescriptai agent skill
R
RR HH

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 - 47.45 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