Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Audite automáticamente los grupos de AWS seguridad que permiten el acceso desde direcciones IP públicas - 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.

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.

Audite automáticamente los grupos de AWS seguridad que permiten el acceso desde direcciones IP públicas

Creado por Eugene Shifer (AWS) y Stephen DiCato (AWS)

Resumen

Como práctica recomendada de seguridad, es fundamental minimizar la exposición de los AWS recursos solo a lo que sea absolutamente necesario. Por ejemplo, los servidores web que sirven al público en general deben permitir el acceso entrante desde Internet, pero el acceso a otras cargas de trabajo debe restringirse a redes específicas para reducir la exposición innecesaria. Los grupos de seguridad de Amazon Virtual Private Cloud (Amazon VPC) son un control eficaz que le ayuda a limitar el acceso a los recursos. Sin embargo, evaluar los grupos de seguridad puede ser una tarea engorrosa, especialmente en arquitecturas de cuentas múltiples. AWS Config las reglas y AWS Security Hub los controles pueden ayudarle a identificar los grupos de seguridad que permiten el acceso desde la Internet pública (0.0.0.0/0) a protocolos de comunicación de red específicos, como Secure Shell (SSH), HTTP, HTTPS y el protocolo de escritorio remoto (RDP) de Windows. Sin embargo, estas reglas y controles no se aplican si los servicios se ejecutan en puertos no estándar o si el acceso está restringido a determinadas direcciones IP públicas. Por ejemplo, esto puede ocurrir cuando un servicio web está asociado al puerto TCP 8443 en lugar del puerto TCP 443 estándar. Esto también puede ocurrir cuando los desarrolladores tienen acceso al servidor desde sus redes domésticas, por ejemplo, con fines de prueba.

Para solucionar este problema, puede utilizar la solución de infraestructura como código (IaC) que se proporciona en este patrón para identificar los grupos de seguridad que permiten el acceso desde cualquier dirección IP no privada (no compatible con la RFC 1918) a cualquier carga de trabajo de su organización. Cuenta de AWS AWS La AWS CloudFormationplantilla proporciona una AWS Config regla personalizada, una AWS Lambdafunción y los permisos necesarios. Puede implementarla como una pila en una sola cuenta o como un conjunto de pilas en toda la organización, gestionado de forma integral AWS Organizations.

Requisitos previos y limitaciones

Requisitos previos 

  • Un activo Cuenta de AWS

  • Experiencia usando GitHub

  • Si va a realizar la implementación en una sola Cuenta de AWS:

  • Si vas a realizar un despliegue en una AWS organización:

    • Permisos para crear conjuntos de CloudFormation pilas

    • Security Hub configurado con AWS Organizations integración

    • AWS Config configúrelo en las cuentas en las que va a implementar esta solución

    • Designar Cuenta de AWS a un administrador delegado de un AWS Config Security Hub

Limitaciones

  • Si va a realizar la implementación en una cuenta individual que no tiene activado Security Hub, puede utilizarla AWS Config para evaluar los resultados.

  • Si va a realizar el despliegue en una organización que no tiene un administrador delegado para AWS Config el Security Hub, debe iniciar sesión en las cuentas de los miembros individuales para ver los resultados.

  • Si solía administrar y AWS Control Tower controlar las cuentas de su organización, implemente el IaC siguiendo este patrón mediante Customizations for AWS Control Tower (cFCT). El uso de la CloudFormation consola generaría desviaciones en la configuración y AWS Control Tower requeriría que volvieras a inscribir las unidades organizativas () o las cuentas gestionadas. OUs

  • Algunas Servicios de AWS no están disponibles en todas las versiones. Regiones de AWS Para ver la disponibilidad por región, consulta Servicios de AWS por región. Para ver puntos de enlace específicos, consulta la página de puntos de enlace y cuotas del servicio y elige el enlace del servicio.

Arquitectura

Implementar en un individuo Cuenta de AWS

El siguiente diagrama de arquitectura muestra el despliegue de los AWS recursos en una sola unidad Cuenta de AWS. Los recursos se aprovisionan mediante una CloudFormation plantilla directamente a través de la CloudFormation consola. Si Security Hub está activado, puede ver los resultados en Security Hub AWS Config o en Security Hub. Si Security Hub no está activado, solo podrá ver los resultados en AWS Config.

