Crear un informe consolidado de los resultados de seguridad de Prowler en varias cuentas de AWS - Recomendaciones de AWS

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.

Crear un informe consolidado de los resultados de seguridad de Prowler en varias cuentas de AWS

Creado por Mike Virgilio (AWS), Andrea Di Fabio (AWS), Cameron Covington (AWS) y Jay Durga (AWS)

Repositorio de código: multi-account-security-assessment-via-prowler

Entorno: producción

Tecnologías: seguridad, identidad, conformidad

Carga de trabajo: código abierto

Servicios de AWS: AWS CloudFormation; Amazon EC2; AWS Identity and Access Management

Resumen

Prowler (GitHub) es una herramienta de línea de comandos de código abierto que puede ayudarle a evaluar, auditar y supervisar sus cuentas de Amazon Web Services (AWS) para comprobar si cumplen las mejores prácticas de seguridad. En este patrón, despliega Prowler de forma centralizada Cuenta de AWS en su organización, gestionada por Prowler y, a continuación AWS Organizations, utiliza Prowler para realizar una evaluación de seguridad de todas las cuentas de la organización.

Si bien existen muchos métodos para implementar y utilizar Prowler para realizar una evaluación, esta solución se ha diseñado para una implementación rápida, un análisis completo de todas las cuentas de la organización o de las cuentas objetivo definidas, y la elaboración de informes accesibles sobre los problemas de seguridad. En esta solución, cuando Prowler completa la evaluación de seguridad de todas las cuentas de la organización, consolida los resultados. También filtra cualquier mensaje de error esperado, como los errores relacionados con las restricciones que impiden a Prowler escanear los buckets de Amazon Simple Storage Service (Amazon S3) en las cuentas aprovisionadas a través de AWS Control Tower. Los resultados filtrados y consolidados se presentan en una plantilla de Microsoft Excel que se incluye con este patrón. Puede utilizar este informe para identificar posibles mejoras en los controles de seguridad de su organización.

Esta solución se diseñó teniendo en cuenta lo siguiente:

  • Las AWS CloudFormation plantillas reducen el esfuerzo necesario para implementar los AWS recursos en este patrón.

  • Puede ajustar los parámetros de las CloudFormation plantillas y del script prowler_scan.sh en el momento de la implementación para personalizar las plantillas para su entorno.

  • Las velocidades de evaluación e informes de Prowler se optimizan mediante el procesamiento paralelo de los resultados agregados Cuentas de AWS, los informes consolidados con las soluciones recomendadas y las visualizaciones generadas automáticamente.

  • El usuario no necesita monitorizar el progreso del escaneo. Cuando se completa la evaluación, se notifica al usuario a través de un tema de Amazon Simple Notification Service (Amazon SNS) para que pueda recuperar el informe.

  • La plantilla de informe le ayuda a leer y evaluar solo los resultados relevantes para toda la organización.

Requisitos previos y limitaciones

Requisitos previos 

  • Y Cuenta de AWS para alojar servicios y herramientas de seguridad, gestionados como una cuenta de miembro de una organización en. AWS Organizations En este patrón, esta cuenta se denomina cuenta de seguridad.

  • En la cuenta de seguridad, debe tener una subred privada con acceso saliente a Internet. Para obtener instrucciones, consulte VPC con servidores en subredes privadas y NAT en la documentación de Amazon Virtual Private Cloud (Amazon VPC). Puede establecer el acceso a Internet mediante una puerta de enlace NAT aprovisionada en una subred pública.

  • Acceso a la cuenta AWS Organizations de administración o a una cuenta para la que se hayan delegado permisos de CloudFormation administrador. Para obtener instrucciones, consulte Registrar un administrador delegado en la CloudFormation documentación.

  • Habilite el acceso confiable entre AWS Organizations y. CloudFormation Para obtener instrucciones, consulte Habilitar el acceso confiable con AWS Organizations en la CloudFormation documentación.

