Buenas prácticas para una mayor seguridad en tus plugins

5/5 - (2 votos)

Abordar problemas de seguridad en tu plugin de WordPress puede ser difícil e incluso un poco intimidante, especialmente si es tu primera vez enfrentándote a esto. En este post intentaré repasar todos los pasos que deberías seguir como desarrollador de un plugin, ya que nosotros somos expertos en desarrollo a medida. Así que, empecemos.

Cómo te reportan los problemas de seguridad del plugin

Probablemente utilices una plataforma como GitHub, o incluso los foros de WordPress.org para recibir reportes de errores. Estos son canales públicos que son muy útiles para la mayoría de tus reportes de errores. Sin embargo, esto no es bueno para los problemas de seguridad. Esta es una de las razones por las que los problemas de seguridad en el código abierto son un poco más difíciles.

Probablemente no estás acostumbrad@ a la discreción, pero cuando se trata de problemas de seguridad en plugins, a veces necesitas un poco de secreto. Por lo tanto, necesitas una forma para que los investigadores de seguridad se pongan en contacto contigo. Y créeme, si tu plugin se hace popular, se pondrán en contacto contigo.

Tienes un par de opciones en cuanto a la recepción de informes de seguridad. La opción más sencilla es configurar una dirección de correo electrónico como «seguridad@» en el dominio que utilices, o un formulario de contacto. Ten en cuenta que recibirás muchos informes que tendrás que verificar y no todos ellos serán útiles.

Una mejor manera es utilizar el programa de divulgación de vulnerabilidades de Patchstack, el cual tiene una versión gratuita. Ellos se encargan de validar el problema y sólo se ponen en contacto contigo cuando realmente tienes que solucionar algo, con un informe muy detallado. Además se encargan de actuar como un investigador de seguridad, haciéndole seguir políticas de divulgación ética (CVA).

Otra herramienta que se puede usar para investigar algunas vulnerabilidades en tu sitio de wordpress es WPScan a nivel más general y esto no sirve para nuevos plugins ya que se basa en problemas que ya se han reportado. Y casi lo más importante, siempre ten un ojo puesto a otra gente del mundo de WordPress, para esto una buena web es: https://wptavern.com/

Cómo las personas pueden reportar problemas

Debes dejar claro a los usuarios cómo pueden reportar los problemas de seguridad de tu plugin:

  • En la página web del plugin.
  • En la página GitHub del complemento (preferiblemente a través de un archivo Security.md).
  • En el archivo readme.txt del plugin y, por lo tanto, en la página del plugin de WordPress.org.

Y asegúrate de revisarlo y que todo funciona correctamente, ya que no te querrás perder nada de estos informes.

Fomentando informes de seguridad

Si obtienes ingresos de tu(s) plugin(s) de WordPress, directa o indirectamente, te sugeriría encarecidamente que establezcas un programa de recompensas por errores (ejemplos: el programa de recompensas por errores del núcleo de WordPress en HackerOne, el de Yoast o el de Elementor en Bugcrowd). Esto motivará a los usuarios que sean expertos en seguridad a examinar un poco más tu código.

Quizá te puede parecer contraproducente, porque no quieres problemas de seguridad, pero lo cierto es que los problemas de seguridad son una realidad. Es mejor admitir que eres humano y beneficiarte de que otras personas indaguen en tu código. Ser proactivo respecto a la seguridad es la única manera de asegurarte de que no aparezcan demasiados problemas, y te sientas mal ya que muchos sitios pueden ser hackeados a través de tu plugin.

Arreglar los problemas

Después de ver dónde está el problema, lo arreglas, evidentemente y una vez que estás seguro de que has arreglado todas las instancias de este problema particular, envías la actualización al repositorio del plugin.

Los usuarios que te hayan comunicado un problema, suelen ser sorprendentemente útiles para probar tus soluciones. Comunícate con ellos. Si tienes una empresa como Patchstack que verifica tus informes, asegúrate de mantenerte en contacto con ellos también.

¿Con qué rapidez deberías solucionar problemas de seguridad?

Lo mejor es que cuanto antes, pero esto no todas las veces se puede hacer, por lo tanto lo mejor es que no pasen más de 48h/72h desde que te informan de un grave problema de seguridad hasta que se solucione y se lance.

También según la cantidad de personas que formen tu equipo y la magnitud del plugin. Obviamente también el tipo de problema, si el problema es grave en cuanto a seguridad, no deberías tardar mucho, pero como en todos los trabajos hay que priorizar y sacar tanto las urgentes como las que tienen menos urgencia, e incluso hacer caso a los usuarios en cuanto a propuestas para mejorar tu plugin.

¿Cómo decirle a los usuarios que tu plugin tiene problemas de seguridad?

Esta es sin duda alguna de las partes más difíciles de todo este proceso, todos hemos pasado por decirle algo relacionado con algún problema o incidencia a los usuarios/clientes y no se pasa un buen rato. Pero en mi opinión lo mejor es ser claros: Ha habido un problema, era este, se ha solventado y por favor actualiza a la última versión.

¿Pero cómo lo comunicamos?

Hay varias vías para hacer esto, el readme.txt de tu repositorio, en las newsletter de tu plugin, un post en la web del plugin o incluso por twitter. Os dejo por aquí un ejemplo que propone WordPress para el readme.txt de los plugins.

No seas demasiado duro contigo mismo

Los problemas de seguridad son un hecho de la vida. Por supuesto, se debe pensar en la seguridad a medida que se desarrolla. Sin lugar a dudas, las personas pueden esperar cierto nivel de seguridad básica. Pero más allá de eso, ocurren problemas de seguridad.

Los buenos desarrolladores/propietarios de productos destacan por lo bien que los tratan. Desconfiaría mucho de cualquier desarrollador que diga que nunca tiene problemas de seguridad.

La seguridad digital es crucial. Los problemas son inevitables, pero la excelencia radica en la respuesta. Desconfía de quien niega problemas de seguridad. #Ciberseguridad #DesarrolloResponsable Share on X
Comparte
¿Quieres más información?
Ponte en contacto con nosotros.
Picture of Víctor Bujaldón
Víctor Bujaldón
Frontend developer - Departamento de desarrollo. Encargado de desarrollo de Wordpress, y a veces me meto con Prestashop. Gran fan de los deportes y muy disfrutón de todo.

Enviar Comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Suscríbete a nuestra newsletter
para estar al día en el mundo online
¿Tienes alguna incidencia?

Cuéntanos qué ocurre
y nos pondremos con ello lo antes posible.

    Este sitio está protegido por reCAPTCHA, y la Política de privacidad y Términos de servicio de Google.

    ¡Cuéntanos tus ideas!
    +34 96 653 19 14
    info@acceseo.com

      Este sitio está protegido por reCAPTCHA, y la Política de privacidad y Términos de servicio de Google.