Una actualización de seguridad reciente de WordPress que presenta múltiples correcciones de seguridad también está causando que algunos sitios dejen de funcionar, lo que hace que un desarrollador exclame: “¡¡Esto es un caos!!”
La actualización eliminó una funcionalidad clave que provocó que numerosos complementos dejaran de funcionar en el sitio que utiliza el sistema de bloques de WordPress.
Los complementos afectados iban desde formularios hasta controles deslizantes y migas de pan.
Actualización de WordPress 6.2.1
Los sitios que admiten actualizaciones automáticas en segundo plano recibieron automáticamente la actualización de WordPress 6.2.1 porque era una versión de seguridad (oficialmente era una versión de mantenimiento y seguridad).
Según el anuncio oficial de lanzamiento de WordPress, la actualización contenía cinco correcciones de seguridad:
- “Bloquear temas analizando códigos cortos en datos generados por el usuario;…
- Un problema de CSRF al actualizar las miniaturas de los archivos adjuntos; informado por John Blackbourn del equipo de seguridad de WordPress
- Una falla que permite XSS a través de la detección automática de inserción abierta; informado de forma independiente por Jakub Żoczek de Securitum y durante una auditoría de seguridad de terceros
- Eludir la sanitización de KSES en atributos de bloque para usuarios con privilegios bajos; descubierto durante una auditoría de seguridad de terceros.
- Un problema de recorrido de ruta a través de archivos de traducción; informado de forma independiente por Ramuel Gall y durante una auditoría de seguridad de un tercero”.
El problema surge de la primera solución de seguridad, la que afecta a los códigos cortos en los temas de bloque, que está causando los problemas.
Un shortcode es una sola línea de código que actúa como sustituto o marcador de posición para el código que proporciona funcionalidad como un formulario de contacto.
Entonces, en lugar de configurar un formulario de contacto en cada página en la que aparece el formulario, uno puede simplemente poner una sola línea llamada shortcode que luego incrustará un formulario de contacto.
Desafortunadamente, se descubrió que los piratas informáticos podían ejecutar códigos abreviados dentro del contenido generado por el usuario (como en los comentarios del blog), lo que luego podría conducir a una explotación.
WordFence describe la vulnerabilidad:
“WordPress Core procesa códigos abreviados en contenido generado por el usuario en temas de bloque en versiones hasta 6.2 inclusive.
Esto podría permitir a los atacantes no autenticados ejecutar códigos abreviados mediante el envío de comentarios u otro contenido, lo que les permitiría explotar vulnerabilidades que normalmente requieren permisos de nivel de Suscriptor o Colaborador”.
WordFence continúa explicando que la vulnerabilidad es como un defecto que puede habilitar otra vulnerabilidad más grave.
La solución a la vulnerabilidad del shortcode fue eliminar por completo la funcionalidad del shortcode de las plantillas de bloques de WordPress.
La documentación oficial para la corrección de la vulnerabilidad explicó:
“Eliminar el soporte de shortcode de las plantillas de bloque”.
Alguien creó una solución para restaurar la compatibilidad con shortcodes en las plantillas de bloques de WordPress.
Pero la solución también restauró la vulnerabilidad:
“Para aquellos que desean permanecer en 6.2.1 y necesitan restaurar la compatibilidad con códigos cortos en plantillas, pueden probar esta solución.
…Pero tenga en cuenta que se eliminó el soporte para solucionar un problema de seguridad y, al restaurar el soporte de shortcode, probablemente esté recuperando el problema de seguridad”.
La desactivación del soporte de shortcode en realidad hizo que algunos sitios dejaran de funcionar, dejaran de funcionar por completo.
Por lo tanto, agregar la solución temporal hasta que se encontrara una solución más permanente tenía sentido para muchos usuarios.
Los desarrolladores de WordPress llaman a Fix “Loco” y “tonto”
Los desarrolladores de WordPress informaron su frustración con la actualización de WordPress:
Una persona escribió:
“… ¡Es absolutamente una locura para mí que los códigos abreviados hayan sido eliminados por diseño! Cada uno de los sitios FSE de nuestra agencia utiliza el bloque de código abreviado en plantillas para todo: filtros, búsqueda, ACF e integraciones de complementos. ¡¡Esto es un caos!!
La solución no parece funcionar para mí. Voy a volver a una versión anterior y espero que haya una solución”.
Otra persona publicó:
“Sí, no entiendo el odio de Gutenberg, pero al menos deberían haber rechazado algunos bloques como Shortcode que estaban eliminando gradualmente en el Editor de sitio completo.
Eso fue tonto de los desarrolladores de WP.
La gente usará las viejas formas a menos que les digas lo contrario o los guíes a cosas nuevas.
Pero como dije, lo que hubiera sido mejor es construir un puente a través de, por ejemplo, un bloque PHP oficial, o incluso escuchar lo que quieren los usuarios y los desarrolladores”.
Uno de los complementos notables que se vieron afectados fue Rank Math. La funcionalidad de migas de pan, cuando estaba presente en los temas de bloque, falló después de la actualización 6.2.1.
Una página de soporte de Rank Math contenía una solicitud de corrección de un usuario del complemento Rank Math.
El soporte de Rank Math recomendó agregar una solución alternativa. Desafortunadamente, esa solución alternativa no solo restaura la funcionalidad del shortcode, sino que también restaura la vulnerabilidad.
La actualización también bloqueó la funcionalidad del complemento Smart Slider 3.
Se abrió un hilo de soporte en la página del complemento Smart Slider 3:
“No es totalmente tu culpa, pero Automattic ha decidido extraer códigos cortos de las plantillas de bloques. … alegando un ‘problema de seguridad’ pero básicamente eliminando dos complementos que uso, incluido el tuyo.
Eso significa que su complemento solo muestra [smartslider3 slider=”6″] cuando se utiliza en una plantilla FSE. ¡Pero se muestra bien en el editor FSE!
Solo pensé que querrías saberlo, antes de que las personas confundidas que Automattic DEBERÍA haber informado comenzaran a culparte. No deberían simplemente eliminar funcionalidades como esa, es como los malos viejos tiempos de nuevo.
Ahora también tengo que averiguar cómo conectar algún formulario/código PHP para colocar listas de categorías en los cuadros de búsqueda. Grr.”
El equipo de soporte de Smart Slider 3 recomendó agregar la solución alternativa.
Otros en el hilo de soporte de WordPress.org sobre el problema encontraron soluciones. Si su sitio se ve afectado, puede ser útil leer la discusión.
Lea la página de soporte de WordPress sobre el problema de los códigos cortos
WordPress v6.2.1 rompe el bloque de código abreviado en las plantillas
Imagen destacada de Shutterstock/ViChizh