Implementación de la plantilla IaC como una CloudFormation pila en una sola cuenta de AWS.

En el diagrama, se muestra el siguiente flujo de trabajo:

  1. Usted crea una CloudFormation pila. Esto implementa una función Lambda y AWS Config una regla. Tanto la regla como la función se configuran con los permisos AWS Identity and Access Management (de IAM) necesarios para publicar las evaluaciones de los recursos en AWS Config los registros.

  2. La AWS Config regla funciona en modo de evaluación detectivesca e invoca la función Lambda cada 24 horas.

  3. La función Lambda evalúa los grupos de seguridad y envía actualizaciones a. AWS Config

  4. Security Hub recibe todos los AWS Config resultados.

  5. Puede ver los resultados en Security Hub o en AWS Config, según los servicios que haya configurado en la cuenta.

Implementar en una AWS organización

El siguiente diagrama muestra la implementación del patrón en varias cuentas que se administran mediante AWS Organizations y AWS Control Tower. La CloudFormation plantilla se implementa a través de cFCT. Los resultados de la evaluación se centralizan en Security Hub, en la cuenta de administrador delegado. La sección de AWS CodePipeline flujo de trabajo del diagrama muestra los pasos de fondo que se producen durante la implementación de cFCT.

Implementación de la plantilla IaC como un conjunto de CloudFormation pilas en una organización de AWS.

En el diagrama, se muestra el siguiente flujo de trabajo:

  1. En la cuenta de administración, debe cargar un archivo comprimido (ZIP) de la plantilla IaC en un bucket de Amazon Simple Storage Service (Amazon S3) que despliega cFCT.

  2. La canalización cFCT descomprime el archivo, ejecuta las comprobaciones de cfn-nag (GitHub) y despliega la plantilla como un conjunto de pilas. CloudFormation

  3. Según la configuración que especifiques en el archivo de manifiesto de cFCT, CloudFormation StackSets despliega las pilas en cuentas individuales o especificadas. OUs Esto despliega una función Lambda y AWS Config una regla en las cuentas de destino. Tanto la regla como la función se configuran con los permisos de IAM necesarios para publicar las evaluaciones de los recursos en AWS Config los registros.

  4. La AWS Config regla funciona en modo de evaluación detectivesca e invoca la función Lambda cada 24 horas.

  5. La función Lambda evalúa los grupos de seguridad y envía actualizaciones a. AWS Config

  6. AWS Config reenvía todos los resultados a Security Hub.

  7. Los resultados de Security Hub se agregan a la cuenta del administrador delegado.

  8. Puede ver los resultados agregados en Security Hub en la cuenta de administrador delegado.

Herramientas

Servicios de AWS

  • AWS CloudFormationle ayuda a configurar AWS los recursos, aprovisionarlos de forma rápida y coherente y gestionarlos a lo largo de su ciclo de vida en todo el territorio Cuentas de AWS y Regiones de AWS.

  • AWS Configproporciona una vista detallada de los recursos que tiene Cuenta de AWS y de cómo están configurados. Le ayuda a identificar cómo se relacionan los recursos entre sí y cómo han cambiado sus configuraciones a lo largo del tiempo. Una AWS Config regla define los parámetros de configuración ideales para un recurso y AWS Config puede evaluar si AWS los recursos cumplen las condiciones de la regla.

  • AWS Control Towerle ayuda a configurar y administrar un entorno de AWS múltiples cuentas, siguiendo las prácticas recomendadas prescriptivas. Las personalizaciones de AWS Control Tower (cFCT) te ayudan a personalizar tu AWS Control Tower landing zone y a mantenerte alineado con las AWS mejores prácticas. Las personalizaciones de esta solución se implementan mediante CloudFormation plantillas y políticas de control AWS Organizations de servicios (). SCPs

  • AWS Lambda es un servicio de computación que ayuda a ejecutar código sin necesidad de aprovisionar ni administrar servidores. Ejecuta el código solo cuando es necesario y amplía la capacidad de manera automática, por lo que solo pagará por el tiempo de procesamiento que utilice.

  • 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 puede crear y administrar de forma centralizada.

  • AWS Security Hubproporciona una visión completa del estado de su seguridad en AWS. También le ayuda a comparar su AWS entorno con los estándares y las mejores prácticas del sector de la seguridad.

