Como bien sabéis, Wordfence es un plugin para WordPress de seguridad que, además de ser un extraordinario firewall, nos protege contra ataques por fuerza bruta, nos escanea nuestra instalación en búsqueda de malwares y mucho más.

Pues bien, últimamente hemos detectado en algunas de nuestras instalaciones que Wordfence nos genera una serie de errores en el registro de errores del servidor debido a una serie de consultas SQL que no encuentran la tabla wp_wfNet404s que forma parte de su instalación.

El motivo de encontrar esta tabla concreta puede ser debido a que realmente no existe en la base de datos, los motivos pueden ser muy variados: fallo de creación durante el proceso de instalación, borrado accidental… Pero lo curioso del asunto es que también nos hemos encontrado con estos errores aún existiendo la tabla wp_wfNet404s en la base de datos y aún estando ésta en aparente perfecto estado.

Solución

Para acabar definitivamente con estos líneas de error en nuestro registro de errores vamos a lanzar dos consultas SQL, una para eliminar la tabla en caso de que exista, y otra para volver a crearla de forma totalmente limpia y funcional.

La consulta SQL que usamos en APG es concretamente esta:

DROP TABLE IF EXISTS wp_wfNet404s;

CREATE TABLE wp_wfNet404s (
sig binary(16) NOT NULL,
ctime int(10) unsigned NOT NULL,
URI varchar(1000) NOT NULL,
PRIMARY KEY (sig),
KEY k1 (ctime)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

Para ejecutarla puedes usar phpMyAdmin, por ejemplo, y te aseguramos que una vez que la hayas usado desaparecerán de una vez por todas esas molestas líneas de error.

Lo que no podemos asegurarte es que sea para siempre, ya que es posible que pasado el tiempo Wordfence vuelva a hacer de las suyas y vuelva a mostrar estos mensajes de error. En tal caso tendréis que volver a ejecutar la consulta SQL para volver a restaurar la tabla wp_wfNet404s a su estado original.

Esperamos que este sencillo truco os ayude a solucionar este error silencioso que nos genera Wordfence.