Skip to main content

RequĂȘtes Java et Kotlin pour l’analyse CodeQL

Explorez les requĂȘtes que CodeQL utilise pour analyser le code Ă©crit en Java ou Kotlin 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 analyser le code Java et Kotlin. 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 Java et Kotlin

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.

Nom de la requĂȘteCWE connexesPar dĂ©fautÉtenduCorrectif automatique Copilot
TrustManager qui accepte tous les certificats295
Android WebView qui accepte tous les certificats295
Attribut de débogueur Android activé489
Injection de fragment Android470
Injection de fragment Android dans PreferenceActivity470
Redirection d’intention Android926, 940
Débogage Webview Android activé489
AccĂšs arbitraire aux fichiers lors de l’extraction d’archives (« Zip Slip Â»)022
Stockage de texte en clair des informations sensibles dans le cookie315
Scripting inter-site079
DĂ©pendance Ă  l’égard de JCenter/Bintray en tant que rĂ©fĂ©rentiel d’artefacts1104
DĂ©sĂ©rialisation des donnĂ©es contrĂŽlĂ©es par l’utilisateur502
Détecter la vulnérabilité CVE-2019-16303 du générateur JHipster338
Validation de l’en-tĂȘte HTTP Netty dĂ©sactivĂ©e093, 113
Protection Spring CSRF désactivée352
Actionneurs Spring Boot exposés200
Injection de langage d’expression (JEXL)094
Injection de langage d’expression (MVEL)094
Injection de langage d’expression (Spring)094
Échec de l’utilisation de l’URL HTTPS ou SFTP dans le chargement/tĂ©lĂ©chargement d’artefacts Maven300, 319, 494, 829
Échec de l’utilisation des cookies sĂ©curisĂ©s614
Injection de langage Groovy094
Fractionnement des réponses HTTP113
Conversion restrictive implicite dans l’affectation composĂ©e190, 192, 197, 681
Composant Android implicitement exporté926
VĂ©rification incorrecte de l’intention par rĂ©cepteur de diffusion925
Expression rĂ©guliĂšre inefficace1 333, 730, 400
Exposition des informations par le biais d’un rapport des appels de procĂ©dure209, 497
Exposition d’informations par le biais d’un message d’erreur209
Validation non sécurisée des beans094
Authentification LDAP non sécurisée522, 319
Authentification locale non sécurisée287
CaractÚre aléatoire non sécurisé330, 338
Manipulation des autorisations d’URI d’intention266, 926
Recherche JNDI avec un nom contrĂŽlĂ© par l’utilisateur074
RequĂȘte LDAP créée Ă  partir de sources contrĂŽlĂ©es par l’utilisateur090
Vérification de signature JWT manquante347
Instruction du langage d’expression OGNL avec entrĂ©e contrĂŽlĂ©e par l’utilisateur917
Plage d’expressions rĂ©guliĂšres trop permissive020
VulnĂ©rabilitĂ© de parcours partielle Ă  distance du chemin d’accĂšs023
Expression rĂ©guliĂšre polynĂŽme utilisĂ©e sur des donnĂ©es non contrĂŽlĂ©es1 333, 730, 400
RequĂȘte gĂ©nĂ©rĂ©e Ă  partir de sources contrĂŽlĂ©es par l’utilisateur089, 564
Lecture Ă  partir d’un fichier accessible en Ă©criture dans le monde732
Injection d’expressions rĂ©guliĂšres730, 400
RĂ©solution d’une entitĂ© externe XML dans les donnĂ©es contrĂŽlĂ©es par l’utilisateur611, 776, 827
Falsification de requĂȘte cĂŽtĂ© serveur918
Injection de gabarit cÎté serveur1336, 094
Ligne de commande non contrÎlée078, 088
Données non contrÎlées utilisées dans la résolution de contenu441, 610
DonnĂ©es non contrĂŽlĂ©es utilisĂ©es dans l’expression de chemin d’accĂšs022, 023, 036, 073
VĂ©rification du nom d’hĂŽte non sĂ©curisĂ©e297
Transfert d’URL à partir d’une source distante552
Redirection d’URL à partir d’une source distante601
Utilisation d’un algorithme de cryptage dĂ©fectueux ou risquĂ©327, 328
Utilisation d’un algorithme de cryptage avec une taille de clĂ© insuffisante326
Utilisation d’une cote prĂ©visible dans un gĂ©nĂ©rateur de nombres alĂ©atoires sĂ©curisĂ©s335, 337
Utilisation de la chaßne de format contrÎlée en externe134
Utilisation de PendingIntents implicites927
Utilisation de l’algorithme RSA sans OAEP780
DonnĂ©es contrĂŽlĂ©es par l’utilisateur dans une projection numĂ©rique197, 681
DonnĂ©es contrĂŽlĂ©es par l’utilisateur utilisĂ©es dans la vĂ©rification des autorisations807, 290
Utilisation d’un vecteur d’initialisation statique pour le chiffrement329, 1 204
Injection XPath643
Transformation XSLT avec une feuille de style contrĂŽlĂ©e par l’utilisateur074
AccĂ©der aux mĂ©thodes d’objet Java par le biais d’une exposition JavaScript079
Installation d’Android APK094
Épinglage de certificat Android manquant295
Cache clavier sensible Android524
Accùs aux fichiers WebSettings d’Android200
Paramùtres JavaScript WebView d’Android079
Les paramĂštres Android WebView permettent d’accĂ©der aux liens de contenu200
Sauvegarde d’application autorisĂ©e312
CrĂ©ation d’une ligne de commande avec concatĂ©nation de chaĂźne078, 088
GĂ©nĂ©ration d’une commande avec une variable d’environnement injectĂ©e078, 088, 454
Stockage de texte en clair des informations sensibles dans le systĂšme de fichiers Android312
Stockage de texte en clair des informations sensibles Ă  l’aide de la classe « PropriĂ©tĂ©s Â»313
Stockage de texte en clair des informations sensibles à l’aide de SharedPreferences sur Android312
Stockage de texte en clair des informations sensibles Ă  l’aide d’une base de donnĂ©es locale sur Android312
Comparaison du type étroit avec un type large en condition de loop190, 197
ExĂ©cution d’une commande avec un chemin d’accĂšs relatif078, 088
Exposition des informations sensibles aux notifications200
Exposition des informations sensibles aux vues de texte de l’IU200
Type de requĂȘte HTTP non protĂ©gĂ© contre la falsification de requĂȘte intersites (CSRF, Cross Site Request Forgery)352
Validation incorrecte de l’index de tableau fourni par l’utilisateur129
Validation incorrecte de la taille fournie par l’utilisateur utilisĂ©e pour la construction de tableaux129
Authentification de base non sécurisée522, 319
Configuration SSL JavaMail non sécurisée297
ClĂ©s gĂ©nĂ©rĂ©es de maniĂšre non sĂ©curisĂ©e pour l’authentification locale287
Insertion d’informations sensibles dans des fichiers journaux532
Fuite d’informations sensibles par le biais d’un ResultReceiver927
Fuite d’informations sensibles par le biais d’une intention implicite927
Divulgation d’informations locales dans un annuaire temporaire200, 732
Injection de journaux d’activitĂ©117
Loop avec condition de sortie inaccessible835
Absence d’autorisation d’accĂšs en Ă©criture ou en lecture dans un fournisseur de contenu926
VulnĂ©rabilitĂ© de parcours partielle du chemin d’accĂšs023
RequĂȘte gĂ©nĂ©rĂ©e par concatĂ©nation avec une chaĂźne Ă©ventuellement non approuvĂ©e089, 564
Condition de concurrence dans l’authentification de socket421
Heure de vĂ©rification du temps d’utilisation de la condition de concurrence367
Violation de limite d’approbation501
Données non contrÎlées dans une expression arithmétique190, 191
Verrou non déverrouillé764, 833
Approbation de certificat non sécurisée273
Récupération de ressources non sécurisées dans Android WebView749, 079
Utilisation d’un algorithme de cryptage potentiellement dĂ©fectueux ou risquĂ©327, 328
Utilisation d’une fonction potentiellement dangereuse676
Contournement contrĂŽlĂ© par l’utilisateur de la mĂ©thode sensible807, 290
DonnĂ©es contrĂŽlĂ©es par l’utilisateur dans une expression arithmĂ©tique190, 191