SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
Seguridad en WordPress
Fundamentos
y mejores prácticas
#wpvalencia
II Meetup WPValencia
16/05/2015
WordPress Valencia
#wpvalencia @_wpvalenciaTwitter
Web http://www.wpvalencia.org
Lucy Tomas Cross
@_lucymtcTwitter
Web http://lucytomas.com
http://wptips.meBlog
Desarrollo web. Desarrollo plugins WordPress a medida.
#wpvalencia
WordPress és SEGURO.
- La responsabilidad está en el usuario. La seguridad de tu web
depende de ti.
- La reputación de WordPress sobre la falta de seguridad se debe a
que gran parte de los usuarios no siguen las buenas prácticas para
mantener su web segura.
#wpvalencia
¿Porqué me están atacando?
Diversión.
Dinero.
#wpvalencia
Ideales. Grupos radicales.
Algunos ejemplos:
- Insertar links, redirecciones. (Viagra, Cialis….)
- Insertar keywords para el propio beneficio.
- Formar ejercito para atacar a un sitio web
más grande.
- Acceder al visitante desde el navegador.
Ataques más comunes
#wpvalencia
Ataques de fuerza bruta
Recuperar contraseñas probando todas las combinaciones posibles.
O probando las contraseñas más utilizadas por los usuarios, o por diccionario.
SQL Injections
Infiltración de código intruso en la base de datos. Este tipo de inyecciones afectan directamente al servidor.
Cross Site Scripting
(Secuencias de comandos en sitios cruzados)
Ataque al lado cliente, no al servidor. Se inyecta y ejecuta código javascript en las páginas visitadas por un
usuario.
Cross Site Request Forgery
Una vez que te has identificado otros sitios pueden hacerse pasar por ti.
DDOS
(Ataque de denegación de servicios)
Se genera mediante la saturación de los puertos con flujo de información, haciendo
que el servidor se sobrecargue y no pueda seguir prestando servicios.
#wpvalencia
Pilares para la seguridad
#wpvalencia
#wpvalencia
Tener al día WordPress con la última versión disponible.
Las pequeñas actualizaciones 3.9.X, 4.0.X… suelen llevar parches de seguridad.
Actualizar siempre Plugins y Themes.
Actualizaciones
Enlaces de interés:
https://blog.sucuri.net
https://wpvulndb.com
WPScan Vulnerability Database
Blog Sucuri
http://www.wordfence.com/blog/
Blog Wordfence
- Contraseñas largas, no legibles, con $@!?^#], números y mayúsculas.
- Contraseña única para cada sitio web, usar gestor de contraseñas.
- Cambiar las contraseñas de manera regular.
Contraseñas fuertes
Clave 8 letras = 52 segundos
Clave 8 números y letras = 11 minutos
Con Mayusculas/!@#$ = 3 horas
12 letras/números/mayusculas/!@#$ = 2 mil años
1Password LastPass KeyPass
#wpvalencia
Copias de Seguridad
#wpvalencia
Tener un plan de Backup y no dejarlo todo en manos del hosting.
Guárdalos en la nube. (Dropbox, Google Drive,Amazon…)
Automatízalos, no confies en ti.
Verifica que funcionan, realiza una restauración de prueba.
Elegir Proveedor de alojamiento
Alojamiento Administrado
Puede ser compartido, servidor dedicado oVPS.
El usuario se encarga de la seguridad de su WordPress.
El proveedor se encarga de la seguridad del servidor.
Alojamiento NO Administrado
Servidor dedicado oVPS.
El usuario se encarga de toda la seguridad.
WordPress Managed Hosting (alojamiento gestionado)
Menos preocupaciones.
Expertos en WordPress gestionan la web y trabajan contigo.
( WPEngine, Pagely, Siteground, Synthesis, GoDaddy, Dreamhost, Bluehost, … )
#wpvalencia
Recomendaciones durante la
instalación de WordPress
#wpvalencia
#wpvalencia
Archivo wp-config.php
Cambiar el prefijo de las tablas para la base de datos.
Renombrar la carpeta wp-content.
$table_prefix = 'rg5htg_';
define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/mi-contenido' );
define( 'WP_CONTENT_URL', 'http://' . $_SERVER['HTTP_HOST'] . ‘/mi-contenido' );
Definir la URL del sitio web.
define('WP_HOME','http://www.mi-dominio.com');
define('WP_SITEURL','http://www.mi-dominio.com');
Cambiar las claves secretas para la encriptación de cookies.
define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here’);
https://api.wordpress.org/secret-key/1.1/salt/
#wpvalencia
define('AUTH_KEY', 'Dv70c+}yQ:eQ^kQbws`zZ3*^X){? nqDHW+`*$:<9Xjpl]HNIC~}]Cv/E^~Mj2vP');
define('SECURE_AUTH_KEY', 'ZT7[%Ou26ZWt-2]-Sfm+<sc+N+|:n^Tr6?4uK^p|7s:is 0I6n9,sy&6(134=cz ');
define('LOGGED_IN_KEY', 'Tl=GEwBQw|TO6pq+72@<TYl6H(>/KKQ {P8tL/19bkl`eRi 1k](^#`lKinN0xNG');
define('NONCE_KEY', 'F|-HlzFg&N@|BS<}VY7H%xM5m`<4Rfz+%>p;z0`1pzS(jG!u2VdbjRwDVknA]eQA');
define('AUTH_SALT', 'Y;Z<rZSB3,;|}!PHy&/oA<tb?LTxQD[eeeg@p-+Jc[poK=ns&twVAFY7mD<LNQ)U');
define('SECURE_AUTH_SALT', 'M@`?mwSdO3?>U#D5@);r{DV2[#{l@{2OB-.-.*_wN_WsoJ:M[c!SW1M^N-hX{-sE');
define('LOGGED_IN_SALT', '&|+Q_eA||y{RHRbD>7B8`YJ-*D/0?u)B0LDU}-+t{Vxm2)*-0@,$oqT-T,M c`(x');
define('NONCE_SALT', ‘kZ&l?sb2R)$&(mRm*u8Ju#o8i-s3!T2H&q]}$rp2g_193g1K,?$_l:|g5~GlRJ}&');
Deshabilitar el editor de archivos.
define( 'DISALLOW_FILE_EDIT', true );
#wpvalencia
#wpvalencia
Elegir un nombre de administrador que no sea “admin”.
Todavía mejor si contiene algún carácter especial @, #, $…
Nombre de usuario
Elegir una contraseña fuerte, que no se pueda averiguar mediante datos
personales y que no sea una palabra del diccionario. Larga con números, letras,
mayúsculas y caracteres especiales.
Contraseña
ZVgu,=zZ3AJb%n.X3ExT9^spH]√
Después de la instalación
Usuario no administrador.
Crear un usuario Editor para publicar el contenido.
DB: ID por defecto del administrador
Cambiar el ID del administrador en tablas users y usermeta.
DB: Campo user_nicename
Cambiar el campo user_nicename.
user_nicename y display_name no deben tener el mismo valor que user_login.
Nombre y Apellidos administrador
Poner siempre un nombre y apellidos al administrador.
Contenido de ejemplo
EliminarThemes y Plugins que no se usan.
#wpvalencia
Permisos de archivos y carpetas
Archivos 644 Carpetas 755
Bloquear acceso a carpeta wp-includes
# Block the include-only files.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
Bloquear acceso a archivo wp-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>
#wpvalencia
Nota: Estos pasos pueden ser gestionados por un plugin de seguridad
otros .htaccess snippets: https://codex.wordpress.org/Brute_Force_Attacks
Sistema de BACKUP
Instalar un plugin para realizar copias de seguridad.
Y!!! verificar que funciona.
#wpvalencia
Repito….
#wpvalencia
Instalar plugin de Seguridad
https://wordpress.org/plugins/better-wp-security/
(formerly Better WP Security)
Cambiar la URL de acceso a la página de Login.
Hide Login Area
Prohibir acceso público a readme.html, readme.txt, wp-config.php, install.php,
wp-includes, y .htaccess
Protect System Files
Protege contra ataques de fuerza bruta.
Enable BruteForce Protection
No permitir archivos php en la carpeta uploads.
Disable PHP in Uploads
#wpvalencia
Prohibir la posibilidad de examinar el contenido de los directorios.
Disable Directory Browsing
Eliminar permisos de escritura en archivos.
Cambia los permisos de 0664 a 0444 para wp-config.php y .htaccess.
Remove File Writing Permissions
Incluir blacklist de HackRepair.com
Default Blacklist
Malware Scan.API de virustotal.com
Malware Scanning
Prohibir al usuario “admin” de forma automática.
Automatically ban “admin” user
Filtrar las consultas sospechosas en la URL.
Filter Suspicious Query Strings in the URL
Instalar plugin contra Spam en Comentarios
#wpvalencia
https://wordpress.org/plugins/zero-spam/
https://wordpress.org/plugins/akismet/
VPN (Virtual Private Network) en Redes no seguras (biblioteca, cafetería, hotel,…)
CLOAK (mac) desde $2.99/mes www.getcloak.com
Otros Consejos
Acceso a archivos por SFTP o SSH
Two Factor Authetication
Clef https://wordpress.org/plugins/wpclef/
Educar al cliente.
#wpvalencia
SSL (Secure Sockets Layer)
Conocer lo que instalamos (plugins y themes).
Servicios y Herramientas
#wpvalencia
¡¡Me han hackeado!!
¿Y ahora que hago?
#wpvalencia
#wpvalencia
1 - Cambiar todas las contraseñas (HOST,WP, FTP, BD)
#wpvalencia
2 - Descargar y guardar la carpeta wp-content
3 - Hacer un scan de la máquina local.Asegurarse que el ordenador
no esta infectado.
4 - Eliminar www/ cron/ plugins/ themes/ de wp-content,
todo lo que puedas y no usas.
5 - Subir una nueva copia de WordPress menos la
carpeta wp-content
6 - Añadir de nuevo wp-content, verificando cada archivo
manualmente. Buscar comando eval seguido de base64
7 -Vuelve a cambiar todas las contraseñas.
Agradecimientos a:
- Networking
- Sala de juntas
- Amplio Horario
- Espacio único
- Mensajería Low Cost
- Conserjería y recepción
http://www.svcoworkingvalencia.es/
info@svcoworkingvalencia.es
#wpvalencia
twitter @svcoworking

