SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Meetup WordPress Barcelona
@josecontic
http://www.joseconti.com
Usad el hashtag para Twitter
#wpbarcelona
Meetup WordPress Barcelona
@josecontic
http://www.joseconti.com
Meetup WordPress Barcelona
@josecontic
http://www.joseconti.com
La inmensa mayoría de veces no sabremos que nos han hackeado



Estaremos dentro de una botnet
Meetup WordPress Barcelona
@josecontic
http://www.joseconti.com
Meetup WordPress Barcelona
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Dónde actuar
Selección de hosting

Durante la instalación
En la estructura
Con plugins
Mantenimiento
Estar al dia
Meetup WordPress Barcelona
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Selección de Hosting
Meetup WordPress Barcelona
La selección de un hosting es
el primer arma que tenemos
para protegernos
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Selección de Hosting
Meetup WordPress Barcelona
Un hosting que no esté bien
preparado y configurado
significa que nos hackearan
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Selección de Hosting
Meetup WordPress Barcelona
suPHP o mod_ruid2
Jailed Shell
Si tenéis que dar permisos a
directorios y/o archivos
Cambiad de Hosting
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Selección de Hosting
Meetup WordPress Barcelona
Los permisos siempre deben ser
750 o 755 > directorios
644 o 640 > archivos



wp-config puede tener 600
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Selección de Hosting
Meetup WordPress Barcelona
Si tenéis que dar permisos a
directorios y/o archivos
Cambiad de Hosting
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Meetup WordPress Barcelona
Nombre de base de datos complejo
Usuario base de datos complejo
Contraseña base de datos compleja
Nunca dejar prefijo wp_
Usuario WordPress de dos o más palabras
Contraseña compleja (WordPress ahora nos ofrece una)
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Seguridad en WordPress de la A a la Z
Meetup WordPress Barcelona
El usuario administrador que hemos creado
será temporal. Crearemos uno nuevo en el momento
en que accedamos a WordPress por primera vez.
Eliminaremos los permisos de administrador al
usuario creado durante la instalación.
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
En la estructura
WordCamp Barcelona 2015
Mover wp-config.php al directorio superior
Permisos correctos de archivos y directorios

Siempre tener rellenado los Security Keys
Posibilidad de mover wp-content
Posibilidad de mover directorio plugins

Posibilidad de mover directorio themes

