Uno de los principales problemas con la tecnología son los frecuentes fallos en la seguridad que experimentamos; mucha información se roba diariamente y se utiliza para robar más información, enviar mensajes de correo no deseado, abrir puertas traseras a los sistemas y, a veces, incluso dañar nuestras computadoras.
Ninguno de estos problemas desconocidos para WordPress, una cantidad asombrosa de sitios, se han convertido en víctimas de delincuentes desagradables que explotan a la comunidad para su propio beneficio.
Para poder vencer esta amenaza, hemos reunido un resumen de algunas buenas herramientas y consejos sobre cómo evitar ser la próxima víctima. O si tiene la mala suerte de ser una víctima, cómo defenderse y reparar su instalación.
Es posible que haya escuchado al respecto, incluso puede conocer los detalles, pero para aquellos que no tienen aquí el problema: un exploit es una pieza de código malicioso distribuido para explotar una debilidad en el código existente.
TimThumb era susceptible a un ataque de este tipo; una de sus funciones, que permite a los usuarios subir imágenes de diferentes sitios y acceder a ellas libremente, imágenes almacenadas en un directorio de caché para que Timthumb no tenga que volver a procesarlas. Esta función podría ser explotada por un hacker que carga archivos en el servidor, lo que les permite acceder a tantos recursos de la instalación de WordPress como lo deseen.
Exactamente el mismo problema afectado Uploadify , un complemento que permite a los usuarios subir archivos. Cuando no se controlaba adecuadamente, el complemento permitía a los piratas informáticos el acceso gratuito al sitio al cargar scripts PHP para otorgar permisos de acceso.
Imagen de mantenimiento a través de Shutterstock.
El problema en estos casos, como en la mayoría de los ataques de exploits, no era WordPress sino los plugins. La solución es simple, mantenga sus complementos actualizados e informe cualquier error que encuentre a los desarrolladores para ayudarlos a corregir problemas potenciales.
La instalación de WordPress en sí no es inmune a los problemas. Dependiendo de la versión, la inyección SQL puede ser un gran dolor de cabeza. Una inyección SQL es un proceso mediante el cual un atacante intenta pasar el código SQL a través de un formulario o script de sitio web con la esperanza de que el código SQL analice "correctamente" y recupere datos de la base de datos. Esos datos pueden ser direcciones de correo electrónico, pero lo más probable es que sean nombres de usuarios y contraseñas que le den más acceso al usuario para otros ataques.
La razón por la cual los ataques de SQL pueden ser tan irritantes es que para combatirlos necesita hacer una copia de seguridad con frecuencia de su base de datos. Preferiblemente al menos una vez por día.
Imagen de mantenimiento a través de Shutterstock.
Para evitar eso, puede intentar proteger sus archivos usando Apache con un código como este en su archivo .htaccess:
RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC]RewriteRule ^(.*)$ - [F,L]RewriteCond %{QUERY_STRING} ../ [NC,OR]RewriteCond %{QUERY_STRING} boot.ini [NC,OR]RewriteCond %{QUERY_STRING} tag= [NC,OR]RewriteCond %{QUERY_STRING} ftp: [NC,OR]RewriteCond %{QUERY_STRING} http: [NC,OR]RewriteCond %{QUERY_STRING} https: [NC,OR]RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [NC,OR]RewriteCond %{QUERY_STRING} base64_encode.*(.*) [NC,OR]RewriteCond %{QUERY_STRING} ^.*([|]|(|)|<|>|ê|"|;|?|*|=$).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*("|'|<|>||{||).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(%24&x).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127.0).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare).* [NC]RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$RewriteRule ^(.*)$ - [F,L]
Esto pospondrá a un aficionado, pero un pirata informático profesional encontrará otro agujero de seguridad para explotar. Afortunadamente, la mayoría de los ataques son perpetrados por novatos o spammers, utilizando scripts como PHP r57 o Shell. La reducción de estos ataques reducirá en gran medida la cantidad de problemas con los que debe lidiar.
El mayor agujero de seguridad en todos los sistemas es el usuario final. No importa cuán compleja sea la contraseña que cree. De hecho, cuanto más compleja es la contraseña, peor es el riesgo de seguridad; porque las contraseñas muy complejas deben ser guardadas en alguna parte. Los usuarios suelen guardar contraseñas en archivos .txt o .doc en sus computadoras y eso deja al sistema abierto a ataques de phishing usando archivos de virus como troyanos.
El único lugar seguro para almacenar una contraseña está dentro de tu propia cabeza.
Sin embargo, incluso si solo almacena su contraseña en su propia memoria, aún no está a salvo de los ataques de fuerza bruta. Un ataque de fuerza bruta simplemente intentará 'adivinar' tu contraseña con intentos repetidos de iniciar sesión. Puede comenzar con 'aaaaaa', pasando a 'aaaaab' y así sucesivamente hasta que llegue a '000000'. Este proceso no se limita a una sola computadora, comúnmente cientos de máquinas ejecutan contraseñas potenciales que buscan acceso.
Una forma de manejar los ataques de fuerza bruta es instalar un limitador de inicio de sesión que solo permita unos pocos intentos de inicio de sesión antes de bloquear el acceso de ese usuario durante una hora más o menos. Esto reduce la cantidad de oportunidades que tiene el atacante para ingresar. Hay varios complementos de WordPress que pueden ayudarlo con esto: Limitar los intentos de inicio de sesión , Mejor seguridad de WP y Solución de seguridad para iniciar sesión .
Finalmente, preste atención a los nombres de usuario. El nombre de usuario predeterminado para WordPress es 'Admin' y si lo deja como tal, está reduciendo a la mitad la cantidad de trabajo que el hacker necesita hacer para acceder a su sitio. Si no cambió su nombre de usuario mientras estaba instalando WordPress hágalo ahora. Simplemente inicie sesión en su cuenta, cree una nueva cuenta con el nombre de usuario que desee, asígnele permisos de administrador y luego elimine la cuenta de administrador.
Imagen de limpieza a través de Shutterstock.
Otro problema que pueden tener nuestros sitios de WordPress es proporcionar acceso directo a la página de inicio de sesión, lo que simplifica el proceso de pirateo de su sitio.
Mientras que proteger sus contraseñas es el problema más acuciante, un usuario malintencionado no podrá usar todo lo que haya robado si no puede encontrar la página de inicio de sesión. La solución más simple para esto es usar un plugin como Ocultar inicio de sesión para ocultar la ubicación de la página de inicio de sesión.
También se puede acceder a ciertos archivos en nuestra instalación de WordPress si no se protegen adecuadamente. Podemos aclarar estos cabos sueltos agregando algunas reglas más a nuestro archivo .htaccess, así:
Options All -IndexesOrder allow,denyDeny from all Order allow,denyDeny from all Order allow,denyDeny from all Order allow,denyDeny from all Order allow,denyDeny from all Order allow,denyDeny from all Order allow,denyDeny from all Order allow,denyDeny from all
Debería quedar claro que mientras más información le demos a nuestro potencial pirata informático, más fácil le será a ellos tener éxito.
El prefijo de tabla predeterminado de WordPress es 'wp_'. ¿Por qué querríamos darles eso? Cambiemos ese prefijo por algo más difícil de adivinar, como 'oijrr58_', por ejemplo, hará que sus vidas sean mucho más difíciles y aumentará las posibilidades de que su sitio permanezca seguro.
Para las instalaciones nuevas, esto es obvio porque el script de instalación nos pide un prefijo. Para los sitios más antiguos tiene dos opciones, puede hacer el cambio manualmente (solo intente esto si tiene mucho tiempo y está seguro de que sabe lo que está haciendo) o use un plugin como Mejor seguridad de WP que se encargará de eso por ti.
Nunca es demasiado tarde. Siempre puedes combatir a los hackers y evitar que te conviertas en una víctima perpetua.
Si no está seguro de si su sitio ha sido infectado, hay herramientas que le informarán. Sucuri SiteCheck por ejemplo, escaneará su sitio y, si está infectado, le aconsejará sobre los pasos a seguir para corregir el problema.
Imagen peligrosa a través de Shutterstock.
Aquí hay algunos pasos básicos a seguir:
r57 es un script PHP que ofrece a un atacante una amplia gama de capacidades, aunque el atacante tiene estas capacidades, estas no funcionarán hasta que el shell esté en nuestro servidor web, por lo tanto podemos evitar que funcione usando los siguientes comandos:
find /var/www/ -name "*".php -type f -print0 | xargs -0 grep r57 | uniq -c | sort -u | cut -d":" -f1 | awk '{print "rm -rf " $2}' | uniq
Este comando buscará archivos PHP ubicados en su carpeta WWW, y luego dentro de los archivos encontrados buscará cualquier mención de r57 en el nombre y contenido. Luego eliminará los archivos infectados.
find /var/www/ -name "*".txt -type f -print0 | xargs -0 grep r57 | uniq -c | sort -u | cut -d":" -f1 | awk '{print "rm -rf " $2}' | uniq
Este código hace lo mismo, a excepción de los archivos TXT en lugar de los archivos .php.
Tenga en cuenta que estos códigos son para Linux, no los pruebe en Windows o MacOS y tenga en cuenta que son potencialmente muy destructivos, ya que eliminarán archivos sin pedir permiso.
Una causa importante de preocupación dentro de los temas es el código oscurecido, ya que el código malicioso tiende a ser más difícil de encontrar dentro de los temas. Se pueden hacer todo tipo de daños, desde redirigir a los usuarios a otros sitios, hasta hundir su SEO.
Un arma clave en la lucha contra este tipo de problema es Comprobador de autenticidad del tema . Este complemento no solo verificará el código en busca de líneas sospechosas, sino que detectará enlaces estáticos y código oculto como el código generado en base64 que es difícil de detectar a simple vista.
El hecho de que haya sido atrapado en el pasado no significa que deba seguir jugando.
Considera seguir estos pasos para asegurarte más:
Reparar la imagen a través de Shutterstock.
La seguridad de WordPress es tan importante como la seguridad de cualquier sitio. Debe asegurarse de que tanto usted como sus usuarios estén protegidos contra el spam, el malware y los ataques de phishing. Pero recuerde que la primera línea de defensa es en realidad el software antivirus en su máquina de escritorio.
¿Has tenido problemas con la seguridad de WordPress? ¿Cómo resolviste el problema? Háganos saber en los comentarios.
Escrito exclusivamente para WDD por The Shock Family: un equipo de profesionales de la web y creadores de Temas de WordPress Shock (Temas de wordpress premium), Generador de temas WP (Un gran creador de temas wp), y DesignShock seful design sets). ( conjuntos de diseño útiles).