Limitaciones

  • El objetivo Cuentas de AWS debe gestionarse como una organización en AWS Organizations. Si no la utiliza AWS Organizations, puede actualizar la CloudFormation plantilla IAM- ProwlerExecRole .yaml y el script prowler_scan.sh para su entorno. En su lugar, proporciona una lista de Cuenta de AWS identificadores y regiones en las que desea ejecutar el script.

  • La CloudFormation plantilla está diseñada para implementar la instancia de Amazon Elastic Compute Cloud (Amazon EC2) en una subred privada con acceso saliente a Internet. El AWS Systems Manager agente (SSM Agent) requiere acceso saliente para llegar al punto final del AWS Systems Manager servicio, y usted necesita acceso saliente para clonar el repositorio de código e instalar las dependencias. Si desea utilizar una subred pública, debe modificar la plantilla prowler-resources.yaml para asociar una Dirección IP elástica a la instancia de EC2.

Versiones de producto

  • Prowler versión 3.0 o posterior

Arquitectura

Diagrama de arquitectura con Prowler desplegado en una cuenta de seguridad centralizada.

El diagrama muestra el proceso siguiente:

  1. Con el administrador de sesiones, una capacidad de AWS Systems Manager, el usuario se autentica en la instancia EC2 y ejecuta el script prowler_scan.sh. Este script del intérprete de comandos lleva a cabo los pasos del 2 al 8.

  2. La instancia EC2 asume el rol de IAM de ProwlerEC2Role, que concede permisos para acceder al bucket de S3 y para asumir los roles de IAM de ProwlerExecRole en las demás cuentas de la organización.

  3. La instancia EC2 asume el rol de IAM de ProwlerExecRole en la cuenta de administración de la organización y genera una lista de las cuentas de la organización.

  4. La instancia EC2 asume el rol de IAM ProwlerExecRole en las cuentas de los miembros de la organización (denominadas cuentas de carga de trabajo en el diagrama de arquitectura) y realiza una evaluación de seguridad en cada cuenta. Los resultados se almacenan como archivos CSV y HTML en la instancia EC2.

    Nota: Los archivos HTML son el resultado de la evaluación de Prowler. Debido a la naturaleza del HTML, no se concatenan, procesan ni utilizan directamente en este patrón. Sin embargo, pueden resultar útiles para revisar los informes de cuentas individuales.

  5. La instancia EC2 procesa todos los archivos CSV para eliminar los errores conocidos y esperados y consolida los resultados restantes en un solo archivo CSV.

  6. La instancia EC2 ejecuta el script generateVisualizations.py. Este script procesa el archivo CSV de los resultados agregados y genera archivos PNG de gráficos y tablas que pueden ayudarle a comprender los resultados y a informar sobre ellos. También crea un archivo HTML que contiene información sobre el escaneo y los archivos PNG.

  7. La instancia EC2 empaqueta los resultados de las cuentas individuales, los resultados agregados y las visualizaciones generadas en un archivo zip.

  8. La instancia de EC2 carga el archivo .zip en el bucket de S3.

  9. Una EventBridge regla detecta la carga del archivo y utiliza un tema de Amazon SNS para enviar un correo electrónico al usuario en el que se le notifica que la evaluación ha finalizado.

  10. El usuario descarga el archivo zip del bucket de S3. El usuario importa los resultados a la plantilla de Excel y revisa los resultados.

Herramientas

Servicios de AWS

  • Amazon Elastic Compute Cloud (Amazon EC2) brinda capacidad de computación escalable en la Nube de AWS. Puede lanzar tantos servidores virtuales como necesite y escalarlos o reducirlos con rapidez.

  • Amazon EventBridge es un servicio de bus de eventos sin servidor que le ayuda a conectar sus aplicaciones con datos en tiempo real de diversas fuentes. Por ejemplo, AWS Lambda funciones, puntos finales de invocación HTTP que utilizan destinos de API o buses de eventos en otros. Cuentas de AWS

  • AWS Identity and Access Management (IAM) le ayuda a administrar de forma segura el acceso a sus AWS recursos al controlar quién está autenticado y autorizado a usarlos.

  • AWS Organizationses un servicio de administración de cuentas que le ayuda a consolidar múltiples cuentas Cuentas de AWS en una organización que usted crea y administra de forma centralizada.

  • Amazon Simple Notification Service (Amazon SNS) le permite coordinar y administrar el intercambio de mensajes entre publicadores y clientes, incluidos los servidores web y las direcciones de correo electrónico.

  • Amazon Simple Storage Service (Amazon S3) es un servicio de almacenamiento de objetos basado en la nube que le ayuda a almacenar, proteger y recuperar cualquier cantidad de datos.

  • AWS Systems Manager le ayuda a administrar las aplicaciones y la infraestructura que se ejecutan en la Nube de AWS. Simplifica la administración de aplicaciones y recursos, reduce el tiempo necesario para detectar y resolver problemas operativos y le ayuda a administrar sus AWS recursos de forma segura y a escala. Este patrón utiliza Session Manager, una capacidad de Systems Manager.

