CodeQL incluye muchas consultas para analizar código de Java o Kotlin. Todas las consultas del conjunto de consultas default se ejecutan de manera predeterminada. Si decide usar el conjunto de consultas security-extended, se ejecutan consultas adicionales. Para más información, consulta Conjuntos de consultas codeQL.
Consultas integradas para el análisis de Java y Kotlin
En esta tabla se enumeran las consultas disponibles con la versión más reciente de la acción CodeQL y CodeQL CLI. Para obtener más información, consulte "Registros de cambios CodeQL" en el sitio de documentación de CodeQL.
| Nombre de la consulta | CWE relacionados | Valor predeterminado | Ampliado | Autofijo de Copilot |
|---|---|---|---|---|
| [ |
`TrustManager` que acepta todos los certificados](https://codeql.github.com/codeql-query-help/java/java-insecure-trustmanager/) | 295 | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Incluido" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Incluido" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Incluido" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> |
| Android WebView que acepta todos los certificados | 295 | | | |
| Atributo depurable de Android habilitado | 489 | | | |
| Inserción de fragmentos de Android | 470 | | | |
| Inserción de fragmentos de Android en PreferenceActivity | 470 | | | |
| Redireccionamiento de la intención de Android | 926, 940 | | | |
| Depuración de Webview habilitada de Android | 489 | | | |
| Acceso arbitrario a archivos durante la extracción de archivos ("Zip Slip") | 022 | | | |
| Almacenamiento de texto no cifrado de información confidencial en la cookie | 315 | | | |
| Scripting entre sitios | 079 | | | |
| Depender de JCenter/Bintray como repositorio de artefactos | 1104 | | | |
| Deserialización de datos controlados por el usuario | 502 | | | |
| Detección de vulnerabilidad del generador JHipster CVE-2019-16303 | 338 | | | |
| Validación deshabilitada del encabezado HTTP de Netty | 093, 113 | | | |
| Protección de Spring CSRF deshabilitada | 352 | | | |
| Accionadores de Spring Boot expuestos | 200 | | | |
| Accionadores de Spring Boot expuestos en el archivo de configuración | 200 | | | |
| Inserción de lenguaje de expresiones (JEXL) | 094 | | | |
| Inserción de lenguaje de expresiones (MVEL) | 094 | | | |
| Inserción de lenguaje de expresiones (Spring) | 094 | | | |
| Error al utilizar la dirección URL de HTTPS o SFTP en la carga o descarga de artefactos de Maven | 300, 319, 494, 829 | | | |
| Error al usar cookies seguras | 614 | | | |
| Inyección de idioma groovy | 094 | | | |
| División de respuestas HTTP | 113 | | | |
| Conversión de restricción implícita en asignación compuesta | 190, 192, 197, 681 | | | |
| Componente de Android exportado implícitamente | 926 | | | |
| Comprobación de la intención por receptor de difusión incorrecta | 925 | | | |
| Expresión regular ineficaz | 1333, 730, 400 | | | |
| Exposición de la información a través de un seguimiento de la pila | 209, 497 | | | |
| Exposición de la información mediante un mensaje de error | 209 | | | |
| Validación de Bean no protegida | 094 | | | |
| Autenticación LDPA no protegida | 522, 319 | | | |
| Autenticación local no segura | 287 | | | |
| Aleatoriedad insegura | 330, 338 | | | |
| Manipulación de permisos de URI de intención | 266, 926 | | | |
| Búsqueda de JNDI con un nombre controlado por el usuario | 074 | | | |
| Consulta LDPA creada a partir de orígenes controlados por el usuario | 090 | | | |
| Falta de comprobación de firma JWT | 347 | | | |
| Instrucción del lenguaje de expresiones OGNL con entrada controlada por el usuario | 917 | | | |
| Intervalo de expresiones regulares excesivamente permisivo | 020 | | | |
| Vulnerabilidad de recorrido parcial de ruta de acceso desde un entorno remoto | 023 | | | |
| Expresión regular polinómica usada en datos no controlados | 1333, 730, 400 | | | |
| Consulta creada a partir de orígenes controlados por el usuario | 089.564 | | | |
| Lectura desde un archivo grabable del mundo | 732 | | | |
| Inserción de expresiones regulares | 730, 400 | | | |
| Resolución de una entidad externa XML en datos controlados por el usuario | 611, 776, 827 | | | |
| Cookies confidenciales sin el encabezado de respuesta HttpOnly configurado | 1004 | | | |
| Falsificación de solicitud del lado servidor | 918 | | | |
| Inserción de plantillas del lado servidor | 1336, 094 | | | |
| Línea de comandos no controlada | 078, 088 | | | |
| Datos usados en la resolución de contenido no controlados | 441, 610 | | | |
| Datos usados en la expresión de ruta de acceso no controlados | 022, 023, 036, 073 | | | |
| Comprobación de nombres de host no segura | 297 | | | |
| Reenvío de dirección URL desde un origen remoto | 552 | | | |
| Redireccionamiento de direcciones URL desde origen remoto | 601 | | | |
| Utilización de un algoritmo criptográfico roto o de riesgo | 327, 328 | | | |
| Utilización de un algoritmo criptográfico con un tamaño de clave insuficiente | 326 | | | |
| Utilización de una inicialización predecible en un generador de números aleatorios seguro | 335, 337 | | | |
| Utilización de cadenas de formato controladas externamente | 134 | | | |
| Utilización de PendingIntents implícitos | 927 | | | |
| Utilización del algoritmo RSA sin OAEP | 780 | | | |
| Datos de la conversión numérica controlados por el usuario | 197, 681 | | | |
| Comprobación de los datos usados en la comprobación de permisos controlada por el usuario | 807, 290 | | | |
| Utilización de un vector de inicialización estática para el cifrado | 329, 1204 | | | |
| Inserción de XPath | 643 | | | |
| Transformación de XSLT con hoja de estilos controlada por el usuario | 074 | | | |
| Acceso a los métodos de objetos de Java a través de la exposición de JavaScript | 079 | | | |
| Instalación de APK de Android | 094 | | | |
| Asignación de certificados que faltan en Android | 295 | | | |
| Caché de teclado confidencial de Android | 524 | | | |
| Acceso al archivo WebSettings de Android | 200 | | | |
| Configuración de JavaScript de WebView de Android | 079 | | | |
| La configuración de WebView de Android permite el acceso a vínculos de contenido | 200 | | | |
| Copia de seguridad de aplicaciones permitida | 312 | | | |
| Creación de una línea de comandos con concatenación de cadenas | 078, 088 | | | |
| Generación de un comando con una variable de entorno insertada | 078, 088, 454 | | | |
| Almacenamiento de texto no cifrado de información confidencial en el sistema de archivos de Android | 312 | | | |
| Almacenamiento de texto no cifrado de información confidencial mediante la clase "Propiedades" | 313 | | | |
| Almacenamiento de texto no cifrado de información confidencial mediante SharedPreferences en Android | 312 | | | |
| Almacenamiento de texto no cifrado de información confidencial mediante una base de datos local en Android | 312 | | | |
| Comparación de tipo limitado con tipo amplio en condición de repetición | 190, 197 | | | |
| Ejecución de un comando con una ruta de acceso relativa | 078, 088 | | | |
| Exposición de información confidencial a las notificaciones | 200 | | | |
| Exposición de información confidencial a las vistas de texto de la interfaz de usuario | 200 | | | |
| Tipo de solicitud HTTP desprotegido de CSRF | 352 | | | |
| Validación del índice de matriz proporcionado por el usuario incorrecta | 129 | | | |
| Validación del tamaño proporcionado por el usuario que se utiliza para la construcción de matrices incorrecta | 129 | | | |
| Autenticación básica no protegida | 522, 319 | | | |
| Configuración de SSL de JavaMail no protegida | 297 | | | |
| Claves generadas de forma no segura para la autenticación local | 287 | | | |
| Inserción de información confidencial en archivos de registro | 532 | | | |
| Pérdida de información confidencial a través de ResultReceiver | 927 | | | |
| Pérdida de información confidencial a través de una intención implícita | 927 | | | |
| Divulgación de información local en un directorio temporal | 200, 732 | | | |
| Inserción de registros | 117 | | | |
| Repetición con condición de salida inaccesible | 835 | | | |
| Falta de permiso de lectura o de escritura en un proveedor de contenido | 926 | | | |
| Vulnerabilidad de recorrido parcial de ruta de acceso | 023 | | | |
| Consulta compilada mediante concatenación con una cadena posiblemente que no de confianza | 089.564 | | | |
| Condición de carrera en la autenticación de socket | 421 | | | |
| Tiempo de comprobación de la condición de carrera de tiempo de utilización | 367 | | | |
| Infracción del límite de confianza | 501 | | | |
| Datos en la expresión aritmética no controlados | 190, 191 | | | |
| Bloqueo no publicado | 764, 833 | | | |
| Certificado de confianza no seguro | 273 | | | |
| Captura de recursos en WebView de Android no segura | 749, 079 | | | |
| Utilización de un algoritmo criptográfico potencialmente roto o de riesgo | 327, 328 | | | |
| Utilización de una función potencialmente peligrosa | 676 | | | |
| Omisión del método confidencial controlada por el usuario | 807, 290 | | | |
| Datos en la expresión aritmética controlados por el usuario | 190, 191 | | | |