Si no habéis visto la charla de nuestras #guardianasdelanube en la Mobile Week de Alcalá 2021, te dejo este post con las trascripciones aproximadas de los momentos más importantes sobre la charla de Seguridad en WordPress para que te empapes sobre cómo hacer que tu WordPress sea lo más seguro posible.
Seguridad en WordPress. ¿Por qué atacan a los sitios web con WordPress?
La respuesta es de cajón… a más popularidad, más ataques.
Vulnerabilidades en un sitio hecho con WordPress:
- File Inclusion.
- DDos
- RCE
- XSS
- CSRF
- SQL Injection
- Directory Traversal
La intención de la charla era explicar un poquito el tema de la seguridad en WordPress que siempre es muy subjetivo y no hay que tener muchísimas cosas en cuenta, pero sobre todo la finalidad es que las personas que leen nuestros post o acuden a nuestras charlas aprendan a prevenir.
Muchas veces nos limitamos a buscar en Google cómo hacer mi WordPress más seguro y nos encontramos con muchísimos posts con listados de medidas de seguridad que tenemos que ir implementando… por ejemplo…
Copiamos el código en nuestro htacces, pero no sabemos realmente qué es lo que estamos haciendo…
En esta charla sobre seguridad en WordPress Erica Aguado y Patricia Navarro, nos han explicado las medidas que encontraréis en muchísimos blogs de seguridad en WordPress, cómo implementarlas de manera correcta. Muchas veces, el no hacerlo bien, está relacionado con los tipos de ataques que recibimos.
Y esto no solo sirve para la seguridad en WordPress. Sirve para cualquier gestor de contenidos.
Las vulnerabilidades más comunes son:
En primer lugar, los ataques DDos.
Distributed Denia lof Service (denegación de servicio distribuido)
Es un ataque que se lleva a cabo generando un gran flujo de información desde varios puntos de conexión hacia un mismo punto de destino, provocando la pérdida de conectividad por el elevado consumo de ancho de banda o por la sobrecarga de recursos.
La forma más común de realizar un DDoS es a través de una red de bots (botnet).
Según Erica Aguado, son ataques que lo que intentan es aprovechar vulnerabilidades que realizan peticiones a nuestro sitio web. Por ejemplo, una petición es cuando en nuestro navegador añadimos una url o simplemente clicamos en alguna parte de nuestra web y vamos a pedir una información al servidor que nos va a devolver una cantidad de información. Esa cantidad de información, consume recursos, entonces, cuanta más peticiones hagamos, más solicitudes de información y más recursos consumimos. Dependerá también de lo que pida. La finalidad es pedir mucha información para saturar los recursos de nuestro servidor y dejar nuestra web inservible.
¿Cómo podemos evitar problemas de ataques DDos?
- Bloquear XML-RCP
- Desactivar API Rest
- Limita los intentos de acceso para que para evitar que saturen nuestro servidor o nuestros recursos pidiendo toda esa información.
- Desactivar pinbacks
- Desactivar concatenación de scripts
- Activar WAF
- Por otra parte, tenemos los ataques RC
- Remote Code Execution.
La ejecución de código remoto trata de una vulnerabilidad que permite la ejecución de código o comandos remotamente aprovechando un fallo en la programación o alguna función de PHP.
Intentan ejecutar de forma remota código en nuestra página web aprovechando alguna vulnerabilidad y aquí tenemos siempre seguro que lo habréis visto en alguna guía de seguridad ejecutar directorios de código PHP en directorios que no necesita WordPress.
¿Cómo evitar este fallo de seguridad?
- Tener las actualizaciones al día
- Prohibir PHP en el directorio wp-includes
- Prohibir PHP en el directorio wp-content/uploads
- Desactivar la ejecución de PHP en directorios de la caché
- Desactivar lenguajes de scripting no usados (Python, perl, etc…)
- Bloquear análisis autor
- Firewall
Y lo que reiteran Patricia Navarro y Erica Aguado en sucesivas ocasiones a lo largo de la charla sobre seguridad en WordPress es que nos ponemos a copiar como locos código y no sabemos ni lo que hacemos.
Ataques XXS
Los ataques XXS también llamados en inglés Cross-site scripting son un tipo de ataque que aprovecha vulnerabilidades en el código que permitirían a una tercera persona inyectar, en páginas web visitadas por el usuario, código JavaScript no autorizado y ejecutarlo.
El script malicioso se podría ejecutar almacenándolo en el servidor o directamente en el lado del usuario en el navegador.
Cómo evitar los ataques XXS
- Cookies de sesión con HTTP X-Frame-Options
- Encabezado HTTP seguros, como Content Security Policy (CSP)
- Desactivar el HTTP TRACE / TRACK
- Firewall
- Por otra parte tenemos el Directory traversal.
Ataques por cruce de directorios
Los ataques por cruce de directorios son un ataque HTTP que permite a un atacante aprovechar una vulnerabilidad en el recorrido de directorios para acceder a archivos, directorios y/o comandos.
Mucha gente cree que no es en sí un ataque porque es una forma de listar los ficheros que tú tienes en tu WordPress.
Una vulnerabilidad de algún plugin que te permita ver todos los ficheros a través del navegador por el protocolo HTTP y podemos listar todos los ficheros que tenemos.
¿Por qué lo consideran un ataque? Porque nos va a dar información de fallos que pueda tener la seguridad de WordPress en nuestro sitio web.
¿Cómo podemos evitar el ataque por cruce de directorios?
- Bloquear exploración de directorios
- Permisos de ficheros
- Bloquear el acceso a archivos confidenciales
- Bloquear análisis autor
- Ocultar versiones
- Firewall
Ataque por SQL injection.
Los ataques por Inyección SQL aprovechan vulnerabilidades para infiltrar o incrustar código SQL intruso aprovechando la falta de comprobación de las variables con el fin de quebrantar las medidas de seguridad y acceder a datos protegidos.
¿Cómo evitar los ataques por SQL injection?
- Actualizaciones
- Configuración de las Security Keys
- Cambia el prefijo de la base de datos
- Evita la inyección de scripts
- Proteger htaccess y wp-config.php
- Prevenir el índice de directorios en robots.txt
Vulnerabilidad del navegador de tipo CRF
Cross-site request forgery o falsificación de petición en sitios cruzados.
Fuerza al navegador web de un usuario registrado a enviar una petición que pasa por otra aplicación, y la utiliza para realizar una acción maliciosa en nombre del usuario. Se suele usar para estafas por internet y el proceso se lleva a cabo mediante solicitudes HTTP.
¿Cómo evitarlo?
- HTTPS (HSTS)
- Usal última versión de PHP
- Configuración cabeceras HTTP seguras
- Impedir acceso a servidores externos
- Evitar subida de ficheros en formularios
- Firewall
Ataque por RFI
El File inclusión es un ataque por RFI (del Inglés Remote File Inclusion), traducido al español como Inclusión Remota de Archivos). Una vulnerabilidad que lo que haces es añadir de ficheros directamente en tu WordPress ficheros que no son nativos de WordPress. Existe un plugin de WordPress que se llama File Manager que permite que un administrador pueda subir ficheros y este plugin deja una vulnerabilidad que es que cualquiera que no esté logueado en la página web pueda subir ficheros. Esto puede llevar a que saquen datos y hacernos cualquier cosa… redirecciones y todo lo que quiera
¿Cómo evitarlo podemos evitar el ataque por RFI?
- Actualizaciones
- Permisos de ficheros
- Últimas versiones de PHP
- Prohibir PHP en el directorio wp-includes
- Prohibir PHP en el directorio wp-content/uploads
- Desactivar la ejecución de PHP en directorios de la caché
¿Qué pasos seguir ante un hackeo?
Por último y para finalizar la charla, Erica Aguado y Patricia Navarro nos explicaron, qué pasos debíamos seguir ante un hackeo.
Asegurarse de tener un Plan de Contingencia para reanudar la actividad lo antes posible y si lo crees necesario una póliza de ciberseguridad, antes de que nada suceda.
Pasos a seguir ante un ataque.
Identificar.
Identificación clara de qué ha ocurrido, qué daños hemos sufrido y su repercusión. Y sobre todo, encontrar vulnerabilidad.
Comunicar.
Comunicarlo a la Agencia Española de Protección de Datos. Especialmente si se han comprometido datos de clientes, empleados o proveedores. Denunciarlo y aportar pruebas.
Recuperar.
Recuperación de los sistemas que se hayan visto afectados y paliar sus efectos cuanto antes.
Recordad que podéis ver la charla completa justo aquí…
Y si necesitas ayuda con la seguridad de WordPress contáctanos.