Otras herramientas

  • Prowler es una herramienta de línea de comandos de código abierto que le ayuda a evaluar, auditar y supervisar sus cuentas para comprobar si cumplen las mejores prácticas de seguridad y otros marcos y AWS estándares de seguridad.

Repositorio de código

El código de este patrón está disponible en la evaluación de seguridad GitHub multicuenta del repositorio Prowler. El repositorio de código contiene los siguientes archivos:

  • prowler_scan.sh: este script bash se utiliza para iniciar una evaluación de seguridad de Prowler de varios, Cuentas de AWS en paralelo. Como se define en Prowler-Resources.yaml CloudFormationtemplate, este script se implementa automáticamente en la carpeta de la instancia EC2. usr/local/prowler

  • Prowler-Resources.yaml: usa esta plantilla para crear una pila en la cuenta de seguridad de la organización. CloudFormation Esta plantilla implementa todos los recursos necesarios para esta cuenta a fin de respaldar la solución. Esta pila debe implementarse antes que la plantilla IAM-.yaml. ProwlerExecRole No se recomienda implementar estos recursos en una cuenta que aloje cargas de trabajo de producción críticas.

    Nota: Si esta pila se elimina y se vuelve a implementar, debe volver a crear el conjunto de pilas ProwlerExecRole para recuperar las dependencias entre cuentas entre los roles de IAM.

  • IAM- ProwlerExecRole .yaml: usa esta CloudFormation plantilla para crear un conjunto de pilas que despliegue la función de ProwlerExecRole IAM en todas las cuentas de la organización, incluida la cuenta de administración.

  • generateVisualizations.py: el script prowler_scan.sh llama automáticamente a este script de Python para generar visualizaciones basadas en los resultados agregados y las incluye en el archivo .zip almacenado en el bucket de S3. Este script crea los siguientes archivos:

    • FailuresByAccount-<date>.png: gráfico de barras que ilustra las comprobaciones de Prowler fallidas para cada cuenta

    • FailuresByService-<date>.png— Gráfico de barras que ilustra las comprobaciones de Prowler fallidas de cada una Servicio de AWS

    • ProcessedResultsByFailureSeverityCount-<date>.png: gráfico de barras que ilustra la distribución de las comprobaciones de Prowler fallidas para cada nivel de gravedad (crítico, alto, medio, bajo e informativo)

    • ResultsByFail-<date>.png: gráfico circular de las comprobaciones de Prowler fallidas por gravedad

    • ResultsBySeverity-<date>.png: gráfico circular de todos los controles de Prowler (aprobados y no aprobados) por gravedad

    • ProwlerReport.html: archivo HTML único con todas las imágenes incluidas

  • prowler3-report-template.xlsm: utilice esta plantilla de Excel para procesar las conclusiones de Prowler. Las tablas dinámicas del informe proporcionan funciones de búsqueda, gráficos y resultados consolidados.

Epics

TareaDescripciónHabilidades requeridas

Clone el repositorio de código.

  1. En una interfaz de la línea de comandos, cambie el directorio de trabajo a la ubicación en la que desee almacenar los archivos de muestra.

  2. Escriba el siguiente comando:

    git clone https://github.com/aws-samples/multi-account-security-assessment-via-prowler.git

AWS DevOps