Más contenido relacionado

La actualidad más candente

Conferencia Innovación en Técnicas de Ethical Hacking
Conferencia Innovación en Técnicas de Ethical HackingConferencia Innovación en Técnicas de Ethical Hacking
Conferencia Innovación en Técnicas de Ethical HackingHacking Bolivia
 
Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)
Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)
Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)RaGaZoMe
 
Webinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio Web
Webinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio WebWebinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio Web
Webinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio WebSucuri
 
Presentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona SeguridadPresentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona Seguridadguestbfa74a
 
Instalación básica vSphere 5.5
Instalación básica vSphere 5.5Instalación básica vSphere 5.5
Instalación básica vSphere 5.5RaGaZoMe
 
Desde el DVR hasta la cocina
Desde el DVR hasta la cocinaDesde el DVR hasta la cocina
Desde el DVR hasta la cocinaEfren Diaz Gomez
 
PHPVigo #17 - lightning password hash
PHPVigo #17 - lightning password hashPHPVigo #17 - lightning password hash
PHPVigo #17 - lightning password hashRolando Caldas
 
Implementación VMWare Center Server 6 Appliance
Implementación VMWare Center Server 6 ApplianceImplementación VMWare Center Server 6 Appliance
Implementación VMWare Center Server 6 ApplianceRaGaZoMe
 
