Análisis de seguridad - CodeWhisperer

CodeWhispererLas funciones de Amazon Q están pasando a formar parte de Amazon Q Developer. Más información

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Análisis de seguridad

Puede utilizarlos CodeWhisperer para detectar infracciones y vulnerabilidades de las políticas de seguridad en su código mediante pruebas estáticas de seguridad de aplicaciones (SAST), detección de secretos y análisis de infraestructura como código (IaC). Los escaneos de seguridad CodeWhisperer identifican las vulnerabilidades de seguridad y sugieren cómo mejorar el código. En algunos casos, CodeWhisperer proporciona código que puede usar para abordar esas vulnerabilidades.

Ejecutar un análisis de seguridad realiza un análisis de seguridad del archivo actualmente activo en el editor IDE y de los archivos dependientes del proyecto. Una vez finalizado el análisis, los problemas de seguridad de los archivos analizados se resaltan en el panel de problemas en VSC. Tenga en cuenta que JetBrains, en el caso de los problemas de seguridad, los problemas de CodeWhisperer seguridad aparecen resaltados en una pestaña independiente del panel de problemas.

Los análisis de seguridad funcionan en el nivel de proyecto, analizan los archivos del proyecto o espacio de trabajo local del usuario y, a continuación, los truncan para crear una carga que se transmita al lado del servidor. Esta carga tiene un límite de tamaño que varía en función del lenguaje de programación.

CodeWhispererSu escáner de seguridad funciona con detectores de la biblioteca de CodeGuru detectores de Amazon. CodeGuruEl departamento de seguridad filtra varios niveles antes de escanear el código para garantizar que puedas centrarte en los problemas más críticos. Como parte de ello, CodeGuru Security filtra los idiomas no compatibles, prueba el código y el código fuente abierto antes de analizarlos para detectar problemas de seguridad.

Idiomas con los que funcionan los escaneos de seguridad

La función CodeWhisperer de escaneo de seguridad es compatible con las siguientes versiones lingüísticas:

  • Java ‐ Java 17 y versiones anteriores

  • JavaScript ‐ ECMAScript 2021 y versiones anteriores

  • Python ‐ Python 3.11 y versiones anteriores, dentro de la serie Python 3

  • C# ‐ Todas las versiones (se recomienda .Net 6.0 y versiones posteriores)

  • TypeScript ‐ Todas las versiones

  • Ruby ‐ Ruby 2.7 y 3.2

  • Go ‐ Go 1.18

  • Lenguajes de infraestructura como código (IaC)

    • AWS CloudFormation

    • Terraform ‐ 1.6.2 y versiones anteriores

    • AWS CDK - TypeScript y Python

CodeWhisperer solo proporcionará sugerencias de corrección de código para el código escrito en Java, Python o JavaScript,

Ejecución de análisis de seguridad

AWS Toolkit for Visual Studio Code

Para iniciar un análisis de seguridad en VS Code, utilice el siguiente procedimiento.

  1. En VS Code, elija el AWS logotipo en la parte izquierda de la ventana. Se abrirá el panel del AWS kit de herramientas.

  2. En el panel del AWS kit de herramientas, en Herramientas para desarrolladores CodeWhisperer, seleccione Ejecutar un análisis de seguridad.

  3. Tras crear un análisis, puede consultar los resultados en la pestaña Problemas.

    Para consultar información sobre el resultado y la solución sugerida, mantenga el cursor sobre el código subrayado.

  4. Si el código está escrito en Java, Python o JavaScript, CodeWhisperer podría proporcionar una solución de código sugerida.

    • Si proporciona una solución y quiere implementarla, elija Aplicar corrección. La información sobre el resultado desaparecerá.

    • Si no proporciona una solución, actualice el código de acuerdo con la información proporcionada.

      Ejecute otro análisis de seguridad para comprobar que la vulnerabilidad se ha corregido.

archivos analizados en VSC

Un análisis puede tardar hasta 60 segundos. Tiene la opción de elegir detener un análisis de seguridad en curso seleccionando Detener el análisis de seguridad. Tenga en cuenta que, una vez iniciado, un análisis se tiene en cuenta para los límites de uso mensuales (por usuario) de los análisis de seguridad. Para obtener más información, consulte Límites de datos de análisis de seguridad.

