Cree un informe consolidado de los hallazgos de seguridad de Prowler a partir de múltiples 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.

Cree un informe consolidado de los hallazgos de seguridad de Prowler a partir de múltiples Cuentas de AWS

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

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

Entorno: producción

Tecnologías: seguridad, identidad, conformidad

Carga de trabajo: código abierto

AWSservicios: Amazon AWS CloudFormationEC2; 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 (AmazonSNS) 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 VPCcon servidores en subredes privadas y NAT en la documentación de Amazon Virtual Private Cloud (AmazonVPC). Puede establecer el acceso a Internet mediante una NATpuerta de enlace 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 administrador. CloudFormation 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 IDs las regiones en las que desea ejecutar el script.

  • La CloudFormation plantilla está diseñada para implementar la instancia de Amazon Elastic Compute Cloud (AmazonEC2) en una subred privada con acceso saliente a Internet. El AWS Systems Manager agente (SSMagente) 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 quieres usar una subred pública, debes modificar la plantilla prowler-resources.yaml para asociar una dirección IP elástica a la instancia. EC2

Versiones de producto

  • Prowler versión 4.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 función de AWS Systems Manager, el usuario se autentica en la EC2 instancia 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 EC2 instancia asume la ProwlerEC2Role IAM función, que otorga permisos para acceder al bucket de S3 y para asumir las ProwlerExecRole IAM funciones en las demás cuentas de la organización.

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

  4. La EC2 instancia asume la ProwlerExecRole IAM función 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 CSV HTML archivos en la EC2 instancia.

    Nota: HTML los archivos son el resultado de la evaluación de Prowler. Por su naturalezaHTML, 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 EC2 instancia procesa todos los CSV archivos para eliminar los errores conocidos y esperados y consolida los hallazgos restantes en un solo archivo. CSV

  6. La EC2 instancia empaqueta los resultados de las cuentas individuales y los resultados agregados en un archivo zip.

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

  8. Una EventBridge regla detecta la carga del archivo y utiliza un SNS tema de Amazon para enviar un correo electrónico al usuario notificándole que la evaluación ha finalizado.

  9. 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 (AmazonEC2) proporciona una capacidad informática escalable en el 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 HTTP invocación que utilizan API destinos 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 (AmazonSNS) le ayuda a coordinar y gestionar el intercambio de mensajes entre editores 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. usr/local/prowler EC2

  • 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 -.yaml. IAM 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, debes volver a crear el conjunto de ProwlerExecRole pilas para poder reconstruir las dependencias entre cuentas y funciones. IAM

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

  • prowler-report-template.xlsm: utilizas 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, abre los archivos.yaml y -.yaml de Prowler-Resources.yaml. IAM 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 y -.yaml. IAM 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— Selecciona una VPC en la cuenta.

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

      Nota: Si seleccionas una subred pública, a la EC2 instancia 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 lo utiliza SSH para acceder, especifique el nombre de un key pair existente.

    • PermittedSSHInbound— Si lo utilizas SSH para acceder, especifica un CIDR bloque permitido. Si no lo estás usandoSSH, mantén el valor predeterminado de127.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 SNS notificación de Amazon cuando Prowler complete la evaluación y cargue el archivo.zip en el bucket de S3.

      Nota: La configuración de la SNS suscripción 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 IAM rol.

    • IAMProwlerExecRole— Mantenga el valor predeterminado a menos que se utilice otro nombre al implementar el archivo IAMProwlerExecRole-.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, selecciona Los siguientes recursos requieren capacidades: [: AWSIAM: :Role] y, a continuación, selecciona Create Stack.

  5. Una vez que la pila se haya creado correctamente, en la CloudFormation consola, en la pestaña Outputs, copia el nombre del recurso de ProwlerEC2Role Amazon (ARN). Lo usará ARN más adelante al implementar el archivo IAM- ProwlerExecRole .yaml.

AWS DevOps

Aprovisione el IAM rol en las cuentas de los miembros.

En la cuenta AWS Organizations de administración o en una cuenta con permisos de administrador delegados CloudFormation, usa la plantilla IAM- ProwlerExecRole .yaml para crear un CloudFormation conjunto de pilas. El conjunto apilado despliega la ProwlerExecRole IAM función en todas las cuentas de los miembros de la organización. Para obtener instrucciones, consulte 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 IAM- ProwlerExecRole .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 ProwlerEC2Role ARN el que copió al crear la Prowler-Resources pila.

    • 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, selecciona el Región de AWS lugar en el que se despliega la EC2 instancia de Prowler. Como IAM los recursos son globales y no regionales, esta IAM función se despliega en todas las regiones activas.

  7. En la página de revisión, seleccione Acepto que AWS CloudFormation podría crear IAM recursos 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

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

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

  1. En la página Especificar plantilla, selecciona La plantilla está lista y, a continuación, carga el archivo IAM- ProwlerExecRole .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— Introduce ProwlerEC2Role ARN el que copiaste al crear la Prowler-Resources pila.

    • 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, selecciona Los siguientes recursos requieren capacidades: [: AWSIAM: :Role] y, a continuación, selecciona 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 EC2 instancia 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 Cuenta de AWS IDs script para especificar qué cuentas desea escanear o puede hacer referencia a un archivo externo que contenga estos parámetros. Regiones de AWS

  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.

AWSadministrador

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.

General AWS

Detenga la EC2 instancia.

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

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 de CSVProwler.

  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 CSV hoja de trabajo de Prowler, selecciona 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.

General AWS

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.

General AWS
TareaDescripciónHabilidades requeridas

Actualice Prowler.

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

  1. Conéctese a la EC2 instancia 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
General AWS

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 EC2 instancia 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.

General AWS
TareaDescripciónHabilidades requeridas

Elimine todos los recursos implementados.

Puede dejar los recursos implementados en las cuentas. Si cierra la EC2 instancia cuando no está en uso y mantiene el depósito de S3 vacío, se reducen los costes 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, consulte 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

Resolución de problemas

ProblemaSolución

No se puede conectar a la EC2 instancia mediante el administrador de sesiones.

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

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

  2. Reinicie la instancia EC2.

Al implementar el conjunto de pilas, la CloudFormation consola le solicitará que lo haga. Enable 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