WP-CLI

Cómo verificar la integridad en WordPress usando wp cli checksum

La verificación de checksums compara los archivos de tu instalación de WordPress con las versiones originales del repositorio oficial de wordpress.org. Si algún archivo ha sido modificado — ya sea por una edición accidental, una actualización incompleta o, en el peor caso, un compromiso de seguridad — el comando lo detectará y te indicará exactamente qué archivos son diferentes.

WP-CLI ofrece comandos específicos para verificar tanto el núcleo de WordPress como los plugins instalados. Para ejecutarlos necesitas acceso SSH al servidor. Consulta la guía cómo acceder por SSH a tu hosting de Nicalia.

Referencia rápida de comandos

Comando Qué verifica
wp core verify-checksums Integridad del núcleo de WordPress (archivos del core)
wp plugin verify-checksums --all Integridad de todos los plugins instalados
wp plugin verify-checksums nombre-plugin Integridad de un plugin concreto
wp core download --force Reinstala los archivos del core (repara archivos corruptos o modificados)
wp plugin install nombre-plugin --force Reinstala un plugin desde el repositorio (repara archivos corruptos)

Verificar la integridad del núcleo de WordPress

Abre el terminal SSH y navega al directorio donde está instalado WordPress:

cd home/nombredeusuario/public_html/

A continuación ejecuta el comando de verificación del núcleo:

wp core verify-checksums

Si todos los archivos del core son correctos, verás:

Success: WordPress installation verifies against checksums.

Si algún archivo ha sido modificado, WP-CLI mostrará una advertencia indicando exactamente qué archivo difiere del original y en qué sentido (modificado, añadido o eliminado).

Verificar la integridad de los plugins

Para verificar todos los plugins instalados de una vez:

wp plugin verify-checksums --all

Para verificar un plugin concreto:

wp plugin verify-checksums nombre-del-plugin

ℹ️ Solo se pueden verificar plugins alojados en el repositorio oficial de WordPress.org. Los plugins premium o de terceros no están en el repositorio oficial y WP-CLI no puede comparar sus checksums — recibirás un aviso indicando que no hay checksums disponibles para ese plugin, lo cual es normal.

Qué hacer si la verificación devuelve errores

Archivos del núcleo modificados o corruptos

Si wp core verify-checksums detecta archivos del núcleo modificados, puedes reinstalar el core de WordPress sin afectar a tus contenidos, plugins ni temas con el siguiente comando:

wp core download --force

Si necesitas especificar la versión (para instalar la misma versión que ya tienes instalada):

wp core download --version=$(wp core version) --force

⚠️ Si los archivos modificados corresponden a wp-config.php, wp-content/ o cualquier archivo fuera de las carpetas del core (wp-admin/ y wp-includes/), esas modificaciones son esperadas — pueden ser personalizaciones legítimas o archivos de plugins y temas. El comando wp core verify-checksums solo verifica los archivos del núcleo, no los de plugins ni temas.

Archivos de plugins modificados o corruptos

Si wp plugin verify-checksums detecta archivos de un plugin modificados, reinstálalo desde el repositorio oficial:

wp plugin install nombre-del-plugin --force

Esto descarga la versión más reciente del plugin y sobreescribe todos sus archivos. Si prefieres mantener la misma versión que tenías instalada:

wp plugin install nombre-del-plugin --version=X.X.X --force

Si la reinstalación no resuelve el problema o si el plugin es premium y no está en el repositorio oficial, contacta con el desarrollador del plugin para obtener asistencia.

Interpretar la salida de error

Cuando WP-CLI detecta diferencias, el mensaje típico tiene esta forma:

Warning: File doesn't verify against checksum: wp-login.php
Error: WordPress installation doesn't verify against checksums.

El campo que sigue a «File doesn’t verify against checksum:» indica el archivo concreto que difiere. En el ejemplo, wp-login.php ha sido modificado respecto a la versión original. En un sitio comprometido, los archivos más frecuentemente modificados son wp-login.php, index.php y archivos dentro de wp-includes/.

Situaciones frecuentes

WP-CLI devuelve aviso pero el sitio funciona con normalidad

Un aviso de checksum no significa necesariamente que el sitio esté comprometido. Algunos proveedores de hosting o gestores de actualizaciones automáticas modifican archivos del core (como añadir líneas a wp-config.php o index.php). Revisa el archivo indicado para comprobar si la modificación es una personalización esperada o código sospechoso.

«Error: This does not appear to be a WordPress installation»

El directorio desde el que estás ejecutando el comando no es la raíz de WordPress. Usa el parámetro --path para indicar la ruta explícita: wp core verify-checksums --path=/home/usuario/public_html.

«Warning: Could not check X plugin checksums» para plugins premium

Es normal. WP-CLI solo puede verificar checksums de plugins alojados en el repositorio oficial de WordPress.org. Los plugins premium (WooCommerce, Elementor Pro, WPML, etc.) no están en el repositorio y no tienen checksums disponibles para comparar. Este aviso no indica que el plugin esté corrupto.

El comando tarda mucho o se queda colgado

La verificación de checksums requiere conexión a la API de wordpress.org para descargar los checksums oficiales. Si el servidor no tiene acceso a Internet saliente o la conexión es lenta, el comando puede tardar o fallar. Verifica que el servidor tiene conectividad a wordpress.org.

Preguntas frecuentes

¿Qué es la verificación de checksums en WordPress?

Es un proceso que compara los archivos de tu instalación de WordPress con las versiones originales del repositorio oficial de wordpress.org usando hashes MD5. Si algún archivo ha sido modificado (intencionalmente o por un compromiso de seguridad), el hash diferirá del original y WP-CLI lo reportará.

¿Con qué frecuencia debo ejecutar wp core verify-checksums?

Como parte de un plan de seguridad regular, se recomienda ejecutarlo al menos una vez al mes o después de cualquier incidente de seguridad sospechoso. También es buena práctica ejecutarlo después de actualizaciones del core si sospechas que algo no fue bien durante el proceso.

¿wp core verify-checksums detecta malware en WordPress?

Detecta archivos del core que han sido modificados respecto al original, lo que puede ser una señal de malware o inyección de código. Sin embargo, no es un escáner de malware completo — no analiza plugins, temas ni archivos que no pertenecen al core de WordPress. Para un análisis más completo, usa herramientas especializadas como Wordfence o Sucuri.

¿Qué diferencia hay entre wp core verify-checksums y wp core update?

wp core verify-checksums solo compara los archivos con las versiones originales y reporta diferencias — no modifica nada. wp core update actualiza WordPress a la versión más reciente, lo que también sobreescribe los archivos del core y restaura cualquier modificación. Si solo quieres restaurar archivos corruptos sin actualizar la versión, usa wp core download --force.

¿Puedo verificar los checksums de temas con WP-CLI?

Sí, con el comando wp theme verify-checksums --all o wp theme verify-checksums nombre-del-tema. Al igual que con los plugins, solo funciona para temas alojados en el repositorio oficial de WordPress.org — los temas premium no tienen checksums disponibles.