Seguridad en wordpress y todos sus pluguins

Descubre los mejores plugins y los mejores consejos para mantener tu wordpress seguro. Evita el Spam, los hackers y las inyecciones.

Seguridad en wordpress y plugins

Por la red hay muchos hacker que lo único a lo que se dedican es a generar programas automáticos para ir saboteando paginas webs he ir introduciendo sus códigos. WordPress tiene algunos puntos débiles y han de ser resueltos si lo que queremos es tener la total seguridad de que a nuestra web no le va a pasar nada.

Otros artículos que te pueden interesar:

Usos y plugins para mantener tu wordpress seguro

1. Hacer cópia de seguridad de tus archivos y de tu base de datos completa

Primero de todo y lo mas importante es generarse una copia de toda la web, tanto de todos los archivos como de toda la base de datos. En caso de que te hayan hackeado la web siempre podrás borrarlo todo de tu servidor y volverlo a volcarlo todo. Hay un apartado en esta web que te comenta los tipos de copias de seguridad que hay.

2. El password para la entrada de tu wordpress debe de tener un mínimo de 10 carácteres

Lo primero que debemos hacer es generar un password difícil de resolver. Muchos hackers lo que hacen es ir localizando webs hechas con wordpress e ir haciendo pruebas hasta que logran entrar a alguna de ellas. Por tema de combinaciones, la cantidad de 10 carácteres combinado entre números y letras, hace que para averiguar tu password necesitarían varios años.

3. No uses como nombre de usuario la palabra Admin

WordPress como defecto te da como nombre de usuario “Admin”, por lo que esto simplifica muchísimo a los hackers para poder sabotear webs. Si tienen dos campos, el de usuario y el de password, y uno de ellos ya lo tienen resuelto, les será mas fácil entrar.

4. Instálate el plugin Limit Login Attempts

Este plugin es perfecto para intrusos que intenten entrar en tu web mas de ciertas veces. Este plugin lo que permite es identificar la IP del usuario y le bloquea cuando dicho usuario ha intentado mas de ciertas veces entrar en tu web con un usuario o password correcto. Dentro del plugin tienes la opción de asignar la cantidad de veces que un usuario puede intentar entrar en tu web antes de bloquearla. A parte, te irá haciendo un historial de todos aquellos usuarios que han intentado entrar y que han sido bloqueados. Te sorprenderás la de veces que intentan entrar en tu web. Este plugin también te indican el nombre de usuario con el que prueban entrar los hackers.

5. Evitar el spam con Akismet

Si tu web son de aquellas que tienen apartados para poner comentarios, tendrás que ponerte el plugin Akismet. Cuando un hacker localiza una web donde puede poner comentarios de una manera automática, el hacker empieza a poner comentarios de una manera masiva. Akismet tiene una base de datos donde acumula todos los comentarios de todas las webs. Allí los analiza y si encuentra un comentario en tu web que ha sido ya localizado en otra web como spam, entonces dicho comentario lo aparca y no lo muestra. Dentro del plugin hay varias opciones como que hacer con dichos comentarios.

6. Ten tu wordpress actualizado

WordPress, como muchos otros programas, tiene defectos y los propios diseñadores lo saben. Sin embargo muchas veces no saben donde está el defecto hasta que un hacker sistemáticamente lo encuentra y abusa de dicho defecto. Es entonces cuando wordpress corrige dicho defecto y lo implementa en una de sus actualizaciones. Por eso es importante que tengas en cuenta estos dos consejos.

El primero, que tengas bien actualizado tu wordpress

El segundo, que nunca modifiques los archivos de tu wordpress.

Cuando uno quiere hacer modificaciones en su web, es importante tener claro los conceptos. Dentro de tu wordpress, vas a tener tu theme. Lo ideal es que nunca modifiques los archivos ni de tu theme ni de tu wordpress. Pero si tuvieras que modificar algo, intenta solo modificar los archivos de tu theme. Cuando actualices tu wordpress, verás que tu web seguirá como antes. Pero si modificas tu wordpress, cada vez que actualices, puede llegar a volver al estado inicial. Lo ideal pues es generar siempre las modificaciones a base de plugins o llamadas desde otros archivos de manera que nunca modifiques los archivos originales. Aunque a veces este método complica mucho el sistema de programación.

7. Genera código para evitar inyecciones SQL

Si lo que eres es programador y vas a modificar tu theme de arriba a bajo, intenta hacerlos con el tipo de programación correcta para que no te puedan inyectar datos en tu base de datos.

Si lo que vas a hacer dentro de tu theme es coger datos o actualizar datos en tu base de datos, deberás usar el código “PREPARE”. Os pongo un ejemplo bastante sencillo. Como veis dicha función que lo que hace es coger datos de la base de datos, lo hace mediante la funcion $wpdb->prepare. Esto evitará que puedan hackearte la web y evitar así que puedan introducirte datos en tu base de datos.

$variable = $wpdb->get_var( $wpdb->prepare( "SELECT post_status FROM $wpdb->posts WHERE object_id = $post->ID ") );

