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

CodeQL est disponible pour les types de référentiels suivants :

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 version initiale de GitHub Enterprise Server 3.12 incluait l’action CodeQL et CodeQL CLI 2.15.5, qui peuvent ne pas inclure toutes ces requêtes. Votre administrateur de site peut mettre à jour votre version CodeQL vers une version plus récente. Pour plus d’informations, consultez « Configuration de l’analyse de code pour votre appliance ».

Nom de la requêteCWE connexesPar défautÉtenduCopilot Autofix
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
La protection CSRF n'est pas activée352
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
Affectation de masse non sécurisée915
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 d’un algorithme de hachage de chiffrement défectueux ou faible sur des données sensibles327, 328, 916
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