Esta semana, repasamos las vulnerabilidades de Unicode, que permiten codificar maliciosamente el código para que parezca diferente a un compilador y al ojo humano. También hablaremos de la seguridad de los contenedores y de un plugin de WordPress vulnerable que creemos que requiere atención.
Fuente de troyanos (CVE-2021-42574)
Un artículo publicado recientemente por dos investigadores de la Universidad de Cambridge muestra que el uso exclusivo de los caracteres de anulación de direccionalidad de Unicode en el código podría hacer que los lectores humanos interpreten erróneamente el código como seguro, al tiempo que permite a los actores maliciosos introducir alteraciones lógicas en el código base. Los investigadores han creado un repositorio en GitHub para demostrar cómo se pueden utilizar estos caracteres en diferentes lenguajes de programación.
#!/usr/bin/env python3
def sayHello():
print("Hello, World!")
def sayHello():
print("Goodbye, World!")
sayHello()
¿Puedes saber qué función se ejecutará? Un compilador puede!
Este problema puede tener múltiples implicaciones de seguridad. El código malicioso puede introducirse en un repositorio público que, por lo demás, parece seguro, para realizar ataques a la cadena de suministro. El código copiado de foros públicos también puede contener estas alteraciones lógicas maliciosas. Se menciona en el documento que la mayoría de los compiladores son vulnerables a estos problemas, y aunque algunas comunidades han reconocido el problema (véase Rust y GitHub), se sabe que la mayoría siguen siendo vulnerables.
Mejores prácticas de seguridad de los contenedores
Según Docker, un contenedor es una unidad de software estándar que empaqueta el código y todas sus dependencias. La aplicación se ejecuta de forma rápida y fiable de un entorno informático a otro. Esto permite desplegar una imagen de aplicación sin realizar cambios en diferentes sistemas operativos anfitriones. Aunque estas imágenes de contenedores están aisladas del sistema operativo subyacente, una vulnerabilidad explotable dentro de un contenedor puede comprometer toda la infraestructura de la nube, según la guía Comprehensive Container Security de sysdig. Según la encuesta de la Fundación de Computación Nativa en la Nube (CNCF) de 2020, el uso de contenedores en producción ha aumentado hasta el 92%, lo que significa que es más importante que nunca asegurar estas instancias.
Ofrecemos nuestra propia guía de seguridad de contenedores que entra en más detalles sobre el uso de herramientas y procedimientos recomendados para construir imágenes Docker seguras. Recomendamos seguir estas prácticas recomendadas para asegurar mejor sus contenedores:
- Actualice las imágenes regularmente para reducir el número de vulnerabilidades en un contenedor.
- Escanee con frecuencia las vulnerabilidades utilizando una herramienta de escaneo de vulnerabilidades como Trivy, una herramienta gratuita y de código abierto construida para este propósito.
- Crea usuarios limitados para la ejecución de contenedores y evita ejecutar los contenedores como usuario root siempre que sea posible. Es importante ejercer el principio de mínimo privilegio cuando se utilizan contenedores.
- Limitar la CPU y la RAM que utiliza un contenedor. Los límites de uso del hardware mitigan en gran medida la capacidad de un atacante para realizar minería de criptomonedas en un determinado contenedor. Esto también beneficia la mejora del rendimiento al reducir la cantidad de recursos innecesarios asignados a un contenedor.
Por último, puede consultar la hoja de trucos de seguridad de Docker proporcionada por el Proyecto de Seguridad de Aplicaciones Web Abiertas (OWASP) para obtener una rápida visión general sobre este tema.
Plugin de WordPress OptinMonster (CVE-2021-39341)
Según la página del plugin para WordPress, OptinMonster es un plugin que ayuda a sus usuarios a crear ventanas emergentes para permitir la suscripción de los lectores. En el momento de escribir este artículo, tiene más de un millón de instalaciones activas.
Este plugin utiliza puntos finales de API para funcionar. Según el artículo de WordFence, la mayoría de estos puntos finales de API eran vulnerables, lo que permitía a un atacante no autenticado exportar información sensible e inyectar código JavaScript malicioso en los sitios de WordPress que utilizaban el plugin. Las versiones anteriores a la 2.6.4 de este plugin están abiertas a estos ataques, y es muy recomendable actualizar este plugin a la última versión. El equipo de OptinMonster ha restablecido las claves API comprometidas, y es posible que los usuarios tengan que regenerar sus claves API para seguir utilizando el plugin.
Con la elaboración de estos compendios, pretendemos compartir información útil con nuestros lectores. No dudes en dejar un comentario abajo si has aprendido algo nuevo, y permanece atento a las últimas noticias sobre seguridad.
Comentarios