Otras herramientas

  • Python es un lenguaje de programación informático de uso general.

Repositorio de código

El código de este patrón está disponible en el repositorio GitHub Detect vulnerable Security Groups.

Prácticas recomendadas

Le recomendamos que siga las prácticas recomendadas de los siguientes recursos:

Epics

TareaDescripciónHabilidades requeridas

Determine su estrategia de despliegue.

Revise la solución y el código para determinar la estrategia de implementación de su AWS entorno. Determine si va a realizar la implementación en una sola cuenta o en una AWS organización.

Propietario de la aplicación, General AWS

Clonar el repositorio.

Introduzca el siguiente comando para clonar el repositorio de Detect Vulnerable Security Groups:

git clone https://github.com/aws-samples/detect-public-security-groups.git
Desarrollador de aplicaciones, propietario de la aplicación

Valide la versión de Python.

  1. Navegue hasta el directorio de nivel superior del repositorio clonado:

    cd detect-public-security-groups
  2. Abre Security-Group-Public-Assessment.yaml.

  3. En el SgPublicAccessCheckLambdaFunction recurso, confirme que la versión de Python es compatible con su objetivo Regiones de AWS. De forma predeterminada, esta función usa Python 3.12. Para obtener más información, consulte AWS Lambda Añade compatibilidad con Python 3.12. Si es necesario, actualiza la versión de Python.

  4. Guarde y cierre Security-Group-Public-Assessment.yaml.

Administrador de AWS, desarrollador de aplicaciones

Revise CloudFormation la plantilla

TareaDescripciónHabilidades requeridas

Determine su estrategia de despliegue.

Revise la solución y el código para determinar la estrategia de implementación de su AWS entorno. Determine si va a realizar la implementación en una sola cuenta o en una AWS organización.

Propietario de la aplicación, General AWS

Clonar el repositorio.

Introduzca el siguiente comando para clonar el repositorio de Detect Vulnerable Security Groups:

git clone https://github.com/aws-samples/detect-public-security-groups.git
Desarrollador de aplicaciones, propietario de la aplicación

Valide la versión de Python.

  1. Navegue hasta el directorio de nivel superior del repositorio clonado:

    cd detect-public-security-groups
  2. Abre Security-Group-Public-Assessment.yaml.

  3. En el SgPublicAccessCheckLambdaFunction recurso, confirme que la versión de Python es compatible con su objetivo Regiones de AWS. De forma predeterminada, esta función usa Python 3.12. Para obtener más información, consulte AWS Lambda Añade compatibilidad con Python 3.12. Si es necesario, actualiza la versión de Python.

  4. Guarde y cierre Security-Group-Public-Assessment.yaml.

Administrador de AWS, desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Implemente la CloudFormation plantilla.

Implemente la CloudFormation plantilla en su AWS entorno. Realice una de las siguientes acciones:

  • Si va a realizar la implementación en una sola Cuenta de AWS unidad, siga las instrucciones de Cómo crear una pila.

  • Si vas a realizar el despliegue en una organización que no está gestionada por AWS Control Tower, sigue las instrucciones de Cómo crear un conjunto de pilas.

  • Si vas a realizar el despliegue en una organización gestionada por AWS Control Tower, consulta las instrucciones de la sección Crea tus propias personalizaciones.

Desarrollador de aplicaciones, administrador de AWS, AWS general

Comprobar la implementación.

En la CloudFormation consola, compruebe que la pila o conjunto de pilas se haya implementado correctamente.

Administrador de AWS, propietario de la aplicación

CloudFormation Implemente la plantilla

TareaDescripciónHabilidades requeridas

Implemente la CloudFormation plantilla.

Implemente la CloudFormation plantilla en su AWS entorno. Realice una de las siguientes acciones:

  • Si va a realizar la implementación en una sola Cuenta de AWS unidad, siga las instrucciones de Cómo crear una pila.

  • Si vas a realizar el despliegue en una organización que no está gestionada por AWS Control Tower, sigue las instrucciones de Cómo crear un conjunto de pilas.

  • Si vas a realizar el despliegue en una organización gestionada por AWS Control Tower, consulta las instrucciones de la sección Crea tus propias personalizaciones.