Descromprimir archivo tar_xvf
Descromprimir archivo tar_xvfDescromprimir archivo tar_xvf
Descromprimir archivo tar_xvfJames Jara
 
Maitaining access
Maitaining accessMaitaining access
Maitaining accessTensor
 
Como limpiar sitios WordPress hackiados #WCCR
Como limpiar sitios WordPress hackiados #WCCRComo limpiar sitios WordPress hackiados #WCCR
Como limpiar sitios WordPress hackiados #WCCRSucuri
 
MAITAINING ACCESS
MAITAINING ACCESSMAITAINING ACCESS
MAITAINING ACCESSTensor
 
Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019Alejandro Quesada
 
Comentarios acerca de WebArx - Plugin de seguridad para Wodoress
Comentarios acerca de WebArx - Plugin de seguridad para WodoressComentarios acerca de WebArx - Plugin de seguridad para Wodoress
Comentarios acerca de WebArx - Plugin de seguridad para WodoressMarco Martínez
 
Ataque DNS spoofing con Kali Linux
Ataque DNS spoofing con Kali LinuxAtaque DNS spoofing con Kali Linux
Ataque DNS spoofing con Kali LinuxCarlos Otero
 
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13peter69
 
IdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtualIdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtualMizaelMartinez2
 

La actualidad más candente (19)