Revise las plantillas.

  1. En el repositorio clonado, abra los archivos Prowler-Resources.yaml e IAM- .yaml. ProwlerExecRole

  2. Revise los recursos creados por estas plantillas y ajuste las plantillas según sea necesario para su entorno. Para obtener más información, consulta Cómo trabajar con plantillas en la documentación. CloudFormation

  3. Guarde y cierre los archivos Prowler-Resources.yaml e IAM- .yaml. ProwlerExecRole

AWS DevOps
TareaDescripciónHabilidades requeridas

Aprovisione recursos en la cuenta de seguridad.

Con la plantilla prowler-resources.yaml, se crea una CloudFormation pila que despliega todos los recursos necesarios en la cuenta de seguridad. Para obtener instrucciones, consulta Cómo crear una pila en la documentación. CloudFormation Tenga en cuenta lo siguiente al implementar esta plantilla:

  1. En la página Especificar plantilla, seleccione Plantilla lista y, a continuación, cargue el archivo prowler-resources.yaml.

  2. En la página Especificar detalles de pila, en Nombre de la pila, introduzca Prowler-Resources.

  3. En la sección Parámetros, introduzca lo siguiente:

    • VPCId: seleccione una VPC en la cuenta.

    • SubnetId: seleccione una subred privada que tenga acceso a Internet.

      Nota: Si selecciona una subred pública, a la instancia EC2 no se le asignará una dirección IP pública porque la CloudFormation plantilla, de forma predeterminada, no aprovisiona ni adjunta una dirección IP elástica.

    • InstanceType: seleccione un tamaño de instancia en función del número de evaluaciones paralelas:

      • Para 10, elija r6i.large.

      • Para 12, elija r6i.xlarge.

      • Para 14 a 18 años, elija r6i.2xlarge.

    • InstanceImageId: deje el valor predeterminado para Amazon Linux.

    • KeyPairName: si utiliza SSH para acceder, especifique el nombre de un par de claves existente.

    • PermittedSSHInbound: si utiliza SSH para el acceso, especifique un bloque CIDR permitido. Si no utiliza SSH, mantenga el valor predeterminado de 127.0.0.1.

    • BucketName: El valor predeterminado es prowler-output-<accountID>-<region>. Puede modificarlo según sea necesario. Si especifica un valor personalizado, el ID de cuenta y la región se añaden automáticamente al valor especificado.

    • EmailAddress: especifique una dirección de correo electrónico para una notificación de Amazon SNS cuando Prowler complete la evaluación y cargue el archivo .zip en el bucket de S3.

      Nota: La configuración de la suscripción a SNS debe confirmarse antes de que Prowler complete la evaluación o no se enviará ninguna notificación.

    • IAMProwlerEC2Role­: mantenga el nombre predeterminado a menos que sus convenciones de nomenclatura requieran un nombre diferente para este rol de IAM.

    • IAMProwlerExecRole— Mantenga el valor predeterminado a menos que se utilice otro nombre al implementar el archivo ProwlerExecRoleIAM-.yaml.

    • Parallelism: especifique el número de evaluaciones paralelas que se van a realizar. Asegúrese de que el valor del parámetro InstanceType admite este número de evaluaciones paralelas.

    • FindingOutput: si desea excluir los resultados de los pases, seleccione FailOnly. Esto reduce significativamente el tamaño de la salida y se centra en las comprobaciones que podrían necesitar ser resueltas. Si desea incluir los resultados de las aprobaciones, seleccione FailAndPass.

  4. En la página de revisión, seleccione Los siguientes recursos requieren capacidades: [AWS::IAM::Role] y, a continuación, elija Create Stack.

  5. Una vez que la pila se haya creado correctamente, en la CloudFormation consola, en la pestaña Outputs, copia el ProwlerEC2Role Amazon Resource Name (ARN). Este ARN se utiliza más adelante al implementar el archivo IAM- ProwlerExecRole .yaml.

AWS DevOps

Facilitar el rol de IAM en las cuentas de los miembros.

