3. La seguridad empieza por uno mismo
Contraseñas Seguras y diferentes
S.O. y navegadores actualizados
Antivirus completos, PC y Mac
Core, plugins y themes actualizados
NUNCA UTILIZAR THEMES Y PLUGINS NULLED
BACKUPS
4. Instalando WordPress
Nombre de la Base de Datos, no usar wp
Prefijo tablas de la BD, no usar wp
No usar admin, Admin, Administrator,
administrator, nombre de dominio
6. Ataques de fuerza en bruto
Doble autenticación
Creamos dos archivos en la raíz del hosting
.htaccess y .wpadmin
Contenido .htaccess
ErrorDocument 401 "Unauthorized Access"
ErrorDocument 403 "Forbidden"
<FilesMatch "wp-login.php">
AuthName "Authorized Only"
AuthType Basic
AuthUserFile /home/usuario/.wpadmin
require valid-user
</FilesMatch>
Contenido .wpadmin
http://www.htaccesstools.com/htpasswd-generator/
pepitodelospalotes:$apr1$Vo5OdtZe$irw0TeFV.ImpUFKIVDL/A
7. Ataques de fuerza en bruto
Dirección ip única
Desde el .htaccess de WordPress
<Files wp-login.php>
order deny,allow
allow from xxx.xxx.xxx.xxx
deny from all
</Files>
Sustituir xxx.xxx.xxx.xxx por nuestra ip
8. Plugins Doble factor
• Clef Two-Factor Authentication
• Latch
• Two Factor Authentication
• Duo Two-Factor Authentication
9. Protección en .htaccess de WordPress
# sin acceso a proc/self/environ
RewriteCond %{QUERY_STRING} proc/self/environ [OR]
# bloquear cualquier script que trate de establecer un valor mosConfig a traves de una URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
# bloquear cualquier script que trate de colocarte codigo codificado base64_encode a traves de una URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# bloquea cualquier script que incluya la tag <script> en la URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
# bloquea cualquier script que trate de establecer la variable PHP GLOBALS a traves de una URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
# bloquea cualquier script que trate de modificar una variable _REQUEST a traves de una URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
# proteger wp-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>
10. Protección de los headers en .htaccess de WordPress
<IfModule mod_headers.c>
Header set X-XSS-Protection "1; mode=block”
</IfModule>
<IfModule mod_headers.c>
Header set X-Content-Type-Options nosniff
</IfModule>
<IfModule mod_headers.c>
Header always append X-Frame-Options SAMEORIGIN
</IfModule>
11. Protección de directorios con .htaccess
wp-content y wp-content/uploads
<Files *.php>
deny from all
</Files>
<Files *.php>
deny from all
</Files>
wp-includes
12. Protección contra edición de plugins y themes
Incluir en wp-config.php
define('DISALLOW_FILE_EDIT', TRUE);
13. Archivos que se pueden borrar de WordPress
readme.html
xmlrpc.php
15. Wordfence antivirus, firewall
-Scanner antimalware
-Comparador archivos
-Restauración de archivos
-Firewall bloqueo bots
-Bloqueo ipv4+ipv6 y rangos
-Doble factor autenticación
-Bloqueo países
-Auditoría contraseñas
-Network Wordfence
-Ataques fuerza en bruto
-Caché (Falcon)
-Protección directorios
-Aviso actualizaciones
16. Sucuri Security
-Scanner antimalware
-Modificación archivos
-Aviso login
-Oculta versión WordPress
-Protege directorio uploads
-Protege directorio wp-content
-Protege directorio wp-includes
-Chequea Security Keys (salts)
-Elimina readme.html
-Bloquea edición themes y plugins
-Chequea prefix BD
-Borra archivo error_log
-Herramientas post hack, reset de
salts, contraseña y plugins
17. Ninjafirewall WAF
-Estadísticas intentos hacks
-Comparador archivos
-Firewall múltiple opciones
-Políticas de Firewall
-Bloqueo bots
-Bloqueo uploads de archivos
-Chequeo de archivos
-Doble factor autenticación
-Bloqueo países
-Protección headers
-Firewall log + log live
-Editor de reglas de seguridad
-Actualización automática reglas de
seguridad
-Ataques fuerza en bruto
-Protección directorios
-Notificaciones
-Doble factor de autenticación
18. Seguridad para paranóicos
• Servidor con ModSecurity
• Servidor con Firewall
• Servidor LMD
• Cloudflare CDN
• Ninjafirewall
• Sucuri Security
• Wordfence
19. Recursos para estar al día
• https://wpvulndb.com/
• https://blog.sucuri.net/
• Plugin Vulnerabilities https://wordpress.org/
plugins/plugin-vulnerabilities/
• No Longer in Directory https://wordpress.org/
plugins/no-longer-in-directory/