
applicazione semplice con una vulnerabilità CVE-2022-45688
Il progetto illustra CVE-2022-45688 in json.org -- c'è una semplice applicazione
XML2JSONConverter per leggere XML dall'input, convertirlo in JSON e
stamparlo in modo ordinato sulla console.
Utilizzando un input malevolo, l'applicazione va in crash con uno stackoverflow.
Il test case CVE202245688Test illustra questo comportamento, può
essere eseguito lanciando mvn test.
Ci sono diversi script sh per eseguire diverse analisi, i rapporti dei risultati possono essere trovati in scan-results.
Il report SCA (inclusi quelli impostati come azioni GitHub) non riesce a segnalare CVE-2022-45688, sebbene il test incluso mostri chiaramente che esiste. La ragione è che gli strumenti basati solo sull'analisi dei metadati (cioè le dipendenze dichiarate) non si rendono conto che il progetto utilizza una versione ombreggiata di (una versione vulnerabile di) json.org.
Nota che l'ombreggiatura è fatta manualmente, cioè il plugin Maven shade non viene utilizzato. La nostra recente ricerca suggerisce che questa è una fonte comune di falsi negativi nell'analisi di composizione software.
Il pom.xml ha un plugin per generare un SBOM in formato CycloneDX.
Per farlo, esegui mvn cyclonedx:makePackageBom, l'SBOM può essere trovato in
target/ in formato json e xml.