En la cuenta AWS Organizations de administración o en una cuenta con permisos de administrador delegados CloudFormation, utilice la plantilla ProwlerExecRoleIAM-.yaml para crear un conjunto de pilas. CloudFormation El conjunto de pilas implementa el rol de IAM de ProwlerExecRole para todas las cuentas de miembros de la organización. Para obtener instrucciones, consulta Cómo crear un conjunto de pilas con permisos administrados por el servicio en la documentación. CloudFormation Tenga en cuenta lo siguiente al implementar esta plantilla:

  1. En Preparar plantilla, selecciona La plantilla está lista y, a continuación, carga el archivo ProwlerExecRoleIAM-.yaml.

  2. En la página Especificar StackSet detalles, asigne un nombre al conjunto de pilas. IAM-ProwlerExecRole

  3. En la sección Parámetros, introduzca lo siguiente:

    • AuthorizedARN: introduzca el ARN de ProwlerEC2Role que copió al crear la pila de Prowler-Resources.

    • ProwlerExecRoleName: mantenga el valor predeterminado de ProwlerExecRole a menos que se haya utilizado otro nombre al implementar el archivo Prowler-Resources.yaml.

  4. En Permisos, seleccione Permisos administrados por servicios.

  5. En la página Cómo establecer opciones de implementación, en Destinos de implementación, seleccione Implementación en organización y acepte todos los valores predeterminados.

    Nota: Si quiere que las pilas se desplieguen en todas las cuentas de los miembros de forma simultánea, establece el número Máximo de cuentas simultáneas y la Tolerancia a errores en un valor alto, por ejemplo 100.

  6. En Regiones de despliegue, elija el Región de AWS lugar en el que se despliega la instancia EC2 de Prowler. Como los recursos de IAM son globales y no regionales, se implementa el rol de IAM en todas las regiones activas.

  7. En la página de revisión, seleccione Acepto que AWS CloudFormation podría crear recursos de IAM con nombres personalizados y, a continuación, elija Crear. StackSet

  8. Supervise la pestaña Instancias de pila (para ver el estado de las cuentas individuales) y la pestaña Operaciones (para ver el estado general) para determinar cuándo se ha completado la implementación.

AWS DevOps

Facilite el rol de IAM en la cuenta de administración.

Con la plantilla ProwlerExecRoleIAM-.yaml, se crea una CloudFormation pila que implementa la función de ProwlerExecRole IAM en la cuenta de administración de la organización. El conjunto de pilas que creó anteriormente no implementa el rol de IAM en la cuenta de administración. Para obtener instrucciones, consulta Cómo crear una pila en la documentación. CloudFormation Tenga en cuenta lo siguiente al implementar esta plantilla:

  1. En la página Especificar plantilla, elija La plantilla está lista y, a continuación, cargue el archivo ProwlerExecRoleIAM-.yaml.

  2. En la página Especificar detalles de pila, en Nombre de la pila, introduzca IAM-ProwlerExecRole.

  3. En la sección Parámetros, introduzca lo siguiente:

    • AuthorizedARN: introduzca el ARN de ProwlerEC2Role que copió al crear la pila de Prowler-Resources.

    • ProwlerExecRoleName: mantenga el valor predeterminado de ProwlerExecRole a menos que se haya utilizado otro nombre al implementar el archivo Prowler-Resources.yaml.

  4. En la página de revisión, seleccione Los siguientes recursos requieren capacidades: [AWS::IAM::Role] y, a continuación, elija Crear pila.

AWS DevOps
TareaDescripciónHabilidades requeridas

