El pentesting de entornos en la nube debe contemplar las nuevas técnicas de los cibercriminales




por Víctor Ruiz, fundador de SILIKN, mentor del Centro de Ciberseguridad 05000 e instructor certificado en ciberseguridad — CSCT™

Como hemos señalado en otras ocasiones, el pentesting o prueba de penetración, es una técnica que consiste en atacar–con autorización previa de un contratante– diferentes entornos o sistemas con la finalidad de encontrar y prevenir posibles fallos en el mismo.

El pentesting determina el alcance de los fallos de seguridad de un sistema y gracias a las pruebas que ejecuta una organización puede llegar a saber a qué peligros está expuesta y cuál es su nivel de eficiencia contra los riesgos y amenazas cibernéticas.

Pero no todos las acciones de pentesting son iguales, porque evalúan diferentes tipos de sistemas y, por ejemplo, en el caso de la nube las pruebas de penetración requieren un enfoque diferente.

La mayoría de las empresas están al tanto de la forma en la que operan los atacantes y a medida que ajustan sus técnicas, los defensores deben examinar sus estrategias de seguridad, pues conforme la superficie de ataque se expande y los delincuentes se dirigen a los entornos de nube, las empresas tienen presión para garantizar que su infraestructura sea segura.

Muchas organizaciones confían en las pruebas de penetración para encontrar brechas de seguridad en sus sistemas, pero estas técnicas también han tenido que evolucionar al mismo ritmo que lo hace la tecnología. Los pentesters se preocupan principalmente por obtener acceso a dispositivos de red y moverse a través de la red TCP / IP, a través de perímetros de defensa, para acceder a activos como bases de datos. No obstante, las superficies y vectores de ataque están cambiando constantemente.

Muchas de las vulnerabilidades de la nube a menudo se pasan por alto porque los pentesters se centran en las técnicas del centro de datos y no en las tácticas de la nube. Los marcos de cumplimiento no abordan las brechas de seguridad y los DevOps o los equipos de seguridad no las reconocen. Las fallas a menudo solo son aparentes en el contexto completo del entorno.

Y desafortunadamente no son ataques inusuales, pues las vulnerabilidades que utilizan los atacantes para violar los entornos de la nube tienden a ser problemas de arquitectura o problemas de procesos, a diferencia de una versión de las bibliotecas que tienen fallas. Si bien estos problemas existen en la nube, son menos comunes que en el centro de datos. Gran parte del pentesting en la nube implica reconstruir el contenido de diferentes lugares para que se produzca una infracción.

En el patrón de ataque tradicional, un atacante elige un objetivo y luego busca, o intenta crear, vulnerabilidades para entrar. No es así como se desarrollan la mayoría de las infracciones en la nube. Incluso los ataques de alto perfil tienden a emplear un nuevo patrón: los atacantes usan la automatización para encontrar vulnerabilidades, a menudo una configuración incorrecta de las APIs de recursos en la nube y luego eligen dónde quieren ingresar. Y es importante señalar que, a menudo, los ciberatacantes encuentran los recursos en la nube en cuestión de minutos.

En este sentido, diferentes ataques han destacado el peligro de las filtraciones de datos de Amazon S3 (Amazon Simple Storage Service — Amazon S3, un servicio de almacenamiento de objetos que ofrece escalabilidad, disponibilidad de datos y seguridad), son extraordinariamente difíciles de detectar porque, en la mayoría de los casos, los datos no atraviesan cualquier red accesible para el cliente. La exfiltración ocurre en la red de proveedores de la nube a la que un cliente realmente no tiene acceso. El registro de eventos al que la organización puede acceder alertará sobre los datos robados después de que ya no estén.

La mayoría de las configuraciones incorrectas peligrosas de la nube son configuraciones inadecuadas de lectura, que se utilizan para el descubrimiento. Es importante considerar que las organizaciones deberían intentar averiguar dónde se almacenan las claves de las APIs porque eso es lo que hacen los atacantes.

Antes de contratar un servicio de pentesting, las organizaciones deben conversar con el proveedor los siguientes temas:
  • ¿Entienden la superficie de vulnerabilidad y su exposición a ella?
  • ¿Están probando las APIs del plano de control, especialmente si están alojadas en la nube?
  • ¿Cuando los datos se toman de la nube, siempre es a través de las APIs del plano de control?

Porque aunque las operaciones básicas en Amazon S3 son, como su nombre lo indica, simples, la situación puede complicarse con el control de acceso y los permisos. Si bien todos los objetos de S3 se establecen de forma predeterminada como privados, una vez que los desarrolladores comienzan a configurar los controles de acceso de AWS, es fácil cometer errores.

De hecho, las infracciones de S3 son lo suficientemente comunes como para que haya surgido una industria para descubrirlas y explotarlas. Los actores pueden escanear regularmente S3 en busca de objetos accesibles utilizando herramientas disponibles públicamente y recolectar credenciales de AWS junto con otros datos confidenciales.

Ahora que la pérdida de datos de S3 ha sido tan común, ¿qué se puede hacer para proteger sus datos?

  1. No asuma que los nombres de los depósitos de S3 son invisibles o imposibles de adivinar. Cada depósito de S3 requiere un nombre único a nivel mundial y los usuarios de S3 crean sus propios nombres de depósito. Sin embargo, los ciberatacantes de S3 intentarán adivinar estos nombres para recuperar los objetos dentro de los depósitos. La seguridad de los datos de S3 no debe estar vinculada a nombres de depósito secretos; en su lugar, utilice el control de acceso y el cifrado para proteger los datos.
  2. Asegúrese de que las políticas de gestión de datos empresariales se extiendan a S3 y otros servicios en la nube, y revise la implementación del control de acceso para cada proveedor de la nube. Los sistemas de control de acceso a la nube son potentes y complejos, y una fuente común de filtraciones de datos incluye controles de acceso debilitados o deshabilitados involuntariamente durante el desarrollo, la implementación y la actualización de la aplicación.
  3. Siempre cifre los datos. S3 proporciona numerosos métodos de cifrado. Si se configura y utiliza correctamente, el cifrado protege los datos de forma eficaz: una vez cifrados, no se pueden leer sin la clave correspondiente. A escala empresarial, el cifrado eficaz también plantea requisitos para la gestión de claves que deben abordarse.
  4. Mantenga la visibilidad de los cambios en la configuración del control de acceso y cifrado en las implementaciones en la nube. Registre todos los cambios de configuración con AWS CloudTrail y configure su SIEM para enviar una alerta cada vez que un bucket de S3 se haga público o si se cambia la configuración de cifrado en todas las cuentas.

AWS S3 es un servicio en la nube poderoso, no obstante es importante tener ciertas precauciones para que funcione de forma óptima. A medida que el uso de S3 se amplía entre aplicaciones y equipos, el control de acceso se volverá cada vez más complejo. Seguir políticas sólidas al principio de la implementación de S3 reducirá la posibilidad de una filtración de datos catastrófica en el futuro.

Para más información, visite: https://www.silikn.com/