nota

Si está realizando un análisis de seguridad en un archivo o proyecto de Java, se requieren los artefactos de compilación (archivos .class). Si tiene problemas al analizar el archivo o proyecto Java, compruebe lo siguiente:

  1. Asegúrese de que la estructura del proyecto sea válida para el sistema de compilación que está utilizando.

  2. Cree su proyecto en VS Code antes de ejecutar un análisis de seguridad para asegurarse de que CodeWhisperer tiene acceso a sus artefactos de compilación.

nota

Si el proyecto se ha creado correctamente en VS Code, pero el análisis de seguridad no funciona y aparece un mensaje de error: Cannot find build artifacts for the project, solucione el error especificando la ubicación de los artefactos de compilación en la ruta de salida del compilador.

AWS Toolkit for JetBrains

Para iniciar un análisis de seguridad JetBrains, utilice el siguiente procedimiento.

  1. En JetBrains, selecciona el AWS logotipo de la parte izquierda de la ventana. Se abrirá el panel del AWS kit de herramientas.

  2. En el panel del AWS kit de herramientas, en Herramientas para desarrolladores CodeWhisperer, seleccione Iniciar análisis de seguridad.

  3. Tras crear un análisis, puede ver los resultados en la pestaña Problemas de CodeWhisperer seguridad del panel Problemas.

    Para consultar información sobre el resultado y la solución sugerida, mantenga el cursor sobre el código subrayado.

  4. CodeWhisperer puede o no proporcionar una solución de código sugerida.

    • Si proporciona una solución y quiere implementarla, elija Aplicar corrección. La información sobre el resultado desaparecerá.

    • Si no proporciona una solución, actualice el código de acuerdo con la información proporcionada.

      Ejecute otro análisis de seguridad para comprobar que la vulnerabilidad se ha corregido.

archivos analizados en VSC

Un análisis puede tardar hasta 60 segundos. Tiene la opción de elegir detener un análisis de seguridad en curso seleccionando Detener el análisis de seguridad. Tenga en cuenta que, una vez iniciado, un análisis se tiene en cuenta para los límites de uso mensuales (por usuario) de los análisis de seguridad. Para obtener más información, consulte Límites de datos de análisis de seguridad.

nota

Para ejecutar un análisis de seguridad en un archivo o proyecto de Java, se requieren los artefactos de compilación (archivos .class).

  1. Asegúrese de que la estructura del proyecto sea válida para el sistema de compilación que está utilizando.

  2. Cree su proyecto en IntelliJ antes de ejecutar un análisis de seguridad, para asegurarse de CodeWhisperer que tiene acceso a sus artefactos de construcción.

Si el proyecto se ha creado correctamente en IntelliJ, pero el análisis de seguridad no funciona y aparece un mensaje de error: Can not find build artifacts for the project, solucione el error especificando la ubicación de los artefactos de compilación en la ruta de salida del compilador, como se describe a continuación:

  1. En el menú principal de IntelliJ, amplíe Archivo (Windows) o abra Preferencias (Mac).

  2. Elija Estructura del proyecto para abrir el panel de navegación de la estructura del proyecto.

  3. Elija Proyecto para abrir el panel Proyecto.

  4. Ingrese o seleccione la ubicación de los archivos de artefactos del proyecto en el campo de salida del compilador.

Límites de datos de análisis de seguridad

Cada análisis de seguridad puede incluir más de un archivo. Sin embargo, la cantidad de datos que se pueden analizar cada vez es limitada. Los límites están sujetos a cambios periódicos y también varían según el lenguaje de programación. AWS Si el proyecto supera este límite de datos, no se analizarán todos los archivos. Tras un análisis, puede comprobar el registro para ver los archivos que se analizaron seleccionando Mostrar archivos analizados. Si el archivo que le interesa no se escanea debido a los límites de datos, ábralo en IDE e inicie otro análisis para asegurarse de que este archivo esté incluido en el análisis.

AWS Toolkit for Visual Studio Code

Esta captura de pantalla muestra el aspecto de la lista de archivos analizados en VS Code.

archivos analizados en VSC
AWS Toolkit for JetBrains

Esta captura de pantalla muestra el aspecto de la lista de archivos escaneados JetBrains.

archivos analizados en JB