La seguridad de WordPress como proceso
Publicado: 2022-03-10( Este artículo está amablemente patrocinado por Sucuri ). La seguridad de WordPress no tiene una buena reputación. Más del 70% de todos los sitios de WordPress tienen algún tipo de vulnerabilidad según una investigación realizada en más de 40.000 sitios de WordPress por Alexa. Si desarrolla temas o complementos de WordPress, o usa WordPress para sus sitios web, ese número debería asustarlo.
Hay muchas cosas que puede hacer para asegurarse de no ser parte del 70%, pero requiere más trabajo que simplemente instalar un complemento o escapar de una cadena. Muchos de los consejos de este artículo provienen de la guía de Sucuri sobre la seguridad de WordPress y de años de experiencia personal.
¿Es WordPress inseguro?
WordPress tiene la mayor participación de mercado entre los sistemas de administración de contenido y una participación de mercado del 30% entre los 10 millones de sitios más populares en la web. Ese tipo de éxito lo convierte en un gran objetivo para los hackers. WordPress no es menos seguro que otros sistemas de administración de contenido, simplemente es más exitoso.
Las vulnerabilidades en el núcleo de WordPress son responsables de menos del 10% de todos los hackeos de WordPress. La mayoría de ellos son de instalaciones de WordPress desactualizadas. La cantidad de hacks que ocurren en agujeros de seguridad reales en versiones actualizadas (también conocidas como exploits de día cero) en el núcleo de WordPress representan un pequeño porcentaje de todos los hacks.
El resto de los sitios infectados fueron causados por complementos, temas, alojamiento y usuarios. Y usted, como desarrollador de sitios web de WordPress, tiene control sobre todos ellos. Si esto le parece una gran molestia, entonces puedo recomendarle el plan de agencia de Sucuri. De lo contrario, ¡veamos cómo lidiar con la seguridad de WordPress nosotros mismos!
¿Quién te ataca y por qué?
Primero rompamos un mito: un sitio web pequeño de WordPress sigue siendo un objetivo atractivo para los piratas informáticos. Los ataques a nivel personal son muy raros. La mayoría de los sitios web de WordPress pirateados se ven comprometidos automáticamente por un bot o una red de bots.
Los bots son programas informáticos que buscan constantemente sitios web para piratear. No les importa quién eres; solo buscan una debilidad en tus defensas. Una red de bots combina el poder de cómputo de muchos bots para abordar tareas más grandes.
Los piratas informáticos buscan principalmente una forma de ingresar a su servidor para poder usar la potencia de cómputo de su servidor y liberarla en algún otro objetivo u objetivo. Los piratas informáticos quieren su servidor por las siguientes razones.
Envío de correo no deseado
El spam representa aproximadamente el 60% de todos los correos electrónicos y debe enviarse desde algún lugar. Muchos piratas informáticos quieren ingresar a su servidor a través de un complemento defectuoso o una versión antigua del núcleo de WordPress para poder convertir su servidor en una máquina de envío de correo no deseado.
Atacar otros sitios web
Los ataques distribuidos de denegación de servicio usan muchas computadoras para inundar un sitio web con tanto tráfico que no pueden seguir el ritmo. Estos ataques son muy difíciles de mitigar, especialmente cuando se hacen bien. Los piratas informáticos que ingresan a su servidor pueden agregarlo a un grupo de servidores para atacar sitios web.
Robo de recursos
La minería de criptomonedas es muy popular ahora, pero requiere mucha potencia informática. Los piratas informáticos que no quieren gastar mucho dinero en una granja de servidores irrumpirán en los sitios web de WordPress desprotegidos y obtendrán acceso a los servidores oa los visitantes de sus sitios web y robarán la potencia informática.
Mejorando las puntuaciones de SEO
Un truco particularmente popular para WordPress es obtener acceso a su base de datos y agregar un montón de texto (oculto) debajo de cada publicación, vinculando a otro sitio web. Es una forma realmente rápida de aumentar la puntuación de SEO, aunque Google está más atento a este comportamiento y las listas negras están aumentando.
### Robo de datos
Los datos son valiosos, especialmente cuando están vinculados a perfiles de usuario e información de comercio electrónico. Obtener estos datos y venderlos puede hacer que un atacante obtenga una buena ganancia.
¿Por qué importa la seguridad?
Además de no dar satisfacción a los delincuentes, hay muchas razones por las que su sitio web debería ser seguro de forma predeterminada. Habiendo limpiado y lidiado con muchos hacks de WordPress, seguramente puedo decir que nunca ocurren en un momento conveniente. La limpieza puede llevar horas y le costará dinero a usted o a su cliente.
Para que un sitio web de WordPress pirateado vuelva a funcionar, deberá eliminar y reemplazar cada parte del código de terceros (incluido el núcleo de WordPress); revise su propio código línea por línea y todas las demás carpetas en el servidor para asegurarse de que aún estén limpias; comprobar si los usuarios no autorizados han obtenido acceso; y reemplace todas las contraseñas en WordPress, en su servidor y en su base de datos.
Muchos servicios pueden limpiar un sitio web de WordPress por ti, pero la prevención es mucho mejor a largo plazo.
Además del costo de la limpieza, los hacks también pueden costarle mucho en ventas perdidas o clientes potenciales. Los hacks lo mueven más abajo en las clasificaciones de búsqueda, lo que resulta en menos visitantes y menos conversiones.
Más que el costo financiero, ser pirateado daña su reputación. Los visitantes llegan a su sitio web porque confían en usted. Ser pirateado daña tu reputación, y eso lleva mucho tiempo repararlo.
También existe una posibilidad real de problemas legales, especialmente si tiene clientes en la UE, donde la legislación GDPR entrará en vigencia en el verano de 2018. Esa nueva legislación incluye una multa considerable por violaciones de datos que no se manejan adecuadamente.
Dinero, reputación y problemas legales: la mala seguridad puede costarle mucho. Invertir algo de tiempo en configurar su sitio web, código y equipo con una mentalidad de seguridad definitivamente valdrá la pena.
Averigüemos cómo podemos prevenir toda esta maldad.
La tríada de la CIA
La tríada CIA es un marco básico para todo proyecto de seguridad digital. Es sinónimo de confidencialidad, integridad y disponibilidad. CIA es un conjunto de reglas que limita el acceso a la información a las partes correctas, se asegura de que la información sea confiable y precisa, y garantiza un acceso confiable a esa información.
Para WordPress, el marco de la CIA se reduce a lo siguiente.
Confidencialidad
Asegúrese de que los usuarios registrados tengan asignados los roles correctos y que sus capacidades se mantengan bajo control. Otorgue a los usuarios solo el acceso mínimo que necesitan y asegúrese de que la información del administrador no se filtre a la parte equivocada. Puede hacerlo fortaleciendo el área de administración de WordPress y teniendo cuidado con los nombres de usuario y las credenciales.
Integridad
Muestre información precisa en su sitio web y asegúrese de que las interacciones de los usuarios en su sitio web se realicen correctamente.
Cuando acepte solicitudes tanto en el front-end como en el back-end, verifique siempre que la intención coincida con la acción real. Cuando se publiquen datos, siempre filtre los datos en su código en busca de contenido malicioso mediante desinfección y escapes. Asegúrese de que se elimine el spam utilizando un servicio de protección contra spam como Akismet.
Disponibilidad
Asegúrese de que su WordPress, complementos y temas estén actualizados y alojados en un host de WordPress confiable (preferiblemente administrado). Las copias de seguridad automáticas diarias también ayudan a garantizar que su sitio web permanezca disponible para el público.
Los tres elementos se apoyan entre sí para apoyarse. La integridad del código no funcionará por sí sola si la contraseña confidencial de un usuario es fácilmente robada o adivinada. Todos los aspectos son importantes para una plataforma sólida y segura.
La seguridad es mucho trabajo duro. Aparte del trabajo que se puede hacer en el código, hay un gran elemento humano en este marco. La seguridad es un proceso constante; no se puede resolver con un solo complemento.
Parte 1: Integridad — No confíes en nada
Verifique la intención de las acciones del usuario y la integridad de los datos que está manejando. Tira tu hippie interior por la puerta. No se puede confiar en nada en línea, así que verifique todo lo que hace para detectar posibles intenciones maliciosas.
Validación y desinfección de datos
WordPress es excelente en el manejo de datos. Se asegura de que cada interacción sea validada y que cada bit de datos sea desinfectado, pero eso es solo en el núcleo de WordPress. Si está creando su propio complemento o tema, o simplemente verificando un fragmento de código de terceros, es esencial saber cómo hacerlo.
//Cast our variable to a string, and sanitize it. update_post_meta( $post->ID, 'some-meta', sanitize_text_field( (string)$_POST['some-meta'] ) ); //Make sure our variable is an absolute integer. update_post_meta( $post->ID, 'some-int', absint( $_POST['int'] ) );
En este ejemplo, hemos agregado dos datos a una publicación de WordPress usando update_post_meta. El primero es una cadena; entonces, lo lanzamos como una cadena en PHP y eliminamos los caracteres y etiquetas no deseados con sanitize_text_field
, una de las muchas funciones de desinfección de WordPress.
También agregamos un número entero a esa publicación y usamos absint para asegurarnos de que sea un número entero absoluto (y no negativo).
Usar funciones básicas de WordPress como update_post_meta
es una mejor idea que usar la base de datos de WordPress directamente. Esto se debe a que WordPress verifica todo lo que debe almacenarse en la base de datos en busca de las llamadas inyecciones de SQL. Un ataque de inyección SQL ejecuta un código SQL malicioso a través de los formularios de su sitio web. Este código manipula la base de datos para, por ejemplo, destruir todo, filtrar datos de usuarios o crear cuentas de administrador falsas.
Si alguna vez necesita trabajar con una tabla personalizada o realizar una consulta complicada en WordPress, use la clase WPDB nativa y use la función de prepare
en todas sus consultas para evitar ataques de inyección SQL:
$tableName = $wpdb->prefix . “my_table”; $sql = $wpdb->prepare( “SELECT * FROM %s”, $tableName ); $results = $wpdb->get_results( $sql );
$wpdb->prepare revisa todas las variables para asegurarse de que no haya posibilidad de un ataque de inyección SQL.
escapar
Escapar de la salida es tan importante como desinfectar la entrada. Es importante validar los datos antes de guardarlos, pero no puede estar 100 % seguro de que sigan siendo seguros. No confíes en nada. WordPress usa muchos filtros para permitir que los complementos y los temas cambien los datos sobre la marcha, por lo que es muy probable que sus datos también se analicen a través de otros complementos. Escapar datos antes de agregarlos a su tema o complemento es algo inteligente.
El escape está destinado principalmente a prevenir ataques de secuencias de comandos entre sitios (XSS). Los ataques XSS inyectan código malicioso en la interfaz de su sitio web. Una ventaja adicional de los datos de escape es que puede estar seguro de que su marcado seguirá siendo válido después.
WordPress tiene muchas funciones de escape. Aquí hay un ejemplo simple:
<a href=“<?php echo esc_url( $url );?>” title=“<?php echo esc_attr( $title );?>”><?php echo esc_html( $title );?></a>
Escapa lo más tarde posible. Esto asegura que usted tiene la última palabra sobre sus datos.
Protección de solicitudes
Las solicitudes de administración de WordPress ya son bastante seguras si tiene SSL habilitado y si tiene un host decente, pero aún existen algunas vulnerabilidades. Debe verificar la intención de un usuario y validar que la solicitud entrante es algo que realizó el usuario real que inició sesión.
WordPress valida la intención con nonces. Un nonce (o "número usado solo una vez") no es realmente una descripción precisa de esta API en WordPress. No solo usa números, y es mucho más como un token de falsificación de solicitud entre sitios (CSRF) que encontrará en todos los marcos web modernos. Estos tokens aseguran que los piratas informáticos no puedan repetir las solicitudes. Es mucho más que un nonce, pero a WordPress le gusta la compatibilidad con versiones anteriores, por lo que el nombre se quedó.
Los nonces se envían junto con cada solicitud vulnerable que realiza un usuario. Están adjuntos a URL y formularios, y siempre deben verificarse en el extremo receptor antes de realizar la solicitud. Puede agregar un nonce a un formulario o una URL. Aquí hay un ejemplo usado en un formulario:
<form method= “post”> <!-- Add a nonce field: --> <?php wp_nonce_field( 'post_custom_form' );?> <!-- other fields: → ... </form>
En este caso, solo estamos usando la función auxiliar simple wp_nonce_field()
, que genera dos campos ocultos para nosotros que se verán así:
<input type="hidden" name="_wpnonce" value="e558d2674e" /> <input type="hidden" name="_wp_http_referer" value="/wp-admin/post.php?post=2&action=edit" />
El primer campo comprueba la intención mediante el uso de un código generado con la cadena 'post_custom_form'
que hemos pasado a la función. El segundo campo agrega una referencia para validar si la solicitud se realizó desde la instalación de WordPress.
Antes de procesar su tarea en el otro extremo del formulario o URL, verificaría el nonce y su validez con wp_verify_nonce
:
if( wp_verify_nonce( $_REQUEST['_wpnonce'], 'post_custom_form' ) == false ){ wp_die( “Nonce isn\'t valid” ); }
Aquí, estamos comprobando el nonce con nuestro nombre de acción y, si no coincide, dejamos de procesar el formulario.
Código de terceros
Los complementos y temas de terceros son un hervidero de hackers. También son el hueso más duro de roer cuando se trata de garantizar la seguridad de su sitio web.
La mayoría de los hacks de WordPress son causados por complementos, temas y copias desactualizadas de WordPress . Ninguna pieza de software es 100% segura, pero muchos complementos y temas no han sido actualizados por sus desarrolladores en un tiempo o no eran seguros para empezar.
Menos código significa menos para hackear. Entonces, antes de instalar otro complemento, pregúntese si realmente lo necesita. ¿Hay otra manera de resolver este problema?
Si está seguro de que necesita un complemento o un tema, júzguelo con cuidado. Mire la calificación, la fecha de "última actualización" y la versión de PHP requerida cuando navegue por el directorio de complementos de WordPress. Si encontró lo que buscaba y todo parece funcionar, busque cualquier mención al respecto en un blog de seguridad de confianza, como Sucuri o WordFence.
Otra opción es escanear el código y asegurarse de que contenga nonces, saneamiento y escape adecuados; estos suelen ser signos de un código seguro y bien escrito. No tienes que saber PHP o hacer una revisión completa del código. Una forma simple y rápida de verificar el uso adecuado de las funciones de seguridad de WordPress es buscar en el código del complemento estas cadenas:
-
esc_attr
-
esc_html
-
wp_nonce_field
-
wp_nonce_url
-
sanitize_text_field
-
$wpdb->prepare
Un complemento aún podría ser seguro si no incluye todas estas cadenas, pero si no se encuentra ninguna o una cantidad baja de estas cadenas, es una señal de alerta. Si encuentra una vulnerabilidad, compártala con el creador en privado y déle tiempo para solucionarla.
Hacer un seguimiento de las vulnerabilidades en el espacio de complementos de WordPress es cada vez más fácil con iniciativas como wpvulndb.
Nota: algunos temas incluyen versiones de complementos con su código. Este es un síntoma de que WordPress no tiene una gran gestión de dependencias lista para usar, pero también es una señal de un tema muy mal escrito. Evite siempre estos temas porque incluyen bases de código que no se pueden actualizar.
Los temas y complementos rara vez contienen código escrito por un solo desarrollador. Composer y NPM han hecho que sea mucho más fácil depender de otras bibliotecas que se ha convertido en un vector de ataque popular. Si está descargando un tema o complemento de WordPress listo para usar, esto realmente no es una preocupación, pero si está trabajando con herramientas que usan Composer o NPM, entonces no está de más verificar sus dependencias. Puede comprobar las dependencias de Composer con una herramienta gratuita de interfaz de línea de comandos (CLI) de SensioLabs. Un servicio como Snyk (que puede usar de forma gratuita pero que también tiene opciones premium) le permite verificar cada dependencia en su proyecto.
Parte 2: Disponibilidad: mantenlo simple
Su objetivo principal es mantener su sitio web en línea sin interrupciones. Incluso con seguridad de primer nivel, aún puede meterse en problemas. Cuando eso suceda, una gran copia de seguridad le ahorrará un gran dolor de cabeza.
Actualizaciones
El código abierto no puede existir sin actualizaciones. La mayoría de los ataques a los sitios web de WordPress ocurren en versiones desactualizadas del software principal o de los complementos. Las actualizaciones de seguridad del núcleo de WordPress ahora se manejan automáticamente (¡a menos que hayas desactivado esto, monstruo!), pero las actualizaciones de seguridad en los complementos son una historia diferente.
La actualización normalmente es segura con complementos populares y confiables, pero todos los complementos deben probarse antes de que se publiquen en su sitio web. Herramientas como WP CLI hacen que actualizar todo sea mucho más fácil. El desarrollador principal de WordPress, Mark Jaquith, tuvo una excelente publicación de blog sobre la actualización de todos los complementos de forma automática pero gradual, para que pueda filtrar posibles errores.
Usuarios, Roles y Capacidades
La “disponibilidad” en la tríada de la CIA tiene que ver con hacer que la información llegue a las manos adecuadas. Nuestra principal prioridad con esto es limitar las capacidades de sus usuarios de back-end. No le dé a todos una cuenta de administrador.
La cuenta de administrador en WordPress es inusualmente poderosa. Incluso hay una opción en Vanilla WordPress para modificar su base de código completa desde la cuenta de administrador de WordPress. (Si esto es nuevo para usted y no lo ha desactivado, hágalo).
El sistema de roles y capacidades en WordPress es poderoso y es muy fácil de modificar en el código. Creo muchos roles nuevos cuando trabajo con WordPress. El principal beneficio de esto es que obtiene un control total sobre a qué partes del sistema pueden acceder varios usuarios, pero otro gran beneficio es que evita que el código de terceros altere las capacidades estándar del núcleo de WordPress.
Correo electrónico
WordPress generalmente maneja el correo electrónico a través del servidor en el que se encuentra, pero esto hace que todo su correo electrónico dependa completamente del servidor en el que se ejecuta. Evite que sus correos electrónicos sean interceptados y vistos como correo no deseado mediante el uso de un servicio SMTP. Hay muchas opciones de complementos disponibles para asegurarse de que todo su correo se envíe a través de una conexión SMTP segura.
Sin embargo, necesitará acceder a la configuración de DNS del nombre de dominio para agregar un registro del Marco de políticas del remitente (SPF). Todos los buenos servicios SMTP proporcionarán el registro exacto que debe agregarse. Un registro SPF garantiza que su servicio SMTP esté autorizado por el dominio para enviar correos electrónicos en su nombre.
Supervisión
El monitoreo de su sitio web en línea es una tarea 24/7 que se puede automatizar por completo. En el caso de WordPress, estamos interesados en el tiempo de actividad y la integridad de los archivos.
Supervisar el tiempo de actividad suele ser algo que un buen host hará por ti. Herramientas como Uptime Robot agregan aún más seguridad. Tus primeros 50 sitios web son completamente gratuitos.
Con respecto a la integridad de los archivos , si un pirata informático obtiene acceso a su servidor, puede cambiar su código.
En este caso, los complementos son la respuesta a su problema. Sucuri tiene un excelente complemento de auditoría. Comprueba todos los archivos de su instalación con una amplia base de datos de código malicioso conocido. También comprueba si el núcleo de WordPress sigue siendo 100 % núcleo de WordPress, y te avisa si ha habido una infracción, para que puedas solucionarlo lo antes posible.
copias de seguridad
La última prueba de fallas de cada proceso de seguridad son las copias de seguridad automatizadas. La mayoría de los buenos hosts harán esto por usted, pero existen otras buenas opciones si su host no ofrece copias de seguridad. Automattic crea uno llamado VaultPress y herramientas como BackupBuddy realizan copias de seguridad en una cuenta de Dropbox o en un depósito de Amazon S3.
La mayoría de los servicios confiables en el espacio de copia de seguridad de WordPress son servicios premium o complementos premium. Dependiendo de si necesita controlar completamente sus datos, es posible que prefiera un complemento que venga con un host en la nube, en lugar de un servicio. Sin embargo, cualquiera de los dos vale cada centavo.
Alojamiento
WordPress no es la única pieza de software que se ejecuta en su servidor. Muchos vectores de ataque están abiertos cuando estás en un alojamiento de mala calidad. De hecho, el mal alojamiento es la razón principal por la que WordPress aún admite versiones obsoletas de PHP. En el momento de escribir este artículo, la propia página de estadísticas de WordPress informa que el 32,5 % de todas las instalaciones de WordPress se ejecutan en versiones de PHP que ya no reciben actualizaciones de seguridad.
Tenga en cuenta que casi el 60% de las instalaciones se ejecutan en PHP 5.6 y 7.0, que recibirán parches de seguridad solo hasta finales de este año.
Sin embargo, el alojamiento es importante no solo para mantener actualizado el software de su servidor. Un buen host ofrecerá muchos más servicios, como copias de seguridad diarias automatizadas, actualizaciones automáticas, monitoreo de integridad de archivos y seguridad de correo electrónico. Hay una gran diferencia entre los hosts administrados de WordPress y los hosts que le brindan una carpeta en línea con acceso a la base de datos.
El mejor consejo es encontrar un host de WordPress administrado decente. Cuestan un poco más, pero proporcionan una gran columna vertebral para su sitio web de WordPress.
Parte 3: Confidencialidad
Si se ha asegurado de que su base de código sea lo más segura posible y está en un excelente host de WordPress, rodeado de escáneres de malware y copias de seguridad, entonces seguirá experimentando problemas de seguridad, porque las personas son las peores. … en la seguridad de Internet.
La confidencialidad se trata de educarse a sí mismo, a su cliente y a los usuarios del sitio web.
Información confidencial
Es posible que no lo sepa, pero sus complementos y temas probablemente muestren datos confidenciales valiosos. Si, por ejemplo, tiene WP_DEBUG
establecido en true
, entonces le está mostrando a todos los piratas informáticos la ruta raíz de su sitio web en el servidor. Los datos de depuración no deberían tener cabida en su sitio web de producción.
Otra fuente de datos valiosa son los comentarios y las páginas de autor. Estos están llenos de nombres de usuario e incluso direcciones de correo electrónico. Un hacker podría usarlas en combinación con una contraseña débil para ingresar a su sitio web. Ten cuidado con lo que muestras al mundo exterior.
Además, verifique que haya puesto wp-config.php
en su .gitignore
.
No programes solo
Una forma de evitar que se cuelen muchos errores en su base de código es practicar la programación en pares. Si está solo, esto es mucho más difícil, pero hay muchas comunidades en línea disponibles que están dispuestas a realizar auditorías de código rápidas. WordPress, por ejemplo, usa Slack para comunicar todo sobre el desarrollo de su plataforma. Allí encontrarás mucha gente dispuesta a ayudarte. Alternativas más lentas pero mejores son los foros de WordPress, StackOverflow y GitHub Issues, donde se guardan tus preguntas (¡y sus respuestas!) para que otras personas puedan beneficiarse de ellas.
Pedir información puede ser difícil, pero a la gente le encanta mostrar su experiencia y, en general, WordPress tiene una comunidad muy abierta y acogedora. El punto es que si nunca solicita información sobre la calidad de su código, entonces no tendrá idea de si su código es seguro.
Inicios de sesión y contraseñas
Sus clientes deberán iniciar sesión en WordPress para administrar su contenido. El núcleo de WordPress hace lo que puede para evitar que pasen contraseñas débiles, pero esto generalmente no es suficiente.
Recomendaría agregar un complemento para la autenticación de dos factores a su sitio web, junto con un límite en los intentos de inicio de sesión. Aún mejor, elimine las contraseñas por completo y trabaje con enlaces mágicos.
Confiar pero verificar
Hasta ahora en este artículo, no hemos hablado de ingeniería social en absoluto. Es una forma de piratería que está cobrando impulso, pero generalmente no se usa para piratear sitios web de WordPress. Sin embargo, es una excelente manera de configurar la cultura en torno a su sitio web teniendo en cuenta la seguridad. Eso es porque la mejor defensa contra la ingeniería social es "Confiar pero verificar".
Siempre que un cliente, un usuario o tu jefe te pida algo relacionado con la seguridad, la mejor forma de afrontarlo es confiar pero primero comprobar si lo que dice es cierto.
Un cliente puede afirmar que necesita acceso de administrador a WordPress, pero tu trabajo es verificar si esto es cierto. ¿Realmente necesitan acceso o solo les falta una capacidad en su rol? ¿Hay alguna manera de resolver este problema sin agregar posiblemente nuevos vectores de ataque?
"Confiar pero verificar" es un mantra simple pero efectivo cuando se trata de preguntas de seguridad, y realmente puede ayudar a que las personas se pongan al día.
Conclusión
¿WordPress es inseguro? No, no es. El núcleo de WordPress se actualiza y repara constantemente, y la mayoría de los hacks de WordPress informados no son de WordPress en sí. ¿La cultura que rodea a WordPress es insegura? ¡Puedes apostar!
Pero si tiene en cuenta la seguridad con cada línea de código que escribe, cada usuario que agrega, cada complemento que habilita y cada factura de alojamiento que paga, al menos puede asegurarse de que está ejecutando un sitio web seguro que mantiene intacta su reputación y su datos seguros.