Twig en Drupal: Parche para vulnerabilidades CVE-2022-39261

Se ha publicado una actualización que corrige una vulnerabilidad en el core de Drupal, asignada como CVE-2022-39261, es un error en el lenguaje de plantillas PHP, que permite a los atacantes acceder a datos fuera del directorio de plantillas cuando usan ciertos espacios de nombres.

Drupal es un sistema de administración de contenido web de código abierto basado en PHP que ha estado usando Twig como su motor de plantillas predeterminado desde Drupal 8, que se lanzó por primera vez en noviembre de 2015.

A continuación, se detalla la vulnerabilidad mencionada.

  • CVE-2022-39261: con una calificación de gravedad “Crítica”, podría permitir a un atacante cargar plantillas fuera de un directorio configurado, a través del gestor del sistema de archivos.

Twig, menciona: “Cuando se utiliza el gestor de archivos para cargar plantillas cuyo nombre es una entrada del usuario, es posible utilizar la sentencia source o include para leer archivos arbitrarios desde fuera del directorio de plantillas cuando se utiliza un espacio de nombres como @somewhere/../some.file (en tal caso, se omite la validación).”

Drupal, indica: “Un atacante podría acceder a escribir código en Twig, dando lugar a múltiples vulnerabilidades, incluyendo el acceso de lectura sobre archivos privados, el contenido de diversos archivos en el servidor, o las credenciales de la base de datos.”

Productos afectados:

  • Twig hasta 1.44.6/2.15.2/3.4.2
  • Drupal >= 8.0.0 <9.3.22

Recomendaciones:

  • Actualización de Twig a la versión 1.44.7, 2.15.3 o 3.4.3
  • Si usa Drupal 9.4, actualice a Drupal 9.4.7.
  • Si usa Drupal 9.3, actualice a Drupal 9.3.22.
  • Tenga en cuenta que Drupal 8 ha llegado al final de su vida útil.
  • El núcleo de Drupal 7 no incluye Twig y por lo tanto no está afectado.

Importante:

Antes de actualizar en entornos de producción es recomendable realizar pruebas previas en entornos de preproducción y comprobar que todo funciona correctamente tras la actualización.

Referencias: