Tutoriales y Manuales
Entradas Mensuales
-
►
2024
(Total:
1019
)
- ► septiembre (Total: 50 )
-
►
2023
(Total:
710
)
- ► septiembre (Total: 65 )
-
►
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
▼
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
▼
mayo
(Total:
67
)
- Herramientas ingeniería inversa: análisis de malwa...
- Campaña de publicidad maliciosa en Google con en e...
- Alternativas a la red TOR y a su navegador
- Auditoría de seguridad VoIP de Asterisk con Metasp...
- Historia del primer ataque de ransomware realizado...
- INCIBE publica Glosario de Términos de Ciberseguridad
- El FBI compartirá contraseñas robadas en ataques a...
- El mercado ruso Hydra DarkNet ganó más de 1.3 bill...
- Malware para macOS permite tomar capturas de panta...
- El fabricante de audio Bose revela una violación d...
- Ministerio del Interior Belga fue objetivo de un "...
- bettercap: la navaja suiza del tráfico de red
- Vulnerabilidad crítica en HTTP (http.sys) afecta I...
- Dos niños cortan Internet de la casa de la profeso...
- Remmina: cliente de escritorio remoto para Linux
- Europa quiere acabar con las retransmisiones strea...
- ProxyChains: cadena de proxys para ocultar nuestra IP
- CrackMapExec: navaja suiza para el pentesting en W...
- Google Reader podría volver integrado en Chrome
- Después de 3 años Twitter reactiva la verificación...
- Presentan unidades SSD con protección anti ransomw...
- 5 minutos después del lanzamiento del parche de Ex...
- Gestores de contraseñas libres y gratuitos para Linux
- mimikatz: herramienta extracción credenciales de W...
- Disponible la última versión Wifislax64 2021
- Ransomware DarkSide ha ganado más de 90 millones e...
- Buscadores de personas por internet
- mRemoteNG, un terminal avanzado conexiones remotas...
- Magecart oculta skimmers en los favicons de las pá...
- Scheme Flooding: vulnerabilidad permite el seguimi...
- Hackean un Tesla a distancia vía WiFi usando un dron
- CloudFlare quiere acabar con los molestos Captchas
- Asignan por error 600 millones de IP's a una granj...
- Toshiba Francia afectada por el ransomware DarkSide
- Grupo AXA de Asia afectado por el ransomware Avaddon
- Desaparece el ransomware DarkSide por la presión d...
- Ransomware DarkSide gana casi 10 millones de dólar...
- Distribuidor de productos químicos Brenntag paga 4...
- El servicio nacional de salud de Irlanda afectado ...
- El oleoducto más grande de Estados Unidos Colonial...
- Actualizaciones de seguridad importantes para prod...
- Vulnerabilidades de la tecnología 5G
- FragAttacks: múltiples vulnerabilidades diseño est...
- iOS 14.5 de Apple presenta nuevos controles de pri...
- Aseguradora AXA detiene el reembolso por delitos d...
- Un ciberataque de ransomware a la mayor empresa de...
- Ransomware Zeppelin afecta empresa ASAC y deja sin...
- Bypass autenticación en routers Asus GT-AC2900
- Actualizaciones de seguridad críticas para lector ...
- Automatizar tareas en Windows con AutoHotkey
- Phirautee: un ransomware con fines educativos
- Nginx supera a Apache como servidor web más utilizado
- Facebook bloquea una campaña de publicidad de Signal
- MobaXterm: terminal para Windows con cliente SSH y...
- Microsoft detalla el final definitivo de Adobe Fla...
- Muon Snowflake, cliente SSH y SFTP para Windows y ...
- Nuevo tipo de ataque afecta a procesadores Intel y...
- Vulnerabilidad importante driver BIOS ordenadores ...
- PhotoRec: recupera ficheros borrados accidentalmente
- Seguridad en contenedores Kubernetes
- Glovo sufre un ciberataque con filtración de datos...
- En Europa las plataformas de Internet deberán elim...
- Cifrado del correo electrónico
- Desmantelan Boystown, portal de pornografía infant...
- Errores en el software BIND exponen los servidores...
- Roban datos de jugadores, contratos y presupuestos...
- ¿Cómo desbloqueó el FBI el iPhone de San Bernardino?
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
Después de ver qué es una vCPU y la diferencia entre núcleos (cores) e hilos en los procesadores, pasamos a explicar toda la nomenclatura d...
-
En el panorama en constante evolución de la seguridad de redes, OpnSense se ha convertido en una formidable solución de firewall. Nacido de...
-
Pese a que Gemini ofrece multitudes de opciones, recientemente, se ha dado a conocer una situación fuera de lo común. Hace unos días, un es...
Seguridad en contenedores Kubernetes
Kubernetes domina el mercado de la orquestación de contenedores. Según varios informes, el 87% de las organizaciones están administrando una parte de sus cargas de trabajo de contenedores con Kubernetes y esta es una de las mayores tecnologías que están siendo adoptadas. Pero el 94% de las organizaciones que usan kubernetes, han experimentado un problema de seguridad grave en los últimos 12 meses en su entorno de contenedores, casi el 70% ha detectado configuraciones incorrectas, el 27% ha experimentado incidentes de ciberseguridad y el 24% ha descubierto vulnerabilidades importantes en dichos entornos de contenedores.
Originalmente, ingenieros de Google desarrollaron y diseñaron Kubernetes. Google fue uno de los primeros colaboradores de la tecnología de contenedores de Linux, y ha contado públicamente que todo en Google se ejecuta en contenedores. Google donó el proyecto Kubernetes a la Cloud Native Computing Foundation en 2015.
Algunos factores a considerar cuando proteja sus contenedores de Kubernetes:
- Configuraciones predeterminadas
- Tiempo de ejecución del contenedor
- Imágenes
- Seguridad del host
- Comunicaciones pod a pod
Vocabulario Kubernetes
Como cualquier tecnología, existen muchas palabras específicas de la tecnología que pueden ser una barrera al ingresar. Veamos algunos de los términos más comunes para ayudarlo a entender Kubernetes.
- Master: la máquina que controla los nodos Kubernetes. Aquí es donde se originan todas las asignaciones de tareas.
- Nodo: estas máquinas realizan las tareas requeridas y asignadas. El master de Kubernetes las controla.
- Pod: un grupo de uno o más contenedores implementados en un nodo único. Todos los contenedores de un pod comparten la dirección IP, la IPC, el nombre del host y otros recursos. Los pods abstraen la red y el almacenamiento del contenedor subyacente. Esto le permite mover los contenedores por el clúster con mayor facilidad.
- Controlador de replicación: controla la cantidad de copias idénticas de un pod que deben ejecutarse en algún lugar del clúster.
- Servicio: separa las definiciones de tareas de los pods. Los proxies de servicios de Kubernetes envían automáticamente las solicitudes de servicio al pod correspondiente, sin importar adónde se traslada en el clúster, o incluso si está siendo reemplazado.
- Kubelet: este servicio se ejecuta en los nodos y lee los manifiestos del contenedor, y garantiza que los contenedores definidos estén iniciados y ejecutándose.
- kubectl: es la herramienta de configuración de la línea de comandos de Kubernetes.
- Remediar las vulnerabilidades conocidas durante la fase de compilación
- Corregir las configuraciones incorrectas durante la fase de compilación / implementación
- Responder a las amenazas en tiempo de ejecución.
Fase de compilación
La protección de contenedores y Kubernetes comienza en la fase de compilación con la protección de las imágenes del contenedor. El tiempo que pasemos en este punto, pagará dividendos más adelante. Las mejores prácticas de ciberseguridad que se hayan perdido en este punto serán significativamente más costosas de corregir en fases posteriores.
Las dos cosas principales que se deben hacer aquí son crear imágenes seguras y escanear esas imágenes en busca de vulnerabilidades conocidas.
Recomendaciones
- Utiliza imágenes mínimas : Evita el uso de imágenes con shells o administradores de paquetes del sistema operativo, ya que podrían contener vulnerabilidades desconocidas. Si debemos incluir paquetes de sistema operativo, elimina el administrador de los mismos en un paso posterior.
- No agregues componentes innecesarios : Asegúrate de eliminar las herramientas de depuración de los contenedores en producción. Las herramientas comunes, como CURL, son muy útiles para los atacantes, como de un buen hardening hablásemos, bórralas.
- Utiliza solo imágenes actualizadas : Asegúrate de que sus imágenes (y cualquier herramienta de terceros que incluya) están actualizadas y utilizan las últimas versiones de sus componentes.
- Utiliza un escáner de imágenes para identificar vulnerabilidades : El escáner debería poder identificar las vulnerabilidades dentro de las imágenes, incluso por capas, y decirnos si se pueden parchear o no. Debemos poder buscar vulnerabilidades en paquetes de sistema operativo y bibliotecas para todas las aplicaciones en contenedores. Os dejo por aquí una lista interesante de scanner de vulnerabilidades para kubernetes.
- Integra y automatiza la ciberseguridad : Haz que el escaneo de imágenes y otras comprobaciones de ciberseguridad formen parte de su canal para automatizar la seguridad y generar alertas cuando el escáner detecte vulnerabilidades de altas, pero reparables
- Etiqueta vulnerabilidades no reparables : A veces, no existe una solución para una vulnerabilidad conocida, o la vulnerabilidad no es crítica y, por lo tanto, no garantiza una solución inmediata. En este caso, agrégalos a una lista blanca o filtra la salida del escáner para que no interrumpa el flujo de trabajo del equipo de desarrollo.
- Implementar defensa en profundidad : Cuando se descubre un problema de ciberseguridad en una imagen de un contenedor o una implementación en ejecución que usa esa imagen, asegúrate de tener verificaciones de políticas y un flujo de trabajo de corrección para detectar y actualizar esas imágenes.
Fase de implementación
La infraestructura de Kubernetes debe configurarse de forma segura antes de implementar las cargas de trabajo. Desde una perspectiva de ciberseguridad, primero necesitamos la visibilidad de lo que está implementando y cómo. Luego, podemos identificar y así responder a las brechas de la política de seguridad. Como mínimo, necesitamos saber:
- Qué se está implementando : Incluyendo información sobre la imagen que se está utilizando, que componentes o vulnerabilidades, y los pods que se implementarán.
- Dónde se implementará : Qué clústeres, espacios de nombres y nodos
- Cómo se implementa : Si se ejecuta con privilegios, con qué otras implementaciones se puede comunicar, el contexto de seguridad del pod que se aplica, si corresponde
- A qué puede acceder : Incluyendo secretos, volúmenes y otros componentes de la infraestructura, como el host o la API del orquestador.
- Es compatible : Si cumple con nuestras políticas y requisitos de ciberseguridad
Con esta información, puede comenzar a apuntar a áreas para remediación y endurecimiento e implementar la segmentación adecuada.
Recomendaciones
- Utiliza espacios de nombres para aislar cargas de trabajo sensibles : Los espacios de nombres son un límite de aislamiento clave para los recursos de Kubernetes. Proporcionan una referencia para las políticas de red, las restricciones de control de acceso y otros controles de seguridad importantes. La separación de las cargas de trabajo en espacios de nombres puede ayudar a contener los ataques y limitar el impacto de errores o acciones destructivas por parte de los usuarios autorizados.
- Utiliza las políticas de red de Kubernetes para controlar el tráfico ( Entrada / Salida ) entre pods y clústeres : De forma predeterminada, Kubernetes permite que cada pod se ponga en contacto con los demás. Las políticas de segmentación de red son un control de seguridad clave que puede evitar el movimiento lateral a través de contenedores en caso de que un atacante ingrese. Cubrimos cómo configurar políticas de red de Kubernetes en dos publicaciones de blog anteriores.
- Evita el acceso con excesivos permisos a los secretos : Como primer paso, asegúrate de que las implementaciones recopilan solo los secretos que realmente requieren para evitar una exposición innecesaria.
- Evaluar los privilegios utilizados por los contenedores : El conjunto de capacidades, roles y privilegios otorgados a los contenedores pueden tener un gran impacto en ciberseguridad. El objetivo aquí es adherirse al principio de mínimo privilegio y proporcionar los privilegios y capacidades mínimas que permitirían al contenedor realizar su función.
Las políticas de ciberseguridad de los pods son una forma de controlar los atributos relacionados con la misma en estos, incluidos los niveles de privilegio de los contenedores. Estos pueden permitir que un operador especifique lo siguiente:
- No ejecutar los procesos de aplicación como root.
- No permitir la escalada de privilegios.
- Utilizar un sistema de archivos raíz de solo lectura.
- Utilizar el montaje del sistema de archivos predeterminado ( proc )
- No utilizar la red del host ni el espacio de proceso.
- Eliminar las capacidades de Linux no utilizadas e innecesarias.
- Utilizar las opciones de SELinux para controles de proceso más detallados.
- Otorgar a cada aplicación su propia cuenta de servicio de Kubernetes.
- No montar las credenciales de la cuenta de servicio en un contenedor si no necesita acceder a la API de Kubernetes.
- Evaluar la procedencia de la imagen, incluidos los registros : Como regla general, no implemente código de fuentes desconocidas. Para Kubernetes, esto significa usar imágenes de registros conocidos que solo están en listas de permitidos.
- Extiende el escaneo de imágenes : Como una extensión del escaneo de imágenes, aplica políticas en la fase de implementación según los resultados del escaneo. Una forma de hacer que se cumpla sería utilizar el controlador de admisión de validación, una función de Kubernetes para rechazar la creación de la implementación cuando especifican imágenes sin resultados de escaneo o vulnerabilidades críticas, o si las imágenes se crearon hace más de 90 días. Las imágenes que no se han escaneado recientemente pueden contener vulnerabilidades con lo que ello conlleva.
- Utiliza etiquetas y anotaciones de forma adecuada : Por ejemplo, considera etiquetar o anotar las implementaciones con el nombre, el alias de correo electrónico o el canal de Slack del equipo responsable de una aplicación. Esto hará que sea más fácil alertar al equipo responsable sobre la clasificación de problemas de ciberseguridad.
- Habilita el control de acceso basado en roles de Kubernetes (RBAC) , este proporciona un método para controlar la autorización para acceder al servidor de API de Kubernetes de un clúster, tanto para los usuarios como para las cuentas de servicio del clúster. La función de Kubernetes RBAC es altamente configurable.
Fase de ejecución
La fase de ejecución expone las aplicaciones en contenedores a una gran cantidad de nuevos desafíos de ciberseguridad. Nuestro objetivo aquí es ganar visibilidad en el entorno de ejecución, y detectar / responder a las amenazas a medida que van surgiendo.
La protección proactiva de los contenedores y las implementaciones de Kubernetes en las fases de compilación e implementación puede reducir en gran medida la probabilidad de incidentes de ciberseguridad en la fase de ejecución y el esfuerzo posterior necesario para corregir los errores.
Primero, debemos monitorizar las actividades del contenedor más relevantes para la ciberseguridad :
- Actividad de proceso
- Comunicaciones de red entre servicios en contenedores
- Comunicaciones de red entre servicios en contenedores y clientes y servidores externos
Observar el comportamiento de los contenedores para detectar anomalías es generalmente más fácil en los contenedores que en las máquinas virtuales debido a la naturaleza declarativa de los contenedores y Kubernetes. Estos atributos permiten conocer de una forma más sencilla, lo implementado y su actividad esperada.
Recomendaciones
- Aprovecha la información contextual en Kubernetes : Utiliza la información de tiempo de compilación e implementación en Kubernetes para evaluar la actividad observada frente a la esperada durante el tiempo de ejecución a fin de detectar actividad sospechosa.
- Amplía el análisis de vulnerabilidades a las implementaciones en ejecución : Supervisa las implementaciones en ejecución para detectar vulnerabilidades Zero Day, además de analizar las vulnerabilidades que existen en las imágenes del contenedor.
- Utiliza los controles de ciberseguridad integrados de Kubernetes : Configura el contexto de ciberseguridad para los pods para limitar sus capacidades. Estos controles pueden eliminar clases enteras de ataques que dependen del acceso privilegiado
- Monitoriza el tráfico de la red para limitar las comunicaciones innecesarias o inseguras : Observa el tráfico de la red y compara ese tráfico con el permitido según las políticas de Kubernetes. Observar el tráfico de redes activas es una buena manera de comprender cómo las aplicaciones interactúan entre sí e identificar comunicaciones inesperadas. proyectos de código abierto como https://github.com/kinvolk/inspektor-gadget pueden ayudar con esto, y las soluciones de seguridad comercial brindan diversos grados de análisis del tráfico de la red de contenedores.
- Proceso de apalancamiento de listas permitidas : El proceso de usar listas blancas es una práctica probada para identificar procesos en ejecución inesperados. Primero, observa la aplicación durante un período de tiempo para identificar todos los procesos que se ejecutan en el curso normal del comportamiento de la aplicación, luego usa esta lista como su lista de procesos permitidos con el fin de comparar el comportamiento futuro de la aplicación.
- Compara y analiza diferentes actividades en tiempo de ejecución en pods : Las aplicaciones en contenedores se replican por motivos de alta disponibilidad, tolerancia a fallos o escala. Las réplicas deben comportarse de forma casi idéntica, las réplicas con desviaciones significativas de las demás justifican una mayor investigación y sospecha a priori.
- Integra la herramienta de ciberseguridad de Kubernetes con otros sistemas externos: Correo electrónico, PagerDuty, Slack, Google Cloud Security Command Center, SIEM , etc.) y aprovecha a alertar al equipo responsable de una aplicación determinada cuando se detecta una amenaza potencial. Los proveedores de seguridad comerciales de Kubernetes deben admitir una amplia gama de integraciones con herramientas externas.
- Utiliza los controles nativos de Kubernetes para contener una brecha de ciberseguridad : Indicar automáticamente a Kubernetes que escale los pods sospechosos a cero o elimine y luego reinicie las instancias de aplicaciones infringidas.
Ciberseguridad en infraestructuras Kubernetes
La ciberseguridad para Kubernetes, debe extenderse más allá de las imágenes y las cargas de trabajo y proteger todo el entorno, incluida la infraestructura del clúster.
- Actualiza Kubernetes : Siempre a la última versión sque sea posible. Recuerda que solo se admiten las últimas tres versiones de Kubernetes, incluidos los parches de seguridad para las vulnerabilidades recientes. Por lo tanto, si se descubre una vulnerabilidad alta para Kubernetes y tenemos cuatro versiones por detrás, nuestra versión no recibirá parche. ( Estos nos fuerza a estar siempre actualizados, o es la intención)
- Configura de forma segura el servidor API de Kubernetes : Asegúrate de deshabilitar el acceso no autenticado / anónimo y de usar el cifrado TLS ( mínimo 1.2 ) para las conexiones entre los kubelets y el servidor API.
- Asegura el kubelet : Como agente de nodo principal que se ejecuta en cada nodo, la configuración incorrecta de kubelet nos expone a un acceso de puerta trasera a través del mismo. Asegúrese de haber deshabilitado el acceso anónimo al kubelet ( iniciando el kubelet con la --anonymous-auth=falsebandera ) y usa NodeRestriction para limitar que el kubelet puede acceder.
Kubernetes incluye muchos más componentes, incluido el programador de kube, el administrador de controlador de kube, los archivos de configuración en el nodo principal y el nodo de trabajo, etc
Escáners para encontrar vulnerabilidades de seguridad y configuraciones incorrectas
Kube Hunter (Cazador de Kube)
Cazador de Kube es una herramienta de análisis de vulnerabilidades de Aqua Security para su clúster de Kubernetes. Esta herramienta es muy útil para aumentar la conciencia de seguridad de los clústeres de Kubernetes. Esta herramienta ofrece múltiples opciones de escaneo estándar como remoto, entrelazado, red para identificar las vulnerabilidades.
Tiene una lista de pruebas activas y pasivas que pueden identificar la mayoría de las vulnerabilidades presentes en un clúster de Kubernetes.
Kube Bench (Banco Kube)
Banco Kube es una de las herramientas de seguridad de calidad de código abierto que verifica si sus implementaciones cumplen con el estándar de seguridad de CIS (Center for Internet Security).
Es compatible con las pruebas comparativas para varias versiones de Kubernetes. Aparte de eso, también señala los errores y ayuda a corregirlos. Proporciona la solución para corregir los errores. Esta herramienta también verifica para garantizar que la autorización y autenticación del usuario sean adecuadas, que los datos estén encriptados de forma segura. Asegura que la implementación permitida permite el principal de CIS.
Checkov
Checkov es una herramienta de seguridad que se utiliza para evitar configuraciones incorrectas en la nube durante el tiempo de compilación de Kubernetes, Terraform, Cloudformation, marco sin servidor y otros lenguajes de infraestructura como código. Está escrito en Python y tiene como objetivo aumentar la adopción de seguridad y el cumplimiento de las mejores prácticas.
MKIT
MKIT son las siglas de Managed Kubernetes Inspection Tool. Esta herramienta lo ayuda a identificar rápidamente los riesgos de seguridad clave para los clústeres de Kubernetes y sus recursos. Tiene formas rápidas y fáciles de evaluar las configuraciones incorrectas en el clúster y las cargas de trabajo.
Kubei
Kubei se utiliza para evaluar los riesgos inmediatos en un clúster de Kubernetes. La mayor parte de Kubei está escrita en el lenguaje de programación Go. Cubre todos los puntos de referencia de CIS Docker.
Escanea todas las imágenes utilizadas por el clúster de Kubernetes, pods de aplicaciones, pods del sistema, etc. Obtiene múltiples opciones para personalizar el escaneo en términos de nivel de vulnerabilidad de interés, velocidad del escaneo, alcance del escaneo, etc. Con la GUI proporciona, puede ver todas las vulnerabilidades que encuentra en el clúster y cómo mitigarlas.
Kube Scan (Escaneo de Kube)
Escaneo de Kube es un escáner de contenedores que viene como contenedor en sí mismo. Lo instala en un nuevo clúster, después de lo cual escanea las cargas de trabajo que se están ejecutando actualmente en su clúster y le muestra la puntuación de riesgo y los detalles de riesgo en la interfaz de usuario web amigable. La puntuación de riesgo se clasifica de 0 a 10, 0 significa que no hay riesgo y 10 significa alto riesgo.
Kubeaudit
Kubeaudit, como sugiere el nombre, es una herramienta de auditoría de clústeres de Kubernetes de código abierto. Encuentra las configuraciones incorrectas de seguridad en los recursos de Kubernetes y le indica cómo resolverlas. Está escrito en el lenguaje Go para usarlo como paquete Go o como herramienta de línea de comandos. Puede instalarlo en su máquina usando brew con un solo comando.
Kubesec
Kubesec es una herramienta de análisis de riesgos de seguridad de código abierto para los recursos de Kubernetes. Valida la configuración y los archivos de manifiesto utilizados para la implementación y las operaciones del clúster de Kubernetes. Puede instalarlo en su sistema usando su imagen de contenedor, su paquete binario, un controlador de admisión en Kubernetes o un complemento de kubectl.
Fuentes:
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.