Robo desesionesfinal
Robo desesionesfinalRobo desesionesfinal
Robo desesionesfinal
 
Conferencia Innovación en Técnicas de Ethical Hacking
Conferencia Innovación en Técnicas de Ethical HackingConferencia Innovación en Técnicas de Ethical Hacking
Conferencia Innovación en Técnicas de Ethical Hacking
 
Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)
Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)
Instalación asincrónica de controladores en VMWare 6.0.X (ESXi)
 
Webinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio Web
Webinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio WebWebinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio Web
Webinar: 10 Consejos para Mejorar la Postura de Seguridad de tu Sitio Web
 
Presentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona SeguridadPresentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona Seguridad
 
Instalación básica vSphere 5.5
Instalación básica vSphere 5.5Instalación básica vSphere 5.5
Instalación básica vSphere 5.5
 
Desde el DVR hasta la cocina
Desde el DVR hasta la cocinaDesde el DVR hasta la cocina
Desde el DVR hasta la cocina
 
PHPVigo #17 - lightning password hash
PHPVigo #17 - lightning password hashPHPVigo #17 - lightning password hash
PHPVigo #17 - lightning password hash
 
Implementación VMWare Center Server 6 Appliance
Implementación VMWare Center Server 6 ApplianceImplementación VMWare Center Server 6 Appliance
Implementación VMWare Center Server 6 Appliance
 
Descromprimir archivo tar_xvf
Descromprimir archivo tar_xvfDescromprimir archivo tar_xvf
Descromprimir archivo tar_xvf
 
Maitaining access
Maitaining accessMaitaining access
Maitaining access
 
Como limpiar sitios WordPress hackiados #WCCR
Como limpiar sitios WordPress hackiados #WCCRComo limpiar sitios WordPress hackiados #WCCR
Como limpiar sitios WordPress hackiados #WCCR
 
MAITAINING ACCESS
MAITAINING ACCESSMAITAINING ACCESS
MAITAINING ACCESS
 
Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019
 
Comentarios acerca de WebArx - Plugin de seguridad para Wodoress
Comentarios acerca de WebArx - Plugin de seguridad para WodoressComentarios acerca de WebArx - Plugin de seguridad para Wodoress
Comentarios acerca de WebArx - Plugin de seguridad para Wodoress
 
Ataque DNS spoofing con Kali Linux
Ataque DNS spoofing con Kali LinuxAtaque DNS spoofing con Kali Linux
Ataque DNS spoofing con Kali Linux
 
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
Taller Kali Linux3: Rastreando Informacion y Objetivos -HackMadrid ene13
 
IdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtualIdeaSpaceVR: como crear tu plataforma de realidad virtual
IdeaSpaceVR: como crear tu plataforma de realidad virtual
 
Modulo 5
Modulo 5Modulo 5
Modulo 5
 

Similar a Seguridad en WordPress: Fundamentos y mejores prácticas

La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...Asociación Webmasters Cantabria
 
WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...
WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...
WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...Darío BF
 
Seguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup MajadahondaSeguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup MajadahondaPedro Santos
 
Seguridad en WordPress
Seguridad en WordPressSeguridad en WordPress
Seguridad en WordPressPedro Santos
 
Aplicar la seguridad en WordPress desde la selección de un hosting
Aplicar la seguridad en WordPress desde la selección de un hosting Aplicar la seguridad en WordPress desde la selección de un hosting
Aplicar la seguridad en WordPress desde la selección de un hosting José Conti Calveras
 
Wordpress como framework - DarioBF en WordCamp Barcelona
Wordpress como framework - DarioBF en WordCamp BarcelonaWordpress como framework - DarioBF en WordCamp Barcelona
Wordpress como framework - DarioBF en WordCamp BarcelonaDarío BF
 
La seguridad en WordPress de la A a la Z
La seguridad en WordPress de la A a la ZLa seguridad en WordPress de la A a la Z
La seguridad en WordPress de la A a la Zwpbarcelona
 
OWASP y seguridad WordPress
OWASP y seguridad WordPressOWASP y seguridad WordPress
OWASP y seguridad WordPressFernando Tellado
 
WordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPressWordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPressJuan José Domenech
 
WordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPressWordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPressRamón Salado Lucena
 
20 claves de Seguridad WordPress
20 claves de Seguridad WordPress20 claves de Seguridad WordPress
20 claves de Seguridad WordPressFernando Tellado
 
Webinar - Seguridad en WordPress
Webinar - Seguridad en WordPressWebinar - Seguridad en WordPress
Webinar - Seguridad en WordPressArsys
 
Las claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPressLas claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPressIñaki Arenaza
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesNextel S.A.
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesPablo Garaizar
 

Similar a Seguridad en WordPress: Fundamentos y mejores prácticas (20)

La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
 
WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...
WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...
WPEuskadi 2015 - La potencia sin control no sirve de nada, claves para aprove...
 
Seguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup MajadahondaSeguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup Majadahonda
 
Seguridad en WordPress
Seguridad en WordPressSeguridad en WordPress
Seguridad en WordPress
 
Aplicar la seguridad en WordPress desde la selección de un hosting
Aplicar la seguridad en WordPress desde la selección de un hosting Aplicar la seguridad en WordPress desde la selección de un hosting
Aplicar la seguridad en WordPress desde la selección de un hosting
 
Wordpress como framework - DarioBF en WordCamp Barcelona
Wordpress como framework - DarioBF en WordCamp BarcelonaWordpress como framework - DarioBF en WordCamp Barcelona
Wordpress como framework - DarioBF en WordCamp Barcelona
 
La seguridad en WordPress de la A a la Z
La seguridad en WordPress de la A a la ZLa seguridad en WordPress de la A a la Z
La seguridad en WordPress de la A a la Z
 
OWASP y seguridad WordPress
OWASP y seguridad WordPressOWASP y seguridad WordPress
OWASP y seguridad WordPress
 
Webperf wordpress
Webperf wordpressWebperf wordpress
Webperf wordpress
 
WordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPressWordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPress
 
WordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPressWordCamp Taller Seguridad WordPress
WordCamp Taller Seguridad WordPress
 
Owasp 6 Seguridad en WordPress
Owasp 6  Seguridad en WordPressOwasp 6  Seguridad en WordPress
Owasp 6 Seguridad en WordPress
 
Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.
 
