Upload
inaki-arenaza
View
122
Download
2
Embed Size (px)
Citation preview
Iñaki Arenaza [email protected] @iarenaza
Mondragon Unibertsitatea
Las claves para optimizar la
seguridad de tu sitio WordPress
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
¿Cómo de seguro es WP?
Fuente: http://izquotes.com/quote/268149
¿Cómo de seguro es WP? (mayo '16)
Fuente: https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress
¿Cómo de seguro es WP? (nov '16)
Fuente: https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress
¿Cómo de seguro es WP? (mayo '16)
Fuente: http://www.cvedetails.com/product/4096/Wordpress-Wordpress.html?vendor_id=2337
¿Cómo de seguro es WP? (nov '16)
Fuente: http://www.cvedetails.com/product/4096/Wordpress-Wordpress.html?vendor_id=2337
¿Cómo de seguro puede ser WP?
Fuente: https://blog.sucuri.net/2016/10/accounting-for-defense-in-depth-in-website-security.html
Fuente: http://www.azquotes.com/quote/936355
¿Cómo de seguro puede ser WP?
• Defensa en profundidad
Fuente: http://www.gestionconsult.es/blog/como-proteger-tu-privacidad-en-internet-iii-seguridad-perimetral/
¿Cómo de seguro puede ser WP?
Fuente: http://esolia.pro/en/security-and-convenience/
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Cuentas de MySQL y las tablas de WP
• No usar el usuario root de MySQL.
• No usar: admin, Admin, administrator, Administrator, administrador, Administrador o similares.
• Utilizar contraseñas difíciles de adivinar (https://xkcd.com/936/).
• No asignar al usuario más privilegios de los necesarios, y sólo en la base de datos de WordPress.
• Si tienes múltiples sitios WordPress, usa un usuario de MySQL diferente para cada uno de ellos.
Cuentas de MySQL y las tablas de WP
• No uses el prefijo wp_ para las tablas:
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Seguridad de las cuentas de usuarios
• No usar: admin, Admin, administrator, Administrator, administrador, Administrador o similares para el usuario (super)administrador.
• Utilizar contraseñas difíciles de adivinar.
• Los gestores de contraseñas son tus amigos: LastPass, 1Password, KeePass, KeePassX, etc.
• ¡Cámbiarlas regularmente! (y desde luego,
después de cualquier problema de seguridad).
Seguridad de las cuentas de usuarios
• Limita el acceso al directorio /wp-admin
• Se puede hacer por:
– direcciones IP de origen
– solicitando usuario y contraseña
– ¡o ambas cosas!
• Se suele hacer en la configuración del servidor web (cPanel, fichero .htacces, etc.)
Seguridad de las cuentas de usuarios
• Extra: Utilizar autenticación de dos pasos o de doble factor (2FA, o 2 Factor Authentication).
• Algunos plugins existentes de 2FA para WP: – Google Authenticator - Two Factor Authentication:
https://wordpress.org/plugins/miniorange-2-factor-authentication/
– Clef Two-Factor Authentication: https://wordpress.org/plugins/wpclef/
– Shield WordPress Security: https://wordpress.org/plugins/wp-simple-firewall/
Seguridad de las cuentas de usuarios
• Ejemplo: Google Authenticator - Two Factor Authentication (1/2)
Seguridad de las cuentas de usuarios
• Google Authenticator - Two Factor Authentication (2/2)
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Plugins de seguridad que nos pueden ayudar.
• Limit Login Attempts: https://wordpress.org/plugins/wp-limit-login-attempts/
• iThemes Security (antes Better WP Security): https://wordpress.org/plugins/better-wp-security/
• Wordfence Security: https://wordpress.org/plugins/wordfence/
• Sucuri Security: https://wordpress.org/plugins/sucuri-scanner/
• NinjaFirewall WAF: https://wordpress.org/plugins/ninjafirewall/
• Excepto el primero, todos ofrecen funcionalidades muy similares.
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Las copias de seguridad, esas grandes desconocidas.
• Copias de todo lo necesario: código WP, base de datos, ficheros de WP, servidor web, sistema operativo, etc.
• ¡Automatiza!
• Hacerlas es sólo la mitad del camino.
• Una copia de seguridad que no se puede (o no se sabe) restaurar, no sirve para nada.
• ¡Restaura tus copias periódicamente!
Las copias de seguridad, esas grandes desconocidas.
• Algunos plugins de copias de seguridad:
– VaultPress
– BackupBuddy
– BackWPup Free
– BackUpWordPress
– UpdraftPlus
– Duplicator
– WP-DB-Backup
– WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• ¿Cuál es el mejor? Como siempre, depende de a quien preguntemos:
– https://www.designbombs.com/best-backup-plugins-wordpress/
– https://themetrust.com/wordpress-backup-plugins/
– http://www.wpbeginner.com/plugins/7-best-wordpress-backup-plugins-compared-pros-and-cons/
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Las copias de seguridad, esas grandes desconocidas.
• Ejemplo: WordPress Backup to Dropbox
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Seguridad del servidor web y del sistema operativo del servidor.
• Configuración adecuada (usuario con privilegios mínimos, permisos adecuados en carpetas, etc.)
• Aprovechar las opciones de seguridad de los ficheros .htacces (o equivalentes en tu servidor web).
• ¡Protege tus ficheros .htaccess!
• Usar Web Application Firewall (WAF): ModSecurity (www.modsecurity.org)
• Usar un cortafuegos que trabaje con ModSecurity.
• Plugins como NginxCp sobre Cpanel, si usas Nginx em vez de Apache: www.nginxcp.com
Seguridad del servidor web y del sistema operativo del servidor.
• Configuración adecuada (usuario con privilegios mínimos, permisos adecuados en carpetas, etc.)
• Aprovechar las opciones de seguridad de los ficheros .htacces (o equivalentes en tu servidor web).
• ¡Protege tus ficheros .htaccess!
• Usar Web Application Firewall (WAF): ModSecurity (www.modsecurity.org)
• Usar un cortafuegos que trabaje con ModSecurity.
• Plugins como NginxCp sobre Cpanel, si usas Nginx em vez de Apache: www.nginxcp.com
Como editar los ficheros .htaccess en Cpanel
Fuente: http://portal.hostingdepago.com/knowledgebase/34/Como-editar-el-htaccess-desde-cpanel.html
Modsecurity
• Tutorial de instalación y configuración básica de Modsecurity en Debian o Ubuntu:
– https://www.digitalocean.com/community/tutorials/how-to-set-up-mod_security-with-apache-on-debian-ubuntu
• Documentación oficial de Modsecurity: https://modsecurity.org/documentation.html
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Actualizaciones, actualizaciones, actualizaciones.
• Mantén WP actualizado: core, themes, plugins – Esto se ha facilitado mucho desde la versión 4.0 com
las actualizaciones automáticas.
– Pero corre de nuestra cuenta si las hemos deshabilitado o WP no tiene permisos para hacerlas.
• Instala siempre desde las fuentes originales (no
aceptes regalos envenenados).
• Pero también actualizar el servidor web, la base de datos, el sistema operativo, etc.
• Y recuerda cambiar periódicamente las contraseñas (cuenta como una actualización )
Actualizaciones, actualizaciones, actualizaciones.
• Una estrategia que ayuda es marcar en nuestra agenda eventos periódicos que nos recuerden que tipo de actualizaciones tocan en esas fechas.
• Nos ayuda además a reservar el tiempo necesario para poder llevarlas a cabo.
• A veces nos toca actualizar por sorpresa (se publica un exploit de un 0-day).
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Como estar al día
• Anuncios de seguridad del proyecto WordPress. En general sólo publican anuncios cuando sale una nueva versión con correcciones de errores de seguridad): https://wordpress.org/news/category/security/
• Base de datos de errores de seguridad del proyecto WPScan. Incluye WP, plugins y temas. Permite suscripciones por correo: https://wpvulndb.com/
• Plugin que comprueba vulnerabilidades de los plugins que tenemos instalados: Plugin Vulnerabilities: https://wordpress.org/plugins/plugin-vulnerabilities/
Como estar al día
• Plugin que comprueba qué plugins de los que tenemos instalados ya no existen en el directorio de plugins de wordpress.org (y por tanto no están mantenidos ni reciben correcciones de seguridad): Longer in Directory: https://wordpress.org/plugins/no-longer-in-directory/
• Listado de problemas de seguridad de WordPress, con número CVE asignado: http://www.cvedetails.com/vendor/2337/Wordpress.html
Contenidos
• ¿Cómo de seguro es WordPress?
• Seguridad de la base de datos de WordPress.
• Seguridad de las cuentas de usuario de WordPress.
• Plugins de seguridad que nos pueden ayudar.
• Las copias de seguridad, esas grandes desconocidas.
• Seguridad del servidor web y del sistema operativo del servidor.
• Actualizaciones, actualizaciones, actualizaciones.
• Como estar al día.
• Una opción a valorar: externalización de la gestión de la seguidad.
Una opción a valorar: externalización de la gestión de la seguidad.
• Muchas veces no podemos, o no queremos, hacer todo lo anterior.
• Si no es parte del core de tu negocio, puedes externalízarlo .
• Además de lo anterior podemos querer: – Curación de temas y plugins a usar, – Monitorización de intentos de intrusión, – Informes de estado, etc.
• Puede que se restringa tu rango de opciones en cuanto temas, plugins, configuración, etc. – De nuevo el compromiso seguridad conveniencia
• Es muy similar al modelo de wordpress.com (aunque no son los únicos).
Eskerrik asko!
Iñaki Arenaza Mondragon Unibertsitatea [email protected]
https://twitter.com/iarenaza https://linkedin.com/in/iarenaza