PEM-Humboldt / biotablero-backend

Backend repository for Biotablero: http://biotablero.humboldt.org.co/
1 stars 2 forks source link

Diagnosticar actualización de dependencias #278

Closed erikasv closed 2 years ago

erikasv commented 2 years ago

Descripción:

Revisar las dependencias y determinar la viabilidad y estrategia par actualizarlas

Resultado:

Tarea con las instrucciones especiales (en caso de que se requiera) para actualizar las dependencias. Si no se requieren instrucciones especiales, sólo para separar el espacio.

Trjegul84 commented 2 years ago

Se encuentra lo siguiente:

  1. Una dependencia con severidad alta a nivel de todo el proyecto node-fetch: 2.6.1 la version a la que se debe actualizar es 2.6.7

  2. Tres dependencias con severidad alta en el diagnóstico de dependencias transitivas y directas:

    • glob-parent:2.5.1 se debe actualizar a versión 5.1.2 o posterior
    • normalize-url: 4.5.0 se debe actualizar a la versión 4.5.1 o posterior
    • tar:6.1.0 se debe actualizar a la versión 6.1.2 o posterior
  3. Cinco dependencias con severidad moderada en el diagnóstico de dependencias transitivas y directas:

    • olor-string: 1.5.4 se debe actualizar a la versión 1.5.5 o posterior
    • hosted-git-info: 2.8.8 se debe actualizar a la versión 2.8.9 o posterior
    • json-schema: 0.2.3 se debe actualizar a la versión 0.4.0 o posterior
    • markdown-it: 11.0.1 se debe actualizar a la versión 12.3.2 o posterior
    • path-parse: 1.0.6 se debe actualizar a la versión 1.0.7 o posterior

Los resultados del diagnostico se pueden encontrar en el documento de resultados de yarn audit

Trjegul84 commented 2 years ago

El issue de severidad alta del paquete node-fetch de los servicios forest y diversity se retira cambiando manualmente la versión de ^2.6.1 a ^2.6.7en el archivo package.json de cada servicio y en seguida ejecutando el comando yarn up en la carpeta de cada servicio.

Se rectifica el comando anteriormente presentado y se encuentra que el comando yarn npm audit --all --recursive nos ayuda a ver todas las dependencias afectadas en cualquier nivel. Ahora se revisa las dependencias de la linea via. Ver el resultado del comando en el Documento

Respecto a las vulnerabilidades de severidad alta y moderada encontradas:

Nota: Las últimas y más actuales versiones a la fecha son las siguientes:

apidoc = 0.50.3 (tenemos 0.26.0) winston = 3.5.0 (tenemos 3.3.3 ) nodemon = 2.0.15 (tenemos 2.0.7 ) eslint-plugin-import 2.25.4 (tenemos 2.14.0) eslint-config-airbnb-base 15.0.0 (tenemos 13.1.0) restify 8.6.0 (tenemos 8.5.1 en todos los servicios) restify-cors-middleware 1.1.1 (tenemos 1.1.1) knex 1.0.1 (tenemos en el backend 0.21.17, en conectividad 0.95.2, en diversidad 0.95.4, en forest 0.21.17 ) bookshelf 1.2.0 (tenemos ^1.2.0 en todos los servicios )

OBSERVACIÓN: La librería apidoc también tiene otras dependencias aparte de las relacionadas en las vulnerabilidades:

 └─ Dependencies     
    ├─ apidoc-core@npm:^0.12.0 → npm:0.12.0
    ├─ commander@npm:^2.20.0 → npm:2.20.3
    ├─ fs-extra@npm:^9.0.1 → npm:9.1.0
    ├─ handlebars@npm:^4.7.6 → npm:4.7.7
    ├─ lodash@npm:^4.17.20 → npm:4.17.20
    ├─ markdown-it@npm:^11.0.0 → npm:11.0.1
    ├─ nodemon@npm:^2.0.4 → npm:2.0.7
    └─ winston@npm:^3.3.3 → npm:3.3.3

Se debe indagar aún más en la forma más adecuada de resolver las actualizaciones porque no se tiene certeza sobre cómo afectará la actualización de apidoc a las otras dependencias que no se relacionan en el resultado de yarn audit. Aplica lo mismo para otras librerías o frameworks como restify o knex.