Il 75% delle applicazioni commerciali include codice open source obsoleto con vulnerabilità

Compagnia di sinossi analizzato 1253 basi di codice commerciali e hanno concluso che quasi tutte (99%) delle applicazioni commerciali esaminate includevano almeno un componente open source e che il 70% del codice nei repository esaminati era open source. Per fare un confronto, in uno studio simile del 2015, la quota di open source era del 36%.

Tuttavia, nella maggior parte dei casi, il codice open source di terze parti utilizzato non è aggiornato e contiene potenziali problemi di sicurezza: il 91% delle basi di codice esaminate hanno componenti aperti che non sono stati aggiornati da più di 5 anni o sono in una forma abbandonata da almeno due anni e non vengono mantenuti dagli sviluppatori. Di conseguenza, il 75% del codice open source identificato nei repository contiene vulnerabilità note senza patch, metà delle quali presentano un elevato livello di pericolo. Nel campione del 2018, la quota di codice con vulnerabilità era del 60%.

La vulnerabilità pericolosa più comune era
problema CVE-2018-16487 (esecuzione di codice remoto) nella libreria lodash per Node.js, le cui versioni vulnerabili sono state riscontrate più di 500 volte. La più vecchia vulnerabilità senza patch era un problema nel demone lpd (CVE-1999-0061), riveduto nel 1999.

Oltre alla sicurezza nei codici base dei progetti commerciali, c'è anche un atteggiamento negligente nei confronti del rispetto dei termini delle licenze libere.
Nel 73% dei codici sono stati riscontrati problemi con la legalità dell'utilizzo dell'open source, ad esempio licenze incompatibili (di solito il codice GPL è incluso nei prodotti commerciali senza aprire un prodotto derivato) o utilizzo del codice senza specificare una licenza. Il 93% di tutti i problemi di licenza si verificano nelle applicazioni web e mobili. Nei giochi, nei sistemi di realtà virtuale, nei programmi multimediali e di intrattenimento le violazioni sono state riscontrate nel 59% dei casi.

In totale, lo studio ha identificato 124 tipici componenti aperti comunemente utilizzati in tutte le codebase. I più popolari sono: jQuery (55%), Bootstrap (40%), Font Awesome (31%), Lodash (30%) e jQuery UI (29%). Per quanto riguarda i linguaggi di programmazione, i più apprezzati sono JavaScript (utilizzato nel 74% dei progetti), C++ (57%), Shell (54%), C (50%), Python (46%), Java (40%), TypeScript (36%), C# (36%); Perl (30%) e Ruby (25%). La quota totale dei linguaggi di programmazione è:
JavaScript (51%), C++ (10%), Java (7%), Python (7%), Ruby (5%), Go (4%), C (4%), PHP (4%), TypeScript ( 4%), C# (3%), Perl (2%) e Shell (1%).

Fonte: opennet.ru

Aggiungi un commento