OSV-Scanner, un escàner de vulnerabilitats de la mà de Google

OSV-Scanner

OSV-Scanner funciona com una interfície per a la base de dades OSV.dev

Google va donar a conèixer fa poc OSV-Scanner, una eina que brinda als desenvolupadors de codi obert un fàcil accés per verificar vulnerabilitats sense pegats al codi i les aplicacions, tenint en compte tota la cadena de dependències associades amb el codi.

OSV-Scanner permet detectar situacions en què una aplicació es torna vulnerable a causa de problemes en una de les biblioteques utilitzades com a dependència. En aquest cas, la biblioteca vulnerable es pot fer servir indirectament, és a dir invocat a través d'una altra dependència.

L'any passat, vam emprendre un esforç per millorar la classificació de vulnerabilitats per a desenvolupadors i consumidors de programari de codi obert. Això va implicar la publicació de l'esquema de vulnerabilitat de codi obert (OSV) i el llançament del servei OSV.dev, la primera base de dades de vulnerabilitat de codi obert distribuïda. OSV permet que tots els diferents ecosistemes de codi obert i bases de dades de vulnerabilitats publiquin i consumeixin informació en un format simple, precís i llegible per màquina.

Els projectes de programari generalment es construeixen sobre una muntanya de dependències: en lloc de començar des de zero, els desenvolupadors incorporen biblioteques de programari externes als projectes i afegeixen funcionalitats addicionals. No obstant això, els paquets de codi oberto sovint contenen fragments de codi no documentats que s'extreuen d'altres biblioteques. Aquesta pràctica crea el que es coneix com a «dependències transitives» en el programari i vol dir que pot contenir múltiples capes de vulnerabilitat que són difícils de rastrejar manualment.

Les dependències transitives han esdevingut una font creixent de risc de seguretat de codi obert durant el darrer any. Un informe recent d'Endor Labs va trobar que el 95% de les vulnerabilitats de codi obert es troben a dependències transitives o indirectes, i un altre informe separat de Sonatype també va destacar que les dependències transitives representen sis de cada set vulnerabilitats que afecten el codi obert.

Segons Google, la nova eina començarà amb la cerca d'aquestes dependències transitives mitjançant l'anàlisi de manifestos, llistes de materials de programari (SBOM) on estiguin disponibles i hashes de confirmació. Després es connectarà amb la base de dades de vulnerabilitats de codi obert (OSV) per mostrar les vulnerabilitats rellevants.

OSV-Scanner pot escanejar automàticament de manera recursiva un arbre de directoris, identificant projectes i aplicacions per la presència de directoris git (la informació sobre vulnerabilitats es determina a través de l'anàlisi de hashes de confirmació), fitxers SBOM (Software Bill Of Material en formats SPDX i CycloneDX), manifestos o bloquejar administradors de paquets de fitxers com Yarn, NPM, GEM, PIP i Càrrec. També admet escanejar l'emplenament d'imatges de contenidors docker creades sobre la base de paquets dels dipòsits de Debian.

L'OSV-Scanner és el pas següent en aquest esforç, ja que proporciona una interfície amb suport oficial per a la base de dades OSV que connecta la llista de dependències d'un projecte amb les vulnerabilitats que les afecten.

La informació sobre vulnerabilitats es pren de la base de dades OSV (vulnerabilitats de codi obert), que cobreix informació sobre problemes de seguretat a Сrates.io (Rust), Go, Maven, NPM (JavaScript), NuGet (C#), Packagist (PHP), PyPI (Python), RubyGems, Android, Debian i Alpine, així com dades de vulnerabilitat del kernel de Linux i informes de vulnerabilitat del projecte allotjats a GitHub.

La base de dades OSV reflecteix l'estat de correcció del problema, les confirmacions amb l'aparició i la correcció de la vulnerabilitat, el rang de versions afectades per la vulnerabilitat, enllaços al repositori del projecte amb el codi i la notificació del problema. L'API proporcionada permet rastrejar la manifestació d'una vulnerabilitat a nivell de confirmacions i etiquetes i analitzar l'exposició al problema dels productes derivats i les dependències.

Finalment cal esmentar que el codi del projecte està escrit a Go i es distribueix sota la llicència Apache 2.0. Pots consultar més detalls al respecte al següent enllaç.

Els desenvolupadors poden descarregar i provar OSV-Scanner des del lloc web osv.dev o utilitzar la verificació de vulnerabilitats de l'OpenSSF Scorecard  per executar automàticament l'escàner en un projecte de GitHub.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.