{"id":6796,"date":"2024-05-03T12:10:42","date_gmt":"2024-05-03T10:10:42","guid":{"rendered":"https:\/\/www.nicalia.com\/nicapedia\/guias\/wordpress\/configuracion-de-wordpress\/wp-cli\/verificacion-de-integridad-en-wordpress-usando-wp-cli-checksum\/"},"modified":"2026-06-11T11:11:30","modified_gmt":"2026-06-11T09:11:30","slug":"verificacion-de-integridad-en-wordpress-usando-wp-cli-checksum","status":"publish","type":"docs","link":"https:\/\/www.nicalia.com\/nicapedia\/verificacion-de-integridad-en-wordpress-usando-wp-cli-checksum\/","title":{"rendered":"C\u00f3mo verificar la integridad en WordPress usando wp cli checksum"},"content":{"rendered":"<p>La <strong>verificaci\u00f3n de checksums<\/strong> compara los archivos de tu instalaci\u00f3n de WordPress con las versiones originales del repositorio oficial de wordpress.org. Si alg\u00fan archivo ha sido modificado \u2014 ya sea por una edici\u00f3n accidental, una actualizaci\u00f3n incompleta o, en el peor caso, un compromiso de seguridad \u2014 el comando lo detectar\u00e1 y te indicar\u00e1 exactamente qu\u00e9 archivos son diferentes.<\/p>\n<p>WP-CLI ofrece comandos espec\u00edficos para verificar tanto el <strong>n\u00facleo de WordPress<\/strong> como los <strong>plugins<\/strong> instalados. Para ejecutarlos necesitas acceso SSH al servidor. Consulta la gu\u00eda <a href=\"https:\/\/www.nicalia.com\/nicapedia\/acceder-mediante-ssh-a-un-usuario\/\">c\u00f3mo acceder por SSH a tu hosting de Nicalia<\/a>.<\/p>\n<p><!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     H2: REFERENCIA R\u00c1PIDA\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 --><\/p>\n<h2>Referencia r\u00e1pida de comandos<\/h2>\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Qu\u00e9 verifica<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>wp core verify-checksums<\/code><\/td>\n<td>Integridad del n\u00facleo de WordPress (archivos del core)<\/td>\n<\/tr>\n<tr>\n<td><code>wp plugin verify-checksums --all<\/code><\/td>\n<td>Integridad de todos los plugins instalados<\/td>\n<\/tr>\n<tr>\n<td><code>wp plugin verify-checksums nombre-plugin<\/code><\/td>\n<td>Integridad de un plugin concreto<\/td>\n<\/tr>\n<tr>\n<td><code>wp core download --force<\/code><\/td>\n<td>Reinstala los archivos del core (repara archivos corruptos o modificados)<\/td>\n<\/tr>\n<tr>\n<td><code>wp plugin install nombre-plugin --force<\/code><\/td>\n<td>Reinstala un plugin desde el repositorio (repara archivos corruptos)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     H2: VERIFICAR N\u00daCLEO\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 --><\/p>\n<h2>Verificar la integridad del n\u00facleo de WordPress<\/h2>\n<p>Abre el terminal SSH y navega al directorio donde est\u00e1 instalado WordPress:<\/p>\n<pre><code>cd home\/nombredeusuario\/public_html\/<\/code><\/pre>\n<p>A continuaci\u00f3n ejecuta el comando de verificaci\u00f3n del n\u00facleo:<\/p>\n<pre><code>wp core verify-checksums<\/code><\/pre>\n<p>Si todos los archivos del core son correctos, ver\u00e1s:<\/p>\n<pre><code>Success: WordPress installation verifies against checksums.<\/code><\/pre>\n<p>Si alg\u00fan archivo ha sido modificado, WP-CLI mostrar\u00e1 una advertencia indicando exactamente qu\u00e9 archivo difiere del original y en qu\u00e9 sentido (modificado, a\u00f1adido o eliminado).<\/p>\n<p><!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     H2: VERIFICAR PLUGINS\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 --><\/p>\n<h2>Verificar la integridad de los plugins<\/h2>\n<p>Para verificar todos los plugins instalados de una vez:<\/p>\n<pre><code>wp plugin verify-checksums --all<\/code><\/pre>\n<p>Para verificar un plugin concreto:<\/p>\n<pre><code>wp plugin verify-checksums nombre-del-plugin<\/code><\/pre>\n<p>\u2139\ufe0f <strong>Solo se pueden verificar plugins alojados en el repositorio oficial de WordPress.org.<\/strong> Los plugins premium o de terceros no est\u00e1n en el repositorio oficial y WP-CLI no puede comparar sus checksums \u2014 recibir\u00e1s un aviso indicando que no hay checksums disponibles para ese plugin, lo cual es normal.<\/p>\n<p><!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     H2: QU\u00c9 HACER CON ERRORES\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 --><\/p>\n<h2>Qu\u00e9 hacer si la verificaci\u00f3n devuelve errores<\/h2>\n<h3>Archivos del n\u00facleo modificados o corruptos<\/h3>\n<p>Si <code>wp core verify-checksums<\/code> detecta archivos del n\u00facleo modificados, puedes reinstalar el core de WordPress sin afectar a tus contenidos, plugins ni temas con el siguiente comando:<\/p>\n<pre><code>wp core download --force<\/code><\/pre>\n<p>Si necesitas especificar la versi\u00f3n (para instalar la misma versi\u00f3n que ya tienes instalada):<\/p>\n<pre><code>wp core download --version=$(wp core version) --force<\/code><\/pre>\n<p>\u26a0\ufe0f <strong>Si los archivos modificados corresponden a wp-config.php, wp-content\/ o cualquier archivo fuera de las carpetas del core<\/strong> (wp-admin\/ y wp-includes\/), esas modificaciones son esperadas \u2014 pueden ser personalizaciones leg\u00edtimas o archivos de plugins y temas. El comando <code>wp core verify-checksums<\/code> solo verifica los archivos del n\u00facleo, no los de plugins ni temas.<\/p>\n<h3>Archivos de plugins modificados o corruptos<\/h3>\n<p>Si <code>wp plugin verify-checksums<\/code> detecta archivos de un plugin modificados, reinst\u00e1lalo desde el repositorio oficial:<\/p>\n<pre><code>wp plugin install nombre-del-plugin --force<\/code><\/pre>\n<p>Esto descarga la versi\u00f3n m\u00e1s reciente del plugin y sobreescribe todos sus archivos. Si prefieres mantener la misma versi\u00f3n que ten\u00edas instalada:<\/p>\n<pre><code>wp plugin install nombre-del-plugin --version=X.X.X --force<\/code><\/pre>\n<p>Si la reinstalaci\u00f3n no resuelve el problema o si el plugin es premium y no est\u00e1 en el repositorio oficial, contacta con el desarrollador del plugin para obtener asistencia.<\/p>\n<h3>Interpretar la salida de error<\/h3>\n<p>Cuando WP-CLI detecta diferencias, el mensaje t\u00edpico tiene esta forma:<\/p>\n<pre><code>Warning: File doesn't verify against checksum: wp-login.php\nError: WordPress installation doesn't verify against checksums.<\/code><\/pre>\n<p>El campo que sigue a \u00abFile doesn&#8217;t verify against checksum:\u00bb indica el archivo concreto que difiere. En el ejemplo, <code>wp-login.php<\/code> ha sido modificado respecto a la versi\u00f3n original. En un sitio comprometido, los archivos m\u00e1s frecuentemente modificados son <code>wp-login.php<\/code>, <code>index.php<\/code> y archivos dentro de <code>wp-includes\/<\/code>.<\/p>\n<p><!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     H2: ERRORES COMUNES\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 --><\/p>\n<h2>Situaciones frecuentes<\/h2>\n<h3>WP-CLI devuelve aviso pero el sitio funciona con normalidad<\/h3>\n<p>Un aviso de checksum no significa necesariamente que el sitio est\u00e9 comprometido. Algunos proveedores de hosting o gestores de actualizaciones autom\u00e1ticas modifican archivos del core (como a\u00f1adir l\u00edneas a <code>wp-config.php<\/code> o <code>index.php<\/code>). Revisa el archivo indicado para comprobar si la modificaci\u00f3n es una personalizaci\u00f3n esperada o c\u00f3digo sospechoso.<\/p>\n<h3>\u00abError: This does not appear to be a WordPress installation\u00bb<\/h3>\n<p>El directorio desde el que est\u00e1s ejecutando el comando no es la ra\u00edz de WordPress. Usa el par\u00e1metro <code>--path<\/code> para indicar la ruta expl\u00edcita: <code>wp core verify-checksums --path=\/home\/usuario\/public_html<\/code>.<\/p>\n<h3>\u00abWarning: Could not check X plugin checksums\u00bb para plugins premium<\/h3>\n<p>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\u00e1n en el repositorio y no tienen checksums disponibles para comparar. Este aviso no indica que el plugin est\u00e9 corrupto.<\/p>\n<h3>El comando tarda mucho o se queda colgado<\/h3>\n<p>La verificaci\u00f3n de checksums requiere conexi\u00f3n a la API de wordpress.org para descargar los checksums oficiales. Si el servidor no tiene acceso a Internet saliente o la conexi\u00f3n es lenta, el comando puede tardar o fallar. Verifica que el servidor tiene conectividad a wordpress.org.<\/p>\n<p><!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     H2: FAQ\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 --><\/p>\n<h2>Preguntas frecuentes<\/h2>\n<h3>\u00bfQu\u00e9 es la verificaci\u00f3n de checksums en WordPress?<\/h3>\n<p>Es un proceso que compara los archivos de tu instalaci\u00f3n de WordPress con las versiones originales del repositorio oficial de wordpress.org usando hashes MD5. Si alg\u00fan archivo ha sido modificado (intencionalmente o por un compromiso de seguridad), el hash diferir\u00e1 del original y WP-CLI lo reportar\u00e1.<\/p>\n<h3>\u00bfCon qu\u00e9 frecuencia debo ejecutar wp core verify-checksums?<\/h3>\n<p>Como parte de un plan de seguridad regular, se recomienda ejecutarlo al menos una vez al mes o despu\u00e9s de cualquier incidente de seguridad sospechoso. Tambi\u00e9n es buena pr\u00e1ctica ejecutarlo despu\u00e9s de actualizaciones del core si sospechas que algo no fue bien durante el proceso.<\/p>\n<h3>\u00bfwp core verify-checksums detecta malware en WordPress?<\/h3>\n<p>Detecta archivos del core que han sido modificados respecto al original, lo que puede ser una se\u00f1al de malware o inyecci\u00f3n de c\u00f3digo. Sin embargo, no es un esc\u00e1ner de malware completo \u2014 no analiza plugins, temas ni archivos que no pertenecen al core de WordPress. Para un an\u00e1lisis m\u00e1s completo, usa herramientas especializadas como Wordfence o Sucuri.<\/p>\n<h3>\u00bfQu\u00e9 diferencia hay entre wp core verify-checksums y wp core update?<\/h3>\n<p><code>wp core verify-checksums<\/code> solo compara los archivos con las versiones originales y reporta diferencias \u2014 no modifica nada. <code>wp core update<\/code> actualiza WordPress a la versi\u00f3n m\u00e1s reciente, lo que tambi\u00e9n sobreescribe los archivos del core y restaura cualquier modificaci\u00f3n. Si solo quieres restaurar archivos corruptos sin actualizar la versi\u00f3n, usa <code>wp core download --force<\/code>.<\/p>\n<h3>\u00bfPuedo verificar los checksums de temas con WP-CLI?<\/h3>\n<p>S\u00ed, con el comando <code>wp theme verify-checksums --all<\/code> o <code>wp theme verify-checksums nombre-del-tema<\/code>. Al igual que con los plugins, solo funciona para temas alojados en el repositorio oficial de WordPress.org \u2014 los temas premium no tienen checksums disponibles.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La verificaci\u00f3n de checksums compara los archivos de tu instalaci\u00f3n de WordPress con las versiones originales del repositorio oficial de wordpress.org. Si alg\u00fan archivo ha sido modificado \u2014 ya sea por una edici\u00f3n accidental, una actualizaci\u00f3n incompleta o, en el peor caso, un compromiso de seguridad \u2014 el comando lo detectar\u00e1 y te indicar\u00e1 exactamente [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":6730,"menu_order":26,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"doc_badge":[],"class_list":["post-6796","docs","type-docs","status-publish","hentry","no-post-thumbnail"],"acf":[],"author_avatar":"https:\/\/secure.gravatar.com\/avatar\/4471485c4e49f46218d6b6d125f80f4cde1f86f045fd896202eefddaf4d4510a?s=96&d=mm&r=g","author_name":"Francisco Garvi","_links":{"self":[{"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/docs\/6796","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/comments?post=6796"}],"version-history":[{"count":5,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/docs\/6796\/revisions"}],"predecessor-version":[{"id":10115,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/docs\/6796\/revisions\/10115"}],"up":[{"embeddable":true,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/docs\/6730"}],"wp:attachment":[{"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/media?parent=6796"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/doc_tag?post=6796"},{"taxonomy":"doc_badge","embeddable":true,"href":"https:\/\/www.nicalia.com\/nicapedia\/wp-json\/wp\/v2\/doc_badge?post=6796"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}