Carlos Pascual #WPvalladolid 2014
Carlos Pascual #WPvalladolid 2014Carlos Pascual #WPvalladolid 2014
Carlos Pascual #WPvalladolid 2014
 
20 claves de Seguridad WordPress
20 claves de Seguridad WordPress20 claves de Seguridad WordPress
20 claves de Seguridad WordPress
 
Webinar - Seguridad en WordPress
Webinar - Seguridad en WordPressWebinar - Seguridad en WordPress
Webinar - Seguridad en WordPress
 
Las claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPressLas claves para optimizar la seguridad de tu sitio WordPress
Las claves para optimizar la seguridad de tu sitio WordPress
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
Autentificacion sql antonio_hermoso
Autentificacion sql antonio_hermosoAutentificacion sql antonio_hermoso
Autentificacion sql antonio_hermoso
 

Seguridad en WordPress: Fundamentos y mejores prácticas

  • 1. Seguridad en WordPress Fundamentos y mejores prácticas #wpvalencia II Meetup WPValencia 16/05/2015
  • 2. WordPress Valencia #wpvalencia @_wpvalenciaTwitter Web http://www.wpvalencia.org Lucy Tomas Cross @_lucymtcTwitter Web http://lucytomas.com http://wptips.meBlog Desarrollo web. Desarrollo plugins WordPress a medida.
  • 3. #wpvalencia WordPress és SEGURO. - La responsabilidad está en el usuario. La seguridad de tu web depende de ti. - La reputación de WordPress sobre la falta de seguridad se debe a que gran parte de los usuarios no siguen las buenas prácticas para mantener su web segura.
  • 5. Diversión. Dinero. #wpvalencia Ideales. Grupos radicales. Algunos ejemplos: - Insertar links, redirecciones. (Viagra, Cialis….) - Insertar keywords para el propio beneficio. - Formar ejercito para atacar a un sitio web más grande. - Acceder al visitante desde el navegador.
  • 7. Ataques de fuerza bruta Recuperar contraseñas probando todas las combinaciones posibles. O probando las contraseñas más utilizadas por los usuarios, o por diccionario. SQL Injections Infiltración de código intruso en la base de datos. Este tipo de inyecciones afectan directamente al servidor. Cross Site Scripting (Secuencias de comandos en sitios cruzados) Ataque al lado cliente, no al servidor. Se inyecta y ejecuta código javascript en las páginas visitadas por un usuario. Cross Site Request Forgery Una vez que te has identificado otros sitios pueden hacerse pasar por ti. DDOS (Ataque de denegación de servicios) Se genera mediante la saturación de los puertos con flujo de información, haciendo que el servidor se sobrecargue y no pueda seguir prestando servicios. #wpvalencia
  • 8. Pilares para la seguridad #wpvalencia
  • 9. #wpvalencia Tener al día WordPress con la última versión disponible. Las pequeñas actualizaciones 3.9.X, 4.0.X… suelen llevar parches de seguridad. Actualizar siempre Plugins y Themes. Actualizaciones Enlaces de interés: https://blog.sucuri.net https://wpvulndb.com WPScan Vulnerability Database Blog Sucuri http://www.wordfence.com/blog/ Blog Wordfence
  • 10. - Contraseñas largas, no legibles, con $@!?^#], números y mayúsculas. - Contraseña única para cada sitio web, usar gestor de contraseñas. - Cambiar las contraseñas de manera regular. Contraseñas fuertes Clave 8 letras = 52 segundos Clave 8 números y letras = 11 minutos Con Mayusculas/!@#$ = 3 horas 12 letras/números/mayusculas/!@#$ = 2 mil años 1Password LastPass KeyPass #wpvalencia
  • 11. Copias de Seguridad #wpvalencia Tener un plan de Backup y no dejarlo todo en manos del hosting. Guárdalos en la nube. (Dropbox, Google Drive,Amazon…) Automatízalos, no confies en ti. Verifica que funcionan, realiza una restauración de prueba.
  • 12. Elegir Proveedor de alojamiento Alojamiento Administrado Puede ser compartido, servidor dedicado oVPS. El usuario se encarga de la seguridad de su WordPress. El proveedor se encarga de la seguridad del servidor. Alojamiento NO Administrado Servidor dedicado oVPS. El usuario se encarga de toda la seguridad. WordPress Managed Hosting (alojamiento gestionado) Menos preocupaciones. Expertos en WordPress gestionan la web y trabajan contigo. ( WPEngine, Pagely, Siteground, Synthesis, GoDaddy, Dreamhost, Bluehost, … ) #wpvalencia
  • 13. Recomendaciones durante la instalación de WordPress #wpvalencia
  • 14. #wpvalencia Archivo wp-config.php Cambiar el prefijo de las tablas para la base de datos. Renombrar la carpeta wp-content. $table_prefix = 'rg5htg_'; define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/mi-contenido' ); define( 'WP_CONTENT_URL', 'http://' . $_SERVER['HTTP_HOST'] . ‘/mi-contenido' ); Definir la URL del sitio web. define('WP_HOME','http://www.mi-dominio.com'); define('WP_SITEURL','http://www.mi-dominio.com');
  • 15. Cambiar las claves secretas para la encriptación de cookies. define('AUTH_KEY', 'put your unique phrase here'); define('SECURE_AUTH_KEY', 'put your unique phrase here'); define('LOGGED_IN_KEY', 'put your unique phrase here'); define('NONCE_KEY', 'put your unique phrase here'); define('AUTH_SALT', 'put your unique phrase here'); define('SECURE_AUTH_SALT', 'put your unique phrase here'); define('LOGGED_IN_SALT', 'put your unique phrase here'); define('NONCE_SALT', 'put your unique phrase here’); https://api.wordpress.org/secret-key/1.1/salt/ #wpvalencia define('AUTH_KEY', 'Dv70c+}yQ:eQ^kQbws`zZ3*^X){? nqDHW+`*$:<9Xjpl]HNIC~}]Cv/E^~Mj2vP'); define('SECURE_AUTH_KEY', 'ZT7[%Ou26ZWt-2]-Sfm+<sc+N+|:n^Tr6?4uK^p|7s:is 0I6n9,sy&6(134=cz '); define('LOGGED_IN_KEY', 'Tl=GEwBQw|TO6pq+72@<TYl6H(>/KKQ {P8tL/19bkl`eRi 1k](^#`lKinN0xNG'); define('NONCE_KEY', 'F|-HlzFg&N@|BS<}VY7H%xM5m`<4Rfz+%>p;z0`1pzS(jG!u2VdbjRwDVknA]eQA'); define('AUTH_SALT', 'Y;Z<rZSB3,;|}!PHy&/oA<tb?LTxQD[eeeg@p-+Jc[poK=ns&twVAFY7mD<LNQ)U'); define('SECURE_AUTH_SALT', 'M@`?mwSdO3?>U#D5@);r{DV2[#{l@{2OB-.-.*_wN_WsoJ:M[c!SW1M^N-hX{-sE'); define('LOGGED_IN_SALT', '&|+Q_eA||y{RHRbD>7B8`YJ-*D/0?u)B0LDU}-+t{Vxm2)*-0@,$oqT-T,M c`(x'); define('NONCE_SALT', ‘kZ&l?sb2R)$&(mRm*u8Ju#o8i-s3!T2H&q]}$rp2g_193g1K,?$_l:|g5~GlRJ}&');
  • 16. Deshabilitar el editor de archivos. define( 'DISALLOW_FILE_EDIT', true ); #wpvalencia
  • 17. #wpvalencia Elegir un nombre de administrador que no sea “admin”. Todavía mejor si contiene algún carácter especial @, #, $… Nombre de usuario Elegir una contraseña fuerte, que no se pueda averiguar mediante datos personales y que no sea una palabra del diccionario. Larga con números, letras, mayúsculas y caracteres especiales. Contraseña ZVgu,=zZ3AJb%n.X3ExT9^spH]√
  • 18. Después de la instalación Usuario no administrador. Crear un usuario Editor para publicar el contenido. DB: ID por defecto del administrador Cambiar el ID del administrador en tablas users y usermeta. DB: Campo user_nicename Cambiar el campo user_nicename. user_nicename y display_name no deben tener el mismo valor que user_login. Nombre y Apellidos administrador Poner siempre un nombre y apellidos al administrador. Contenido de ejemplo EliminarThemes y Plugins que no se usan. #wpvalencia
  • 19. Permisos de archivos y carpetas Archivos 644 Carpetas 755 Bloquear acceso a carpeta wp-includes # Block the include-only files. <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] </IfModule> Bloquear acceso a archivo wp-config.php <files wp-config.php> order allow,deny deny from all </files> #wpvalencia Nota: Estos pasos pueden ser gestionados por un plugin de seguridad otros .htaccess snippets: https://codex.wordpress.org/Brute_Force_Attacks
  • 20. Sistema de BACKUP Instalar un plugin para realizar copias de seguridad. Y!!! verificar que funciona. #wpvalencia Repito….
  • 21. #wpvalencia Instalar plugin de Seguridad https://wordpress.org/plugins/better-wp-security/ (formerly Better WP Security) Cambiar la URL de acceso a la página de Login. Hide Login Area Prohibir acceso público a readme.html, readme.txt, wp-config.php, install.php, wp-includes, y .htaccess Protect System Files Protege contra ataques de fuerza bruta. Enable BruteForce Protection No permitir archivos php en la carpeta uploads. Disable PHP in Uploads
  • 22. #wpvalencia Prohibir la posibilidad de examinar el contenido de los directorios. Disable Directory Browsing Eliminar permisos de escritura en archivos. Cambia los permisos de 0664 a 0444 para wp-config.php y .htaccess. Remove File Writing Permissions Incluir blacklist de HackRepair.com Default Blacklist Malware Scan.API de virustotal.com Malware Scanning Prohibir al usuario “admin” de forma automática. Automatically ban “admin” user Filtrar las consultas sospechosas en la URL. Filter Suspicious Query Strings in the URL
  • 23. Instalar plugin contra Spam en Comentarios #wpvalencia https://wordpress.org/plugins/zero-spam/ https://wordpress.org/plugins/akismet/
  • 24. VPN (Virtual Private Network) en Redes no seguras (biblioteca, cafetería, hotel,…) CLOAK (mac) desde $2.99/mes www.getcloak.com Otros Consejos Acceso a archivos por SFTP o SSH Two Factor Authetication Clef https://wordpress.org/plugins/wpclef/ Educar al cliente. #wpvalencia SSL (Secure Sockets Layer) Conocer lo que instalamos (plugins y themes).
  • 26. ¡¡Me han hackeado!! ¿Y ahora que hago? #wpvalencia
  • 28. 1 - Cambiar todas las contraseñas (HOST,WP, FTP, BD) #wpvalencia 2 - Descargar y guardar la carpeta wp-content 3 - Hacer un scan de la máquina local.Asegurarse que el ordenador no esta infectado. 4 - Eliminar www/ cron/ plugins/ themes/ de wp-content, todo lo que puedas y no usas. 5 - Subir una nueva copia de WordPress menos la carpeta wp-content 6 - Añadir de nuevo wp-content, verificando cada archivo manualmente. Buscar comando eval seguido de base64 7 -Vuelve a cambiar todas las contraseñas.
  • 29. Agradecimientos a: - Networking - Sala de juntas - Amplio Horario - Espacio único - Mensajería Low Cost - Conserjería y recepción http://www.svcoworkingvalencia.es/ info@svcoworkingvalencia.es #wpvalencia twitter @svcoworking