Desarrollador de aplicaciones, administrador de AWS, AWS general

Comprobar la implementación.

En la CloudFormation consola, compruebe que la pila o conjunto de pilas se haya implementado correctamente.

Administrador de AWS, propietario de la aplicación
TareaDescripciónHabilidades requeridas

Vea las conclusiones de la AWS Config regla.

En Security Hub, haga lo siguiente para ver una lista de las conclusiones individuales:

  1. Abre la consola de Security Hub.

  2. En el panel de navegación, seleccione Resultados.

  3. En el cuadro Agregar filtros, agregue los siguientes filtros:

    • El estado de conformidad es FAILED

    • El título es SgPublicAccessCheck

  4. Seleccione Aplicar.

En Security Hub, haga lo siguiente para ver una lista del total de hallazgos agrupados por Cuenta de AWS:

  1. Abre la consola de Security Hub.

  2. En el panel de navegación, elija Hallazgos.

  3. Seleccione Crear hallazgo.

  4. Para seleccionar el atributo de agrupación para el conocimiento:

    1. Seleccione el cuadro de búsqueda para ver las opciones de filtro.

    2. Elija Group by (Agrupar por).

    3. Seleccione AwsAccountId.

    4. Seleccione Aplicar.

  5. En el cuadro Agregar filtros, agregue los siguientes filtros:

    • El título es SgPublicAccessCheck

    • El estado de cumplimiento es FAILED

  6. Seleccione Crear hallazgo.

  7. Escriba un Nombre del hallazgo y elija Crear hallazgo.

En AWS Config, para ver una lista de las conclusiones, siga las instrucciones que aparecen en la AWS Config documentación sobre la consulta de la información sobre el cumplimiento y los resultados de la evaluación.

Administrador de AWS, administrador de sistemas de AWS, administrador de la nube

Revise los resultados

TareaDescripciónHabilidades requeridas

Vea las conclusiones de la AWS Config regla.

En Security Hub, haga lo siguiente para ver una lista de las conclusiones individuales:

  1. Abre la consola de Security Hub.

  2. En el panel de navegación, seleccione Resultados.

  3. En el cuadro Agregar filtros, agregue los siguientes filtros:

    • El estado de conformidad es FAILED

    • El título es SgPublicAccessCheck

  4. Seleccione Aplicar.

En Security Hub, haga lo siguiente para ver una lista del total de hallazgos agrupados por Cuenta de AWS:

  1. Abre la consola de Security Hub.

  2. En el panel de navegación, elija Hallazgos.

  3. Seleccione Crear hallazgo.

  4. Para seleccionar el atributo de agrupación para el conocimiento:

    1. Seleccione el cuadro de búsqueda para ver las opciones de filtro.

    2. Elija Group by (Agrupar por).

    3. Seleccione AwsAccountId.

    4. Seleccione Aplicar.

  5. En el cuadro Agregar filtros, agregue los siguientes filtros:

    • El título es SgPublicAccessCheck

    • El estado de cumplimiento es FAILED

  6. Seleccione Crear hallazgo.

  7. Escriba un Nombre del hallazgo y elija Crear hallazgo.

En AWS Config, para ver una lista de las conclusiones, siga las instrucciones que aparecen en la AWS Config documentación sobre la consulta de la información sobre el cumplimiento y los resultados de la evaluación.

Administrador de AWS, administrador de sistemas de AWS, administrador de la nube

Solución de problemas

ProblemaSolución

Se produce un error al crear o eliminar el conjunto de CloudFormation pilas.

Cuando AWS Control Tower se despliega, impone las barreras de protección necesarias y asume el control de los AWS Config agregadores y las reglas. Esto incluye evitar cualquier alteración directa. CloudFormation Para implementar o eliminar correctamente esta CloudFormation plantilla, incluidos todos los recursos asociados, debe utilizar cFCT.

cFct no puede eliminar la CloudFormation plantilla.

Si la CloudFormation plantilla persiste incluso después de realizar los cambios necesarios en el archivo de manifiesto y eliminar los archivos de plantilla, confirme que el archivo de manifiesto contiene el enable_stack_set_deletion parámetro y que el valor está establecido en. false Para obtener más información, consulte Eliminar un conjunto de pilas en la documentación de cFCT.

Recursos relacionados

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.