Ejecute el escaneo.

  1. Inicie sesión en la cuenta de seguridad de la organización.

  2. Con el administrador de sesiones, conéctese a la instancia EC2 de Prowler que aprovisionó anteriormente. Para obtener instrucciones, consulte Conexión a la instancia de Linux mediante Session Manager. Si no puede conectarse, consulte la sección de solución de problemas de este patrón.

  3. Navegue hasta usr/local/prowler, y luego abra el archivo prowler_scan.sh.

  4. Revise y modifique los parámetros y variables ajustables de este script según sea necesario para su entorno. Para obtener más información sobre las opciones de personalización, consulte los comentarios al principio del script.

    Por ejemplo, en lugar de obtener una lista de todas las cuentas de los miembros de la organización a partir de la cuenta de administración, puede modificar el script para especificar Cuenta de AWS los ID Regiones de AWS que desea escanear, o puede hacer referencia a un archivo externo que contenga estos parámetros.

  5. Guarde y cierre el archivo prowler_scan.sh.

  6. Introduzca los comandos siguientes. Esto ejecuta el script prowler_scan.sh.

    sudo -i screen cd /usr/local/prowler ./prowler_scan.sh

    Tenga en cuenta lo siguiente:

    • El comando screen permite que el script continúe ejecutándose en caso de que se agote el tiempo de espera de la conexión o se pierda el acceso a la consola.

    • Cuando comience el escaneo, puede forzar la separación de la pantalla pulsando Ctrl+A D. La pantalla se separa y puede cerrar la conexión de la instancia y permitir que la evaluación continúe.

    • Para reanudar una sesión separada, conéctese a la instancia, introduzca sudo -i y, a continuación, introduzca screen -r.

    • Para supervisar el progreso de las evaluaciones de las cuentas individuales, puede navegar hasta el directorio de usr/local/prowler e introducir el comando tail -f output/stdout-<account-id>.

  7. Espera a que Prowler complete los escaneos en todas las cuentas. El script evalúa varias cuentas al mismo tiempo. Cuando se complete la evaluación en todas las cuentas, recibirá una notificación si especificó una dirección de correo electrónico al implementar el archivo Prowler-Resources.yaml.

Administrador de AWS

Recupera los resultados de Prowler.

  1. Descargue el archivo prowler-output-<assessDate>.zip del bucket prowler-output-<accountID>-<region>. Para obtener instrucciones, consulte Descargar un objeto en la documentación de Amazon S3.

  2. Elimine todos los objetos del bucket, incluido el archivo que ha descargado. Esta es una práctica recomendada para optimizar los costes y garantizar que se puede eliminar la Prowler-Resources CloudFormation pila en cualquier momento. Para obtener instrucciones, consulte Eliminar objetos en la documentación de Amazon S3.

AWS general

Detenga la instancia EC2.

Para evitar la facturación mientras la instancia está inactiva, detenga la instancia EC2 que ejecuta Prowler. Para obtener instrucciones, consulte Detener e iniciar las instancias en la documentación de Amazon EC2.

AWS DevOps
TareaDescripciónHabilidades requeridas

Importe los resultados.

  1. En Excel, abra el prowler-report-templatearchivo.xlsx y, a continuación, elija la hoja de trabajo CSV de Prowler.

  2. Elimine todos los datos de la muestra, incluida la fila del encabezado. Si se le pregunta si desea eliminar la consulta asociada a los datos que se van a eliminar, elija No. La eliminación de la consulta puede afectar a la funcionalidad de las tablas dinámicas de la plantilla de Excel.

  3. Extraiga el contenido del archivo .zip que ha descargado del bucket de S3.

  4. En Excel, abra el archivo.txt. prowler-fullorgresults-accessdeniedfiltered Le recomendamos que utilice este archivo porque ya se han eliminado los errores más comunes y no procesables, como los Access Denied errores relacionados con los intentos de escaneo de recursos. AWS Control Tower Si desea obtener los resultados sin filtrar, abra en su lugar el archivo prowler-fullorgresults.txt.

  5. Seleccione la columna A.

  6. Si usas Windows, escriba Ctrl+C, o si usa macOS, escriba Cmd+C. Esto copia todos los datos al portapapeles.

  7. En la plantilla de informe de Excel, en la hoja de trabajo CSV de Prowler, seleccione la celda A1.

  8. Si usas Windows, escriba Ctrl+V, o si usa macOS, escriba Cmd+V. De este modo, se pegan los resultados en el informe.

  9. Confirme que estén seleccionadas todas las celdas que contienen los datos pegados. Si no es así, seleccione la columna A.

  10. En la pestaña Datos, seleccione Texto a columnas.

  11. En el panel, haga lo siguiente:

    • Para el paso 1, seleccione Delimitado.

    • En el paso 2, para Delimitadores, elija punto y coma. En el panel Vista previa de datos, confirme que los datos se están separando en columnas.

    • Para el paso 3, elija Finalizar.

  12. Confirme que los datos de texto estén delimitados en varias columnas.

  13. Guarde el informe de Excel con un nuevo nombre.

  14. Busque y elimine cualquier error Access Denied en los resultados. Para obtener instrucciones sobre cómo eliminarlos mediante programación, consulte Eliminar errores mediante programación en la sección Información adicional.

