La importancia del escaneo regular de malware
Guía SEO detallada que explica la importancia del escaneo regular de malware. Conozca los mejores métodos y configuraciones.
Por qué el malware web pasa desapercibido
Mucha gente imagina el malware como algo que tumba una web o la llena de avisos. En la práctica, las webs comprometidas suelen estar diseñadas para pasar inadvertidas. El código inyectado puede mostrar enlaces de spam solo a los rastreadores de los buscadores, redirigir solo a los visitantes que llegan desde los resultados de búsqueda o activarse únicamente en móviles. El propietario inicia sesión, ve una página de inicio normal y no tiene ni idea de que algo va mal.
Ese silencio es lo que hace tan importante el escaneo periódico. Cuanto más dura una infección, más daño puede causar: visitantes expuestos a scripts maliciosos, páginas de spam indexadas bajo tu dominio, correo de tu servidor marcado como spam y avisos de navegadores o buscadores que pueden tardar en desaparecer incluso después de la limpieza. Escanear convierte un problema desconocido y abierto en uno conocido y solucionable.
Inspect Any Domain and Web Hosting Instantly
Inspect the infrastructure of any domain or website in seconds using TLDix WHOIS Domain, Hosting Lookup and Domain Oracle (AI).
Cómo suele ser el malware web
El malware en servidores web aparece en unas pocas formas recurrentes. Conocerlas te ayuda a elegir herramientas e interpretar resultados.
| Tipo | Qué hace | Dónde se esconde |
|---|---|---|
| Puertas traseras / web shells | Dan a un atacante acceso remoto para ejecutar comandos o subir archivos | Archivos PHP o scripts de aspecto inocente, carpetas de subidas, directorios de temas o plugins |
| Spam SEO | Inyecta enlaces ocultos o genera páginas de spam para manipular el posicionamiento | Contenido de la base de datos, plantillas, reglas de reescritura |
| Redirecciones maliciosas | Envía a parte de los visitantes a sitios de estafa, phishing o malware | .htaccess o configuración del servidor, JavaScript inyectado, opciones de la base de datos |
| Skimmers | Capturan datos de formularios o de pago en el navegador | Plantillas del proceso de pago, scripts de terceros incluidos |
| Criptomineros | Usan la CPU del visitante o del servidor para minar criptomonedas | Scripts inyectados, procesos fraudulentos, tareas cron |
| Kits de phishing | Alojan páginas de acceso falsas de otras marcas | Carpetas nuevas en lo más profundo de la raíz de documentos |
Muchas infecciones combinan varios de estos tipos. Una puerta trasera suele ser la primera pieza, utilizada para colocar todo lo demás y para volver a infectar la web tras una limpieza parcial.
Escaneo externo frente a escaneo en el servidor
Hay dos enfoques generales y cada uno detecta cosas distintas.
Escaneo externo (remoto)
Un escáner externo solicita tus páginas como lo haría un visitante o un rastreador e inspecciona lo que recibe: scripts inyectados, URL maliciosas conocidas, palabras clave de spam, redirecciones inesperadas y presencia en listas de bloqueo. No necesita acceso al servidor, así que es fácil de configurar y útil para comprobar lo que ve el mundo exterior.
Sus límites son igual de claros. No puede ver archivos que no estén enlazados, puertas traseras inactivas, tareas cron maliciosas ni código que solo se activa en determinadas condiciones.
Escaneo en el servidor
Un escáner en el servidor inspecciona directamente el sistema de archivos y, a veces, la base de datos. Compara los archivos con firmas de malware conocidas, marca patrones sospechosos como el código ofuscado y puede comprobar la integridad frente a las versiones originales de un CMS o plugin.
Es más exhaustivo, pero requiere acceso y algo de cuidado: los patrones demasiado agresivos generan falsos positivos, y un escáner que se ejecuta en un servidor ya comprometido podría estar manipulado. Lo ideal es usar ambos enfoques a la vez.
Crear una rutina de escaneo práctica
La frecuencia de escaneo depende de la complejidad y el riesgo del sitio. Una web corporativa con pocos cambios necesita menos atención que una tienda online con decenas de plugins. El calendario siguiente es un punto de partida razonable para adaptar, no una norma fija:
| Comprobación | Frecuencia sugerida |
|---|---|
| Escaneo externo y comprobación de listas de bloqueo | Diaria en webs de empresa, semanal en webs de bajo riesgo |
| Escaneo de archivos en el servidor | De diaria a semanal, y además tras cada cambio |
| Comparación de integridad con versiones fiables | Semanal y tras las actualizaciones |
| Revisión de la base de datos en busca de scripts o enlaces inyectados | De semanal a mensual |
| Revisión de usuarios, tareas cron y tareas programadas | Mensual |
Además, haz un escaneo extraordinario después de cualquiera de estos eventos:
- Instalar o actualizar temas, plugins o extensiones, sobre todo de fuentes desconocidas.
- La publicación de una vulnerabilidad en software que usas.
- Cambios de tráfico sin explicación, páginas nuevas que aparecen en los resultados de búsqueda o avisos de redirecciones.
- La salida de alguien del equipo o la sospecha de una filtración de credenciales.
- Migraciones de hosting o restauraciones desde una copia de seguridad.
Haz que los resultados sirvan para actuar
Un calendario solo ayuda si alguien lee los resultados. Decide de antemano quién recibe los informes de escaneo, en cuánto tiempo debe revisarlos y qué se considera urgente. Envía las alertas a una dirección compartida vigilada o a una cola de tickets en lugar de al buzón de una sola persona, para que las vacaciones y los cambios de plantilla no creen puntos ciegos. Lleva un registro breve de cada hallazgo y su resolución; con el tiempo mostrará qué plugins, carpetas o procesos causan problemas repetidos.
También ayuda registrar una referencia tras confirmar un estado limpio: la lista de usuarios administradores, las entradas de cron, el número de archivos por directorio y las sumas de comprobación de los archivos principales. Comparar con esa referencia hace que los cambios inesperados destaquen, aunque no coincida ninguna firma. Ajusta las reglas que generan ruido en lugar de ignorarlas, porque un informe lleno de falsos positivos enseña enseguida a la gente a saltárselo.
Comprobaciones útiles desde la línea de comandos
Si tienes acceso por shell, unos cuantos comandos sencillos complementan a los escáneres especializados. No demuestran que un sitio esté limpio, pero sacan a la luz cambios que merece la pena investigar.
# Files modified in the last 3 days under the web root
find /var/www/example -type f -mtime -3 -print
# PHP files inside upload directories (usually should not exist)
find /var/www/example/uploads -type f -name "*.php"
# Common obfuscation patterns (expect some false positives)
grep -rlE "eval[[:space:]]*[(]|base64_decode[[:space:]]*[(]|gzinflate[[:space:]]*[(]" /var/www/example
# Scheduled tasks for the web user
crontab -l -u www-data
Herramientas de código abierto como ClamAV, junto con conjuntos de firmas orientados a archivos web, pueden automatizar el escaneo por firmas en servidores Linux. Muchos CMS ofrecen además plugins de seguridad con comprobaciones de integridad; en WordPress, por ejemplo, la herramienta oficial de línea de comandos puede verificar los archivos principales frente a sus sumas de comprobación:
wp core verify-checksums
wp plugin verify-checksums --all
Trata cualquier coincidencia como una pista, no como un veredicto. El código legítimo a veces usa funciones como la decodificación base64, así que revisa los archivos marcados antes de borrar nada.
Qué hacer cuando un escaneo encuentra algo
Una detección puede generar estrés, pero una respuesta tranquila y ordenada funciona mejor que borrar archivos al azar.
- Conserva las pruebas. Haz una copia de los archivos afectados, los registros y la base de datos antes de cambiar nada. Te ayudará a averiguar cómo entró el atacante.
- Contén el problema. Pon la web en modo mantenimiento o restringe el acceso si los visitantes están sufriendo daños.
- Cambia las credenciales. Cambia contraseñas y claves del hosting, FTP/SFTP, base de datos, administradores del CMS, tokens de API y, si existe cualquier riesgo, de tus cuentas del registrador y del DNS.
- Limpia a partir de fuentes fiables. Sustituye los archivos principales, temas y plugins por copias nuevas de la fuente oficial, o restaura una copia de seguridad anterior a la infección, y elimina archivos y administradores desconocidos.
- Encuentra y corrige el punto de entrada. El software desactualizado, un plugin vulnerable, contraseñas débiles o una configuración expuesta son causas habituales. Si no lo corriges, es probable que vuelva a infectarse.
- Vuelve a escanear y solicita revisiones. Escanea de nuevo desde dentro y desde fuera. Si un buscador o navegador marcó el sitio, usa su proceso de revisión cuando estés seguro de que está limpio.
Si la web gestiona pagos o datos personales, consulta con un asesor cualificado tus obligaciones de notificación de brechas de seguridad. Este artículo no constituye asesoramiento legal.
Reducir de entrada la probabilidad de infección
El escaneo detecta problemas; el refuerzo reduce cuántos hay que detectar. Lo básico es bien conocido, pero a menudo se omite:
- Mantén actualizados el CMS, los plugins, los temas y el software del servidor, y elimina todo lo que no uses.
- Usa contraseñas únicas y autenticación multifactor en todas las cuentas de administración y de hosting.
- Da a las cuentas y a los permisos de archivo solo el acceso que necesitan y, cuando sea posible, desactiva la ejecución de PHP en los directorios de subidas.
- Sirve la web solo por HTTPS, idealmente con HSTS.
- Mantén copias de seguridad periódicas, probadas y fuera del servidor para poder restaurar rápidamente una versión limpia.
La seguridad de las cuentas también importa: un atacante que se hace con tu cuenta del registrador puede redirigir todo el dominio sin tocar el servidor. Consulta la guía para proteger la cuenta de administración de tu registrador para esa parte.
Por último, documenta estas medidas de refuerzo junto a tu rutina de escaneo para que los nuevos miembros del equipo hereden ambas, en lugar de depender de lo que recuerde una sola persona sobre cómo se protegió la web.
Vigilar todo el conjunto
El escaneo de malware es una parte de la higiene operativa, junto con las renovaciones, los certificados y el hosting. Si gestionas varias webs, mantén un único inventario de cada dominio, su proveedor y sus fechas de renovación para que nada se te escape. El seguimiento de hosting de TLDix puede guardar ese inventario y enviarte recordatorios, y la consulta de hosting te ayuda a confirmar dónde se ejecuta realmente una web antigua o heredada antes de empezar a escanearla.