Posibilidad de mover directorio uploads
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Mover directorio wp-content
define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/directorio/wp-content' );
define( 'WP_CONTENT_URL', ‘http://ejemplo.com/directorio/wp-content' );
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Mover directorio plugins
define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/wp-content/plugins' );
define( 'WP_PLUGIN_URL', ‘http://ejemplo.com/wp-content/plugins' );
define( 'PLUGINDIR', dirname(__FILE__) . '/wp-content/plugins' );

@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Mover directorio themes
No se puede mover, ya que está en el core

$theme_root = WP_CONTENT_DIR . '/themes'; 



Pero se puede añadir nuevos directorios para themes:



<?php register_theme_directory( $directory ) ?>

@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Mover directorio uploads
define( 'UPLOADS', 'wp-content/uploads' );
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
.htaccess
Solo permitir algunos archivos en wp-content

Poner un .htaccess dentro de wp-content



# Bloquear acceso a todos los archivos excepto a los siguientes
Order deny,allow
Deny from all
<Files ~ ".(xml|css|js|jpe?g|png|gif|pdf|docx|rtf|odf|zip|rar)$">
Allow from all
</Files>
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
.htaccess
Bloquear acceso a wp-includes


# Bloquear archivos y directorios
<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>
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
.htaccess
Aceptar solo a ciertas IPs acceder a wp-admin

Se requiere IP estática


# Limitar acceso a wp-admin a estas IPs
<Limit GET POST PUT>
order deny,allow
deny from all
allow from 000.000.000.000
allow from DIRECCION_IP_2
</Limit>
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
.htaccess
Proteger wp-config.php y todos los .htaccess
# Denegar acceso a wp-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>
# Denegar acceso a todos los archivos .htaccess
<files ~ "^.*.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
.htaccess

Escondiendo nuestra versión de WordPress
Proteger readme.html y license.txt ( ¿y xmlrpc.php?
#Proteger readme.html y license.txt
<FilesMatch "^(readme.html|license.txt)">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
functions.php (o plugin propio)
Escondiendo nuestra versión de WordPress
function tusitio_eliminar_version() {
return '';
}
add_filter('the_generator', 'tusitio_eliminar_version');
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
.htaccess
Protegerse del hotlinking
# Previene el hotlinking mostrando otra imagen.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?tusitio.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?otrositiotuyo.com [NC]
RewriteRule .(jpg|jpeg|png|gif)$ http://i.imgur.com/MlQAH71.jpg [NC,R,L]
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
wp-config.php
No mostrar errores en pantalla
error_reporting( 0 );

@ini_set( 'display_errors', 0 );
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
wp-config.php
No permitir editar archivos
define( 'DISALLOW_FILE_EDIT', true );
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Forzar SSL para el admin
Si tenemos certificado



define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
SSL gratuito y fiable
Let’s Encrypt
https://letsencrypt.org
Pero necesitas de un hosting que te lo ofrezca
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Forzar el SSL, es importantes si nos conectamos
con conexiones públicas y no usamos un VPN
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Backup
WordCamp Barcelona 2015
Es el primer plugin que se debe instalar.
BackWPup
BackupBuddy
o incluso Duplicator
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Protección
WordCamp Barcelona 2015
Los plugins de protección, añadirán una capa
en nuestro WordPress
Wordfence Security
iThemes Security
Login Security Solution
BulletProof Security
Anti-Malware Security and Brute-Force Firewall
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Control
WordCamp Barcelona 2015
Los plugins de control nos ayudaran a
controlar nuestro WordPress
Wordfence Security
Antivirus
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Themes
WordCamp Barcelona 2015
Nunca descargar themes (o plugins) que no estén en sitios de confianza
Nunca descargar themes (o plugins) de pago desde

sitios que los ofrece de forma gratuita
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Themes
WordCamp Barcelona 2015
Si instalas contenido dummy en tu theme,
elimínalo después



Puedes acabar en la blacklist de Google
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Mantenimiento
WordCamp Barcelona 2015
Imprescindible mantener todo actualizado.
Themes
Plugins
WordPress
(Todas las menores)
SO, PHP, MySQL, Apache, Nginx, etc.
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Mantenimiento
WordCamp Barcelona 2015
No os olvidéis de los plugins y themes premium

que no ofrecen actualizaciones gratuitas.
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
Estar al día
WordCamp Barcelona 2015
Hay que estar al día de todo.
Seguiremos cuentas de Twitter
Blogs de seguridad
Blogs sobre WordPress
Blogs oficiales
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z
@josecontic
http://www.joseconti.com
Cómo proteger WordPress y como limpiar una instalación hackeada.
WordCamp Barcelona 2015
Muchas gracias a todos
José Conti
www.joseconti.com
@josecontic
@josecontic
http://www.joseconti.comMeetup WordPress Barcelona
Seguridad en WordPress de la A a la Z

Weitere ähnliche Inhalte

Was ist angesagt?

WordCamp Barcelona 2016 - Plugins para TinyMCE
WordCamp Barcelona 2016 - Plugins para TinyMCEWordCamp Barcelona 2016 - Plugins para TinyMCE
WordCamp Barcelona 2016 - Plugins para TinyMCERaúl Martínez
 
20 claves de Seguridad WordPress
20 claves de Seguridad WordPress20 claves de Seguridad WordPress
20 claves de Seguridad WordPressFernando Tellado
 
SemanaWP: Cómo crear un plugin para WordPress
SemanaWP: Cómo crear un plugin para WordPressSemanaWP: Cómo crear un plugin para WordPress
SemanaWP: Cómo crear un plugin para WordPressOscar Abad Folgueira
 
Crear Plugin de WordPress desde Cero
Crear Plugin de WordPress desde CeroCrear Plugin de WordPress desde Cero
Crear Plugin de WordPress desde CeroEduardo Turiño
 
mootools y sexyimages
mootools y sexyimagesmootools y sexyimages
mootools y sexyimagesCW
 
Cómo crear plugins para Wordpress
Cómo crear plugins para WordpressCómo crear plugins para Wordpress
Cómo crear plugins para Wordpressralcocer
 
Vue + Typescript: Decorators vs. Extend, Fight!
Vue + Typescript: Decorators vs. Extend, Fight!Vue + Typescript: Decorators vs. Extend, Fight!
Vue + Typescript: Decorators vs. Extend, Fight!Sara Lissette L. Ibáñez
 
Silex para aplicaciones web MVC
Silex para aplicaciones web MVCSilex para aplicaciones web MVC
Silex para aplicaciones web MVCAsier Marqués
 
Webinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHPWebinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHPArsys
 
Guia word press
Guia word pressGuia word press
Guia word pressivan1587
 
Introduccion a Python para la web
Introduccion a Python para la webIntroduccion a Python para la web
Introduccion a Python para la webArsys
 

Was ist angesagt? (20)

WordCamp Barcelona 2016 - Plugins para TinyMCE
WordCamp Barcelona 2016 - Plugins para TinyMCEWordCamp Barcelona 2016 - Plugins para TinyMCE
WordCamp Barcelona 2016 - Plugins para TinyMCE
 
20 claves de Seguridad WordPress
20 claves de Seguridad WordPress20 claves de Seguridad WordPress
20 claves de Seguridad WordPress
 
SemanaWP: Cómo crear un plugin para WordPress
SemanaWP: Cómo crear un plugin para WordPressSemanaWP: Cómo crear un plugin para WordPress
SemanaWP: Cómo crear un plugin para WordPress
 
Crear Plugin de WordPress desde Cero
Crear Plugin de WordPress desde CeroCrear Plugin de WordPress desde Cero
Crear Plugin de WordPress desde Cero
 
Vagrant
VagrantVagrant
Vagrant
 
mootools y sexyimages
mootools y sexyimagesmootools y sexyimages
mootools y sexyimages
 
Cómo crear plugins para Wordpress
Cómo crear plugins para WordpressCómo crear plugins para Wordpress
Cómo crear plugins para Wordpress
 
Symfony
SymfonySymfony
Symfony
 
02practica completa
02practica completa02practica completa
02practica completa
 
Vue + Typescript: Decorators vs. Extend, Fight!
Vue + Typescript: Decorators vs. Extend, Fight!Vue + Typescript: Decorators vs. Extend, Fight!
Vue + Typescript: Decorators vs. Extend, Fight!
 
Podcats
PodcatsPodcats
Podcats
 
Introducción a Silex
Introducción a SilexIntroducción a Silex
Introducción a Silex
 
Silex para aplicaciones web MVC
Silex para aplicaciones web MVCSilex para aplicaciones web MVC
Silex para aplicaciones web MVC
 
Webinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHPWebinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHP
 
Curso De Wordpress
Curso De WordpressCurso De Wordpress
Curso De Wordpress
 
HTML5 Today #3
HTML5 Today #3HTML5 Today #3
HTML5 Today #3
 
Guia word press
Guia word pressGuia word press
Guia word press
 
Introduccion a Python para la web
Introduccion a Python para la webIntroduccion a Python para la web
Introduccion a Python para la web
 
Presentación WORDPRESS
Presentación WORDPRESSPresentación WORDPRESS
Presentación WORDPRESS
 
WordPress
WordPressWordPress
WordPress
 

Ähnlich wie La seguridad en WordPress de la A a la Z

Seguridad en WordPress
Seguridad en WordPressSeguridad en WordPress
Seguridad en WordPressPedro Santos
 
Seguridad en WordPress, fundamentos y mejores prácticas
Seguridad en WordPress, fundamentos y mejores prácticasSeguridad en WordPress, fundamentos y mejores prácticas
Seguridad en WordPress, fundamentos y mejores prácticasLucy Tomas
 
Seguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup MajadahondaSeguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup MajadahondaPedro Santos
 
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
 
Monta WordPress en tu empresa
Monta WordPress en tu empresaMonta WordPress en tu empresa
Monta WordPress en tu empresaIñaki Arenaza
 
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
 
Curso Blog Marketing con Wordpress 02 instalacion local
Curso Blog Marketing con Wordpress 02 instalacion localCurso Blog Marketing con Wordpress 02 instalacion local
Curso Blog Marketing con Wordpress 02 instalacion localDavid Vaquero
 
WordPress Multisite, un WordPress para dominarlos a todos
WordPress Multisite, un WordPress para dominarlos a todosWordPress Multisite, un WordPress para dominarlos a todos
WordPress Multisite, un WordPress para dominarlos a todosOscar Abad Folgueira
 
practica 1 apache
practica 1 apachepractica 1 apache
practica 1 apachecaoxman
 
Manualdeinstalacciondewordpress 101107030734-phpapp01
Manualdeinstalacciondewordpress 101107030734-phpapp01Manualdeinstalacciondewordpress 101107030734-phpapp01
Manualdeinstalacciondewordpress 101107030734-phpapp01Juan Camilo Garcia C
 
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
 
Taller de WordPress avanzado | #EBE11
Taller de WordPress avanzado | #EBE11Taller de WordPress avanzado | #EBE11
Taller de WordPress avanzado | #EBE11Rafael Poveda
 
Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02Josefina Moratalla
 
OWASP y seguridad WordPress
OWASP y seguridad WordPressOWASP y seguridad WordPress
OWASP y seguridad WordPressFernando Tellado
 
Red t3 practica1_apachecms
Red t3 practica1_apachecmsRed t3 practica1_apachecms
Red t3 practica1_apachecmsgarciadebora
 

Ähnlich wie La seguridad en WordPress de la A a la Z (20)

Blinda tu WordPress y evitate disgustos
Blinda tu WordPress y evitate disgustosBlinda tu WordPress y evitate disgustos
Blinda tu WordPress y evitate disgustos
 
Seguridad en WordPress
Seguridad en WordPressSeguridad en WordPress
Seguridad en WordPress
 
Seguridad en WordPress, fundamentos y mejores prácticas
Seguridad en WordPress, fundamentos y mejores prácticasSeguridad en WordPress, fundamentos y mejores prácticas
Seguridad en WordPress, fundamentos y mejores prácticas
 
Seguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup MajadahondaSeguridad WordPress Meetup Majadahonda
Seguridad WordPress Meetup Majadahonda
 
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
 
Monta WordPress en tu empresa
Monta WordPress en tu empresaMonta WordPress en tu empresa
Monta WordPress en tu empresa
 
Carlos Pascual #WPvalladolid 2014
Carlos Pascual #WPvalladolid 2014Carlos Pascual #WPvalladolid 2014
Carlos Pascual #WPvalladolid 2014
 
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...
 
Instalación de cms en un servidor
Instalación de cms en un servidorInstalación de cms en un servidor
Instalación de cms en un servidor
 
Manual de instalaccion de wordpress
Manual de instalaccion de wordpressManual de instalaccion de wordpress
Manual de instalaccion de wordpress
 
Curso Blog Marketing con Wordpress 02 instalacion local
Curso Blog Marketing con Wordpress 02 instalacion localCurso Blog Marketing con Wordpress 02 instalacion local
Curso Blog Marketing con Wordpress 02 instalacion local
 
WordPress Multisite, un WordPress para dominarlos a todos
WordPress Multisite, un WordPress para dominarlos a todosWordPress Multisite, un WordPress para dominarlos a todos
WordPress Multisite, un WordPress para dominarlos a todos
 
practica 1 apache
practica 1 apachepractica 1 apache
practica 1 apache
 
Manualdeinstalacciondewordpress 101107030734-phpapp01
Manualdeinstalacciondewordpress 101107030734-phpapp01Manualdeinstalacciondewordpress 101107030734-phpapp01
Manualdeinstalacciondewordpress 101107030734-phpapp01
 
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...
 
Taller de WordPress avanzado | #EBE11
Taller de WordPress avanzado | #EBE11Taller de WordPress avanzado | #EBE11
Taller de WordPress avanzado | #EBE11
 
Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02
 
Dockers y wp
Dockers y wpDockers y wp
Dockers y wp
 
OWASP y seguridad WordPress
OWASP y seguridad WordPressOWASP y seguridad WordPress
OWASP y seguridad WordPress
 
Red t3 practica1_apachecms
Red t3 practica1_apachecmsRed t3 practica1_apachecms
Red t3 practica1_apachecms
 

La seguridad en WordPress de la A a la Z

  • 1. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Meetup WordPress Barcelona
  • 2. @josecontic http://www.joseconti.com Usad el hashtag para Twitter #wpbarcelona Meetup WordPress Barcelona @josecontic http://www.joseconti.com Meetup WordPress Barcelona
  • 3. @josecontic http://www.joseconti.com La inmensa mayoría de veces no sabremos que nos han hackeado
 
 Estaremos dentro de una botnet Meetup WordPress Barcelona @josecontic http://www.joseconti.com Meetup WordPress Barcelona
  • 4. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Dónde actuar Selección de hosting
 Durante la instalación En la estructura Con plugins Mantenimiento Estar al dia Meetup WordPress Barcelona
  • 5. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Selección de Hosting Meetup WordPress Barcelona La selección de un hosting es el primer arma que tenemos para protegernos @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 6. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Selección de Hosting Meetup WordPress Barcelona Un hosting que no esté bien preparado y configurado significa que nos hackearan @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 7. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Selección de Hosting Meetup WordPress Barcelona suPHP o mod_ruid2 Jailed Shell Si tenéis que dar permisos a directorios y/o archivos Cambiad de Hosting @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 8. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Selección de Hosting Meetup WordPress Barcelona Los permisos siempre deben ser 750 o 755 > directorios 644 o 640 > archivos
 
 wp-config puede tener 600 @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 9. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Selección de Hosting Meetup WordPress Barcelona Si tenéis que dar permisos a directorios y/o archivos Cambiad de Hosting @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 10. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Meetup WordPress Barcelona Nombre de base de datos complejo Usuario base de datos complejo Contraseña base de datos compleja Nunca dejar prefijo wp_ Usuario WordPress de dos o más palabras Contraseña compleja (WordPress ahora nos ofrece una) @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 11. @josecontic http://www.joseconti.com Seguridad en WordPress de la A a la Z Meetup WordPress Barcelona El usuario administrador que hemos creado será temporal. Crearemos uno nuevo en el momento en que accedamos a WordPress por primera vez. Eliminaremos los permisos de administrador al usuario creado durante la instalación. @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 12. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. En la estructura WordCamp Barcelona 2015 Mover wp-config.php al directorio superior Permisos correctos de archivos y directorios
 Siempre tener rellenado los Security Keys Posibilidad de mover wp-content Posibilidad de mover directorio plugins
 Posibilidad de mover directorio themes
 Posibilidad de mover directorio uploads @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 13. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Mover directorio wp-content define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/directorio/wp-content' ); define( 'WP_CONTENT_URL', ‘http://ejemplo.com/directorio/wp-content' ); @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 14. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Mover directorio plugins define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/wp-content/plugins' ); define( 'WP_PLUGIN_URL', ‘http://ejemplo.com/wp-content/plugins' ); define( 'PLUGINDIR', dirname(__FILE__) . '/wp-content/plugins' );
 @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 15. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Mover directorio themes No se puede mover, ya que está en el core
 $theme_root = WP_CONTENT_DIR . '/themes'; 
 
 Pero se puede añadir nuevos directorios para themes:
 
 <?php register_theme_directory( $directory ) ?>
 @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 16. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Mover directorio uploads define( 'UPLOADS', 'wp-content/uploads' ); @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 17. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 .htaccess Solo permitir algunos archivos en wp-content
 Poner un .htaccess dentro de wp-content
 
 # Bloquear acceso a todos los archivos excepto a los siguientes Order deny,allow Deny from all <Files ~ ".(xml|css|js|jpe?g|png|gif|pdf|docx|rtf|odf|zip|rar)$"> Allow from all </Files> @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 18. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 .htaccess Bloquear acceso a wp-includes 
 # Bloquear archivos y directorios <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> @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 19. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 .htaccess Aceptar solo a ciertas IPs acceder a wp-admin
 Se requiere IP estática 
 # Limitar acceso a wp-admin a estas IPs <Limit GET POST PUT> order deny,allow deny from all allow from 000.000.000.000 allow from DIRECCION_IP_2 </Limit> @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 20. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 .htaccess Proteger wp-config.php y todos los .htaccess # Denegar acceso a wp-config.php <files wp-config.php> order allow,deny deny from all </files> # Denegar acceso a todos los archivos .htaccess <files ~ "^.*.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </files> @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 21. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 .htaccess
 Escondiendo nuestra versión de WordPress Proteger readme.html y license.txt ( ¿y xmlrpc.php? #Proteger readme.html y license.txt <FilesMatch "^(readme.html|license.txt)"> Order allow,deny Deny from all Satisfy All </FilesMatch> @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 22. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 functions.php (o plugin propio) Escondiendo nuestra versión de WordPress function tusitio_eliminar_version() { return ''; } add_filter('the_generator', 'tusitio_eliminar_version'); @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 23. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 .htaccess Protegerse del hotlinking # Previene el hotlinking mostrando otra imagen. RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?tusitio.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?otrositiotuyo.com [NC] RewriteRule .(jpg|jpeg|png|gif)$ http://i.imgur.com/MlQAH71.jpg [NC,R,L] @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 24. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 wp-config.php No mostrar errores en pantalla error_reporting( 0 );
 @ini_set( 'display_errors', 0 ); @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 25. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 wp-config.php No permitir editar archivos define( 'DISALLOW_FILE_EDIT', true ); @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 26. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Forzar SSL para el admin Si tenemos certificado
 
 define('FORCE_SSL_LOGIN', true); define('FORCE_SSL_ADMIN', true); @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 27. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 SSL gratuito y fiable Let’s Encrypt https://letsencrypt.org Pero necesitas de un hosting que te lo ofrezca @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 28. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Forzar el SSL, es importantes si nos conectamos con conexiones públicas y no usamos un VPN @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 29. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Backup WordCamp Barcelona 2015 Es el primer plugin que se debe instalar. BackWPup BackupBuddy o incluso Duplicator @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 30. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Protección WordCamp Barcelona 2015 Los plugins de protección, añadirán una capa en nuestro WordPress Wordfence Security iThemes Security Login Security Solution BulletProof Security Anti-Malware Security and Brute-Force Firewall @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 31. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Control WordCamp Barcelona 2015 Los plugins de control nos ayudaran a controlar nuestro WordPress Wordfence Security Antivirus @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 32. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Themes WordCamp Barcelona 2015 Nunca descargar themes (o plugins) que no estén en sitios de confianza Nunca descargar themes (o plugins) de pago desde
 sitios que los ofrece de forma gratuita @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 33. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Themes WordCamp Barcelona 2015 Si instalas contenido dummy en tu theme, elimínalo después
 
 Puedes acabar en la blacklist de Google @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 34. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Mantenimiento WordCamp Barcelona 2015 Imprescindible mantener todo actualizado. Themes Plugins WordPress (Todas las menores) SO, PHP, MySQL, Apache, Nginx, etc. @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 35. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Mantenimiento WordCamp Barcelona 2015 No os olvidéis de los plugins y themes premium
 que no ofrecen actualizaciones gratuitas. @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 36. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. Estar al día WordCamp Barcelona 2015 Hay que estar al día de todo. Seguiremos cuentas de Twitter Blogs de seguridad Blogs sobre WordPress Blogs oficiales @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z
  • 37. @josecontic http://www.joseconti.com Cómo proteger WordPress y como limpiar una instalación hackeada. WordCamp Barcelona 2015 Muchas gracias a todos José Conti www.joseconti.com @josecontic @josecontic http://www.joseconti.comMeetup WordPress Barcelona Seguridad en WordPress de la A a la Z