Según la documentación de seguridad de WordPress, los ataques más habituales son de dos tipos: los que aprovechan plugins o software desfasado y los que prueban contraseñas en masa. Contra el primero, la defensa es actualizar. Es también lo que más miedo da, porque a veces algo se rompe. Esta guía es para perderle el miedo.
Qué se actualiza solo
WordPress se actualiza en segundo plano desde la versión 3.7, pero no todo ni siempre:
- Versiones menores del núcleo (las de mantenimiento y seguridad, como de la 6.7.1 a la 6.7.2): se instalan solas por defecto.
- Traducciones: también, por defecto.
- Versiones mayores del núcleo (de la 6.7 a la 6.8): depende. Las instalaciones nuevas desde WordPress 5.6 las reciben solas; las que ya existían antes, no, salvo que lo actives en Escritorio → Actualizaciones.
- Plugins y temas: desde WordPress 5.5 puedes activar la actualización automática de cada uno en la lista de plugins (enlace «Activar actualizaciones automáticas»), y en bloque con las acciones masivas. Vienen desactivadas. WordPress sólo los actualiza por su cuenta en casos especiales, como un parche de seguridad crítico.
Las automáticas de plugins y temas se lanzan dos veces al día y WordPress avisa por correo de lo que ha actualizado y de lo que ha fallado. Si esas opciones no te aparecen, lo más probable es que las haya quitado tu hosting o un plugin.
Si quien te mantiene la web ha tocado wp-config.php, puede que haya cambiado
este comportamiento: WP_AUTO_UPDATE_CORE decide qué versiones del núcleo se
actualizan solas (ninguna, sólo menores o todas) y AUTOMATIC_UPDATER_DISABLED
las apaga todas. La documentación de WordPress desaconseja apagarlas salvo
casos concretos, como una web a medida o un hosting que ya se encarga de
actualizar.
Antes de actualizar
- Haz una copia de seguridad, y que sea completa. Una copia de WordPress son dos cosas: los ficheros y la base de datos. Descargar la carpeta de la web no guarda la base de datos. La documentación recomienda copia semanal en webs con poco movimiento, diaria en las muy activas y siempre antes de actualizar.
- Comprueba que la copia sirve. Una copia que nunca se ha restaurado es una esperanza, no una copia.
- Mira la compatibilidad. Antes de una versión mayor del núcleo, comprueba que tus plugins y tu tema la admiten. No hay un orden que valga para todas las webs: a veces conviene actualizar antes el plugin y a veces WordPress.
- Elige el momento. Mejor con poco tráfico y con tiempo para revisar después. Un viernes por la tarde no es buena idea.
- Si tienes un entorno de pruebas, actualiza primero ahí.
Mientras actualiza
WordPress pone la web un momento en modo mantenimiento, con un aviso para las
visitas, y la saca sola al terminar. Si se queda atascada en ese aviso después
de un fallo, se arregla borrando el fichero .maintenance de la raíz de la
web (por FTP o desde el gestor de archivos del hosting), siempre que estés
seguro de que la actualización ya no está en marcha.
Cualquier cambio hecho a mano en los ficheros del núcleo de WordPress se pierde al actualizar. Si alguien los tocó, mejor saberlo antes.
Si algo se rompe
WordPress tiene varias redes de seguridad:
- Modo de recuperación (desde la 5.2). Si un plugin o un tema provoca un error fatal, la web no se queda en blanco: las visitas ven un aviso de dificultades técnicas y el administrador recibe un correo con el error y un enlace para entrar en modo de recuperación. Ahí el plugin o tema culpable queda en pausa sólo para ti, para que puedas desactivarlo o arreglarlo. Ojo: el resto de la gente sigue viendo la web con el problema hasta que lo resuelvas.
- Vuelta atrás de actualizaciones fallidas (desde la 6.3). Si falla una actualización manual de un plugin o un tema (una descarga rota, un error al copiar ficheros), WordPress deja la versión que había.
- Vuelta atrás de actualizaciones automáticas (desde la 6.6). Si la actualización automática de un plugin provoca un error fatal, WordPress lo detecta y vuelve a la versión anterior.
Si nada de eso te salva, el método clásico: desactiva los plugins y reactívalos de uno en uno hasta dar con el que falla. Y si no hay forma, restaura la copia que hiciste antes de empezar.
Si llevas tiempo sin actualizar
Se puede saltar directamente a la última versión si tienes buenas copias. Si el salto cruza más de dos versiones mayores, la documentación recomienda ir por pasos. Y no olvides PHP: una web muy desactualizada suele estar también en una versión de PHP sin soporte (lo explicamos en Qué versión de PHP usa tu web).
Los avisos de plugins abandonados
En el directorio oficial de plugins hay dos avisos que conviene conocer:
- Aviso amarillo: el plugin no se ha probado con las tres últimas versiones mayores de WordPress. Puede que ya no lo mantenga nadie.
- Aviso rojo: el plugin está cerrado y no se puede descargar. Se cierra por cinco motivos: lo pide el autor, incumple las normas del directorio, tiene problemas de licencia o de marca, su función ha pasado al núcleo de WordPress o tiene un problema de seguridad.
WordPress no dice qué hacer con un plugin cerrado que ya tienes instalado. Lo que nosotros recomendamos: averigua el motivo del cierre (el aviso lo explica pasados 60 días) y, si no es algo inocuo, busca una alternativa mantenida. Un plugin que nadie actualiza no recibirá la corrección del próximo fallo que se descubra.
Y después
Actualizar es una rutina, no un evento. Si quieres saber cuándo sale algo que te toca, en Mi stack puedes ver de un vistazo las vulnerabilidades de lo que usas, y en Comprueba si te afecta, si tu versión concreta de WordPress o de un plugin está afectada.