El 81% cree que los desarrolladores deberían encargarse de la seguridad, pero no cuentan con las herramientas necesarias
26 de febrero de 2019
0 minutos de lecturaTe damos la bienvenida al informe anual de Snyk sobre el estado de la seguridad del código abierto de 2019. Este informe se divide en varias publicaciones:
Los paquetes de Maven Central se duplican; npm indexa un cuarto de millón de paquetes nuevos
Las vulnerabilidades en bibliotecas de aplicaciones aumentan un 88% en dos años
El 81% cree que los desarrolladores deberían encargarse de la seguridad, pero no cuentan con las herramientas necesarias
Los mantenedores de código abierto quieren proteger su software, pero al 70% le faltan conocimientos
Las diez imágenes de Docker más populares contienen al menos 30 vulnerabilidades cada una
Las vulnerabilidades ReDoS en npm aumentan un 143% y los ataques XSS siguen creciendo
También puedes descargar nuestro excelente informe en PDF, elaborado con dedicación, que reúne toda esta información y mucho más en un solo lugar.
Descarga el informe sobre el estado de la seguridad del código abierto de 2019
Quién se encarga de la seguridad del código abierto
Nos propusimos averiguar quién es responsable en la práctica de la seguridad de una aplicación o biblioteca hoy en día, así como quiénes creen los usuarios que debería asumir esa responsabilidad.
Según el 81% de los encuestados, los desarrolladores deberían encargarse de la seguridad del código de sus aplicaciones. Esto transmite un mensaje contundente sobre el nivel de participación e implicación que se espera de ellos y respalda el sólido movimiento DevSecOps que muchos están adoptando hoy.

Una forma eficaz de integrar la seguridad en el SDLC es incorporarla a todo el ciclo de vida del desarrollo, desde el diseño hasta la producción. Esto difiere considerablemente de la fase puntual de pruebas de seguridad más tradicional, que se realiza de manera periódica y no se adapta al modelo moderno de entrega de software acelerada. Sin embargo, los procesos y las pautas quizá no sean suficientes. La capacitación, las herramientas fáciles de usar y la colaboración con los equipos de I+D y las partes interesadas son igual de importantes para que una organización adopte prácticas de seguridad de forma eficaz.
Detección de vulnerabilidades
Revisar correctamente el código propio para detectar posibles vulnerabilidades de seguridad requiere muchos conocimientos, experiencia y buen ojo. Como no es una tarea sencilla, si es que se lleva a cabo, el código vulnerable podría permanecer oculto durante mucho tiempo hasta que alguien lo detecte.
El 37% de los usuarios no realiza ningún tipo de prueba de seguridad durante la integración continua (CI)
A los equipos que practican DevOps o tienen un proceso de CI/CD maduro quizá les resulte más fácil incorporar pruebas de seguridad a la automatización de compilaciones. Sin embargo, descubrimos que casi el 40% de los usuarios no realiza ningún tipo de prueba de seguridad durante sus ejecuciones de CI. Lo alentador es que más de la mitad de ellos al menos busca vulnerabilidades en sus dependencias de código abierto.
Otro hallazgo de nuestra investigación es que los equipos que incorporan la seguridad a su trabajo también obtienen mejores resultados en la entrega continua. Un elemento clave es que los equipos de seguridad de la información pongan a disposición de los desarrolladores y de operaciones de TI bibliotecas, paquetes, cadenas de herramientas y procesos fáciles de usar y aprobados previamente.
Nicole Forsgren, Accelerate

Cómo enterarse de las vulnerabilidades
Desde la perspectiva de los usuarios, es interesante saber cómo se enteran de las vulnerabilidades en las dependencias de sus aplicaciones para responder a las posibles amenazas a medida que se descubren.
Un preocupante 27% de los encuestados afirmó que no cuenta con ningún método proactivo ni automático para enterarse de las vulnerabilidades recién descubiertas en sus aplicaciones. Solo el 36% de los usuarios confirmó que utiliza una herramienta de administración o análisis de dependencias para detectar vulnerabilidades.

Estadísticas de Snyk
Solo en la segunda mitad de 2018, Snyk abrió más de 70.000 Pull Requests para sus usuarios en los ecosistemas de Maven, RubyGems y npm con el fin de corregir vulnerabilidades en sus proyectos.
De todas las dependencias de un proyecto Java analizado, Snyk proporcionó una ruta de corrección para las vulnerabilidades detectadas en el 60% de ellas. No siempre es posible definir rutas de corrección cuando no hay compatibilidad entre una dependencia directa y una versión corregida de una dependencia indirecta. El equipo de seguridad de Snyk puede proporcionar parches personalizados para resolver algunos de estos casos.
Cuánto tardan en adoptarse las correcciones de seguridad
¿Cuánto tardan los usuarios en adoptar nuevas versiones que corrigen vulnerabilidades conocidas? Tomamos como ejemplo el registro PyPI de Python y su paquete websockets para ver cuánto tiempo seguían utilizándose versiones vulnerables populares después de que se publicara una corrección.
El proyecto websockets es un paquete bastante popular y bien mantenido, que existe desde 2013 y publica versiones con regularidad hasta la actualidad.
En agosto de 2018 se divulgó a la comunidad una vulnerabilidad de denegación de servicio que afectaba a las versiones 4.0 y 4.0.1 del paquete. En el momento de la divulgación, ya había versiones más recientes en el registro que incluían la corrección de seguridad. Sin embargo, al revisar las cifras de descargas de las versiones vulnerables, se observa que muchos usuarios siguieron descargándolas durante mucho tiempo.
En diciembre de 2018 todavía registrábamos 11.000 descargas del paquete websockets con la vulnerabilidad, aunque ya había una versión corregida disponible como actualización principal: websockets versión 5.0.

Sigue leyendo:
Los paquetes de Maven Central se duplican; npm indexa un cuarto de millón de paquetes nuevos
Las vulnerabilidades en bibliotecas de aplicaciones aumentan un 88% en dos años
El 81% cree que los desarrolladores deberían encargarse de la seguridad, pero no cuentan con las herramientas necesarias
Los mantenedores de código abierto quieren proteger su software, pero al 70% le faltan conocimientos
Las diez imágenes de Docker más populares contienen al menos 30 vulnerabilidades cada una
Las vulnerabilidades ReDoS en npm aumentan un 143% y los ataques XSS siguen creciendo
Empieza con los desafíos de Capture the Flag
Aprende a resolver desafíos de captura la bandera con nuestro taller virtual introductorio a pedido.
