WP Cerber Security 9.9.5
English version: WP Cerber Security 9.9.5
Esta actualización se centra en reducir la distancia entre un evento de seguridad y la configuración que lo originó. Hemos rediseñado la forma en que WP Cerber vincula el registro de actividad con la configuración exacta que originó una decisión, corregido dos defectos en la interfaz de administración y reforzado el método de escape de URL en el área de administración. Además, internamente, hemos comenzado a almacenar los anuncios de administración como datos estructurados y validados, en lugar de HTML renderizado.
Aspectos destacados
Los enlaces en las explicaciones del registro de actividad ahora te llevan al lugar correcto. Cuando la decisión de WP Cerber se basó en una política de roles, el enlace abre la pestaña de rol correcta y resalta el campo exacto, en lugar de redirigirte a una página de configuración para que lo busques tú mismo.
Al seguir dicho enlace, la configuración de destino se centra en la ventana gráfica, por lo que la barra de administración de WordPress ya no la cubre y se pueden ver las configuraciones adyacentes para tener contexto.
La sección de Transporte de correo ya no muestra código HTML sin formato donde debería haber un enlace.
Experiencia administrativa
Ahora es posible acceder a la configuración de la política de roles. Un enlace creado para una configuración solía contener un único valor en el fragmento de URL con dos significados contradictorios: el campo a resaltar o la pestaña a abrir. Una configuración de política de roles nunca podía resaltarse, ya que el espacio que necesitaba su campo ya estaba ocupado por el puntero de la pestaña. El fragmento ahora contiene dos declaraciones independientes, cada una de las cuales nombra una cosa y puede utilizarse sin la otra. En la práctica, un enlace explicativo [Gestionar] como el que se muestra a continuación se convierte en un acceso directo a la pestaña de rol correspondiente con el campo necesario resaltado.
Los enlaces de desplazamiento y flash centran la configuración. La navegación nativa de fragmentos alinea el destino con la parte superior de la ventana del navegador, que es exactamente donde se encuentra la barra de administración. Ahora centramos la fila de configuración contenedora cuando la página está lista y de nuevo después de que la ventana termine de cargarse. La segunda pasada corrige el realineamiento nativo y los cambios de diseño causados por el contenido de carga tardía. Los contenedores de campos fuera de las filas de configuración se mantienen sin cambios, y cuando el navegador informa una preferencia prefers-reduced-motion , el desplazamiento se realiza sin animación.
Cambios de seguridad
Se ha implementado un filtro de escape de URL más estricto para la salida de administración. Se ha reemplazado el filtro y la pila de expresiones regulares dentro de crb_escape_url() con una comprobación explícita de la forma de la URL. Ahora, la función auxiliar acepta URL relativas a la raíz que comienzan con una sola barra diagonal, además de las formas HTTP(S), FTP(S) y mailto que ya admitía. Las URL relativas al protocolo, las variantes de ruta de red con barra invertida, los esquemas no compatibles y otras formas relativas siguen siendo rechazadas.
También dejamos de eliminar las comillas, los corchetes angulares y las comillas invertidas de las URL aceptadas. Eliminar el antiguo sanitizador tiene una ventaja evidente: las rutas de URL que no son ASCII se conservan intactas. El UTF-8 no válido ya no convierte el resultado escapado en un valor de atributo vacío, porque el mecanismo de escape ahora sustituye esos bytes.
Mejoras en la fiabilidad
Los anuncios de administración se almacenan como datos estructurados, no como marcado. Hemos introducido UI Spec, una representación serializada y estricta de la fábrica de interfaz de usuario interna de WP Cerber. En lugar de conservar el HTML renderizado, el plugin ahora almacena un documento validado y con versiones que se recombina en un árbol de interfaz de usuario en el momento de la renderización y se pasa al renderizador activo.
Corrección de errores
Solo funcionó el primer enlace de configuración en el registro de actividad. En la página del registro de actividad, cuando se mostraban varias explicaciones para eventos que involucraban al mismo usuario, y la regla que sustentaba la decisión de WP Cerber se basaba en roles, solo el primer enlace se desplazaba hasta su destino y lo resaltaba. Todos los enlaces posteriores abrían la página de configuración basada en roles sin acceder a la configuración.
HTML sin formato en la sección de Transporte de correo. En lugar de mostrar un enlace, la sección mostraba el marcado literal del enlace «Disponible en la versión profesional de WP Cerber». El aviso se había añadido como un ancla HTML a la descripción de la sección, y el renderizador de configuración escapa las descripciones de las secciones antes de su salida. Ahora, las descripciones de las secciones permanecen como texto plano, y el requisito PRO se representa por separado como un enlace de sección estructurado renderizado a través de UI Factory. Se conserva el escape de caracteres para las descripciones y los enlaces a nivel de sección se renderizan correctamente.
Resumen
Con esta actualización, el proceso de triaje es más rápido. El registro de actividad ahora muestra directamente la configuración que motivó la decisión, centrada y resaltada en pantalla. La sección de Transporte de correo muestra correctamente su aviso PRO, y los enlaces de administración se procesan con reglas más estrictas. Los anuncios se almacenan como estructuras validadas, por lo que los datos incorrectos se detectan de forma visible en lugar de pasar desapercibidos.
Compatibilidad
Esta versión ha sido probada con PHP 7.4.33, 8.0.30, 8.1.34, 8.2.33, 8.3.33, 8.4.24 y 8.5.9, y con WordPress 5.8.14, 6.6.6, 6.7.6, 6.8.7, 6.9.6 y 7.1.