AWS general

Finalice el informe.

  1. Elija la hoja de trabajo Resultados y, a continuación, seleccione la celda A17. Esta celda es el encabezado de la tabla dinámica.

  2. En la cinta, en PivotTable Herramientas, elija Analizar y, a continuación, en Actualizar, elija Actualizar todo. Esto actualiza las tablas dinámicas con el nuevo conjunto de datos.

  3. De forma predeterminada, Excel no muestra Cuenta de AWS los números correctamente. Para corregir el formato de los números, haga lo siguiente:

    • En la hoja de trabajo de Resultados, abra el menú contextual (haga clic con el botón derecho) de la columna A y, a continuación, elija Formatear celdas.

    • Elija Número y, en decimales, introduzca 0.

    • Seleccione Ok.

    Nota: Si un Cuenta de AWS número comienza con uno o más ceros, Excel los elimina automáticamente. Si ve un número de cuenta que tiene menos de 12 dígitos en el informe, los dígitos que faltan son ceros al principio del número.

  4. (Opcional) Puede contraer los campos para facilitar la lectura de los resultados. Haga lo siguiente:

    • En la hoja de trabajo Resultados, si mueve el cursor a la línea entre las filas 18 y 19 (el espacio entre el encabezado crítico y el primer hallazgo), el icono del cursor cambia a una pequeña flecha que apunta hacia abajo.

    • Haga clic para seleccioner todos los campos de búsqueda.

    • Abra el menú contextual (haga clic con el botón derecho), busque Expandir/Contraer y, a continuación, elija Contraer.

  5. Para obtener más información sobre la evaluación, consulte las hojas de trabajo sobre los Resultados, la Gravedad y la Aprobación de la evaluación.

  6. En el archivo zip de la carpeta Results-Visualizaton-<date-of-scan>, revise los gráficos y tablas que se generan automáticamente y que puede utilizar para mejorar sus informes con visualizaciones.

AWS general
TareaDescripciónHabilidades requeridas

Actualice Prowler.

Si desea actualizar Prowler a la versión más reciente, haga lo siguiente:

  1. Conéctese a la instancia de EC2 de Prowler mediante el Administrador de sesiones. Para obtener instrucciones, consulte Conexión a la instancia de Linux mediante Session Manager.

  2. Introduzca el siguiente comando.

    sudo -i pip3 install --upgrade prowler
AWS general

Actualice el script prowler_scan.sh.

Si quiere actualizar el script prowler_scan.sh a la última versión del repositorio, haga lo siguiente:

  1. Conéctese a la instancia de EC2 de Prowler mediante el Administrador de sesiones. Para obtener instrucciones, consulte Conexión a la instancia de Linux mediante Session Manager.

  2. Introduzca el siguiente comando.

    sudo -i
  3. Desplácese hasta el directorio de scripts de Prowler.

    cd /usr/local/prowler
  4. Introduzca el siguiente comando para guardar el script local de forma que pueda combinar los cambios personalizados en la versión más reciente.

    git stash
  5. Introduzca el siguiente comando para obtener la versión más reciente del script.

    git pull
  6. Introduzca el siguiente comando para combinar el script personalizado con la versión más reciente del script.

    git stash pop

Nota: Es posible que recibas advertencias relacionadas con cualquier archivo generado localmente que no esté en el GitHub repositorio, como la búsqueda de informes. Puede ignorarlos siempre que el archivo prowler_scan.sh muestre que los cambios guardados localmente se han vuelto a combinar.

AWS general
TareaDescripciónHabilidades requeridas

Elimine todos los recursos implementados.

Puede dejar los recursos implementados en las cuentas. Si cierra la instancia EC2 cuando no está en uso y deja el bucket de S3 vacío, se reducen los costos de mantenimiento de los recursos para futuros escaneos.