8. Revisa lo plugins que instales o evita instalar demasiados

Cuando actualizas wordpress, únicamente se actualizan los archivos de wordpress. Los plugins no quedan actualizados. La inmensa mayoría de plugins han sido programados por personas que muchas veces no han tenido en cuenta la seguridad. Es por ello que te aconsejamos evitar en todo lo que puedas poner plugins que realmente no vas a necesitar.

Lo que pueden hacer también si sabes un poco de código, es ir mirando los códigos de dichos plugins y asegurarte que están hechos correctamente. Por ejemplo, asegurate que cada vez que usan la base de datos tienen puesto la función “prepare”.

9. Cambia el prefijo de las tablas de la base de datos para evitar inyecciones sql

Dentro de tu base de datos verás que hay todas estas tablas y muchas mas.

wp_comments
wp_links
wp_options
wp_postmets
wp_posts

Todas ellas tienen una característica, empiezan todas por wp_ y esto facilita mucho a los hacker para inyectar datos en tu base de datos. Lo que habrás de hacer será modificar dicho prefijo, el wp_ lo habrás de cambiar por algo tipo wurd_ o caracteres que tu quieras.
Para cambiarlo, primero de todo haz cópia de seguridad de toda la base de datos por si luego el cambio no lo haces correctamente.
Luego tendrás que ir a tu archivo wp-config.php que está dentro de los archivos de tu wordpress y verás una linea de codigo que pone $table_prefix = ‘wp_’; El wp_ habrá de ser cambiado por los caracteres antes mencionado, algo tipo $table_prefix = ‘uwreqawshuy_’;
Luego tendrás que ir a tu base de datos y seleccionar el apartado SQL como indico en la foto.
phpmyadminEste apartado SQL lo que hace es poder generar consultas, modificaciones, introducción de datos, etc en tu base de datos. Por lo que haremos será remplazar el wp_ por el prefijo que hayas elegido.

Habrás de poner el siguiente código:

RENAME table 'wp_commentmeta' TO 'uwreqawshuy_commentmeta';

Y así con todas tus tablas, de manera que al final te quede lo siguiente. Aquí no están todas tu tablas, tendrás que añadir una linea por cada tabla que tu tengas.

RENAME table 'wp_commentmeta' TO 'uwreqawshuy_commentmeta';
RENAME table 'wp_comments' TO 'uwreqawshuy_comments';
RENAME table 'wp_links' TO 'uwreqawshuy_links';
RENAME table 'wp_options' TO 'uwreqawshuy_options';
RENAME table 'wp_postmeta' TO 'uwreqawshuy_postmeta';
RENAME table 'wp_posts' TO 'uwreqawshuy_posts';
RENAME table 'wp_terms' TO 'uwreqawshuy_terms';
RENAME table 'wp_term_relationships' TO 'uwreqawshuy_term_relationships';
RENAME table 'wp_term_taxonomy' TO 'uwreqawshuy_term_taxonomy';
RENAME table 'wp_usermeta' TO 'uwreqawshuy_usermeta';
RENAME table 'wp_users' TO 'uwreqawshuy_users';

Una vez tengas el prefijo de tus tablas modificadas, habrás de modificar la tabla “options” y la tabla “usermeta”. Dentro del contenido de estas tablas está usando el prefijo inicial wp_ que habrás de modificar tambien. Para ello, en el apartado SQL tendrás que hacer un select para localizar todos aquellos prefijos wp_ que se usan dentro de “options” y “usermeta”. Para ello ves a SQL en introduce el siguiente código;

SELECT * FROM 'uwreqawshuy_options' WHERE 'option_name' LIKE '%wp_%'

Esto te dará un muchos resultados donde habrás de ir modificando el wp_ por el prefijo que hayas escojido.

Para la tabla “usermeta” habrás de poner el siguiente código dentro de SQL;

SELECT * FROM 'uwreqawshuy_usermeta' WHERE 'meta_key' LIKE '%wp_%'

Aquí habrás de hacer lo mismo. Modificar el wp_ por tu nuevo prefijo.

Si después de todo esto ves que no te vas a aclarar, siempre puedes usar el plugin Change DB Prefix para hacer todo esto.

Modificar los permisos de las carpetas y archivos de wordpress en tu FTP

Dentro de tu FTP se puede asignar permisos diferentes para que estos sean unicamente de lectura, de modificación, etc.

Permisos-wordpress-archivos-y-carpetas

Por regla general los directorios tendrán permisos 755 y los archivos 644
Los ficheros wp-config.php y htaccess tendrán el permiso 0644
Las carpetas wp-admin, wp-includes y wp-content debe de poderse modificar únicamente por tu usuario, por lo que tendrá el permiso 755.

10. Prohibir el acceso al fichero wp-config de WordPress

Este fichero es muy importante. Ahí se encuentra los códigos de acceso a tu base de datos. Para evitar que sea manipulado, introduce este código en el archivo .htaccess

# protect wpconfig.php
<files wp-config.php>
order allow,deny
deny from all
</files>

Otros artículos que te pueden interesar:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *