Skip to main content

Requêtes Ruby pour l’analyse CodeQL

Explorez les requêtes que CodeQL utilise pour analyser le code écrit en Ruby et ce lorsque vous sélectionnez la suite de requêtes default ou security-extended.

Qui peut utiliser cette fonctionnalité ?

Code scanning est disponible pour tous les dépôts publics sur GitHub.com. Code scanning est également disponible pour des dépôts privés appartenant à des organisations qui utilisent GitHub Enterprise Cloud et ont une licence pour GitHub Advanced Security. Pour plus d’informations, consultez « À propos de GitHub Advanced Security ».

CodeQL inclut de nombreuses requêtes pour l’analyse du code Ruby. Toutes les requêtes de la suite de requêtes default sont exécutées par défaut. Si vous choisissez d’utiliser la suite de requêtes security-extended, des requêtes supplémentaires sont exécutées. Pour plus d’informations, consultez « Suites de requêtes CodeQL ».

Requêtes intégrées pour l’analyse Ruby

Ce tableau répertorie les requêtes disponibles avec la dernière version de l’action CodeQL et CodeQL CLI. Pour plus d’informations, consultez les journaux des modifications CodeQL dans le site de documentation de CodeQL.

Remarque : la correction automatique de GitHub pour code scanning est en phase bêta. Les fonctionnalités et la documentation sont sujettes à modification. Au cours de cette phase, la fonctionnalité est limitée aux alertes JavaScript, TypeScript, Python et Java identifiées par CodeQL. Si vous avez un compte d’entreprise et que vous utilisez GitHub Advanced Security, votre entreprise a accès à la version bêta.

Nom de la requêteCWE connexesPar défautÉtendu
Mauvais filtrage HTML regexp116, 020, 185, 186
Expression régulière mal ancrée020
Effacer la journalisation de texte des informations sensibles312, 359, 532
Stockage de texte en clair des informations sensibles312, 359, 532
Injection de code094, 095, 116
Protection CSRF affaiblie ou désactivée352
Téléchargement de dépendances à l’aide d’un canal de communication non chiffré300, 319, 494, 829
Désérialisation des données contrôlées par l’utilisateur502
Téléchargement d’un fichier sensible par le biais d’une connexion non sécurisée829
Assainissement à caractères multiples incomplet020, 080, 116
Expression régulière incomplète pour les noms d'hôte020
Escaping ou encodage de chaîne incomplet020, 080, 116
Assainissement de sous-chaîne d’URL incomplet020
Expression régulière inefficace1 333, 730, 400
Exposition des informations par le biais d’une exception209, 497
Plage d’expressions régulières trop permissive020
Expression régulière polynôme utilisée sur des données non contrôlées1 333, 730, 400
Scripting inter-site côté serveur réfléchi079, 116
Injection d’expressions régulières1 333, 730, 400
Données sensibles lues à partir de la requête GET598
Falsification de requête côté serveur918
Requête SQL créée à partir de sources contrôlées par l’utilisateur089
Scripting inter-site stocké079, 116
Ligne de commande non contrôlée078, 088
Données non contrôlées utilisées dans l'expression de chemin d'accès022, 023, 036, 073, 099
Code HTML non sécurisé construit à partir d’une entrée de bibliothèque079, 116
Commande shell non sécurisée construite à partir d’une entrée de bibliothèque078, 088, 073
Redirection d’URL à partir d’une source distante601
Utilisation de récepteurs Kernel.open ou IO.read ou similaires avec une valeur non constante078, 088, 073
Utilisation de récepteurs Kernel.open, IO.read ou similaires avec une entrée contrôlée par l’utilisateur078, 088, 073
Utilisation d’un algorithme de cryptage rompu ou faible327
Utilisation de la chaîne de format contrôlée en externe134
Configuration faible des cookies732, 1 275
Extension d’entité externe XML611, 776, 827
Identifiants codés en dur259, 321, 798
Données codées en dur interprétées en tant que code506
Injection de journaux d’activité117
Ancre d'expression régulière manquante020
Données réseau écrites dans un fichier912, 434
Requête sans validation de certificat295
Code unsafe construit à partir d’une entrée de bibliothèque094, 079, 116