Si desea desaprovisionar todos los recursos, haga lo siguiente:

  1. Elimine la pila IAM-ProwlerExecRole aprovisionada en la cuenta de administración. Para obtener instrucciones, consulta Eliminar una pila en la CloudFormation documentación.

  2. Elimine el conjunto de pilas IAM-ProwlerExecRole aprovisionado en la cuenta de administración de la organización o en la cuenta de administrador delegado. Para obtener instrucciones, consulte Eliminar un conjunto de pilas en la CloudFormation documentación.

  3. Elimine todos los objetos del bucket de S3 prowler-output. Para obtener instrucciones, consulte Eliminar objetos en la documentación de Amazon S3.

  4. Elimine la pila Prowler-Resources aprovisionada en la cuenta de seguridad. Para obtener instrucciones, consulte Eliminar una pila en la CloudFormation documentación.

AWS DevOps

Solución de problemas

ProblemaSolución

No se puede conectar a la instancia de EC2 mediante Session Manager.

El agente SSM debe poder comunicarse con el punto de conexión de Systems Manager. Haga lo siguiente:

  1. Valide que la subred en la que se implementa la instancia EC2 tenga acceso a Internet.

  2. Reinicie la instancia EC2.

Al implementar el conjunto de pilas, la CloudFormation consola le solicitará que lo hagaEnable trusted access with AWS Organizations to use service-managed permissions.

Esto indica que no se ha habilitado el acceso de confianza entre AWS Organizations y CloudFormation. Se requiere acceso de confianza para implementar el conjunto de pilas gestionado por servicios. Seleccione el botón para activar el acceso de confianza. Para obtener más información, consulte Habilitar el acceso confiable en la CloudFormation documentación.

Recursos relacionados

AWS documentación

Otros recursos

Información adicional

Eliminar errores mediante programación

Si los resultados contienen errores de Access Denied, debe eliminarlos de los resultados. Por lo general, estos errores se deben a una influencia externa en los permisos que impiden que Prowler evalúe un recurso en particular. Por ejemplo, algunas comprobaciones fallan al revisar los depósitos de S3 aprovisionados a través de ellos. AWS Control Tower Puede extraer estos resultados mediante programación y guardar los resultados filtrados como un archivo nuevo.

Los siguientes comandos eliminan las filas que contienen una sola cadena de texto (un patrón) y, a continuación, envían los resultados a un archivo nuevo.

  • Para Linux o macOS (Grep)

    grep -v -i "Access Denied getting bucket" myoutput.csv > myoutput_modified.csv
  • Para Windows () PowerShell

    Select-String -Path myoutput.csv -Pattern 'Access Denied getting bucket' -NotMatch > myoutput_modified.csv

Los siguientes comandos eliminan las filas que coinciden con más de una cadena de texto y, a continuación, envían los resultados a un archivo nuevo.

  • Para Linux o macOS (utiliza un tubo de escape entre las cadenas)

    grep -v -i 'Access Denied getting bucket\|Access Denied Trying to Get' myoutput.csv > myoutput_modified.csv
  • Para Windows (usa una coma entre las cadenas)

    Select-String -Path myoutput.csv -Pattern 'Access Denied getting bucket', 'Access Denied Trying to Get' -NotMatch > myoutput_modified.csv

Ejemplos de informes

La siguiente imagen es un ejemplo de la hoja de trabajo sobre los resultados del informe sobre los resultados consolidados de Prowler.

Ejemplo de la pestaña Resultados del informe sobre los resultados del escaneo de Prowler

La siguiente imagen es un ejemplo de la hoja de trabajo Pasar Fallar del informe sobre los resultados consolidados de Prowler. (De forma predeterminada, los resultados de las aprobaciones se excluyen de la salida).

Ejemplo de la pestaña Aprobar y fallar en el informe de los resultados del escaneo de Prowler

La siguiente imagen es un ejemplo de la hoja de trabajo sobre la Gravedad del informe sobre los resultados consolidados de Prowler.

Ejemplo de la pestaña Gravedad en el informe de los resultados del escaneo de Prowler