Azienda Synopsys 1253 basi di codice commerciali e ha concluso che quasi tutte (99%) le applicazioni commerciali esaminate contengono almeno un componente open source, e il 70% del codice nei repository esaminati è open source. A titolo di confronto, in uno studio simile del 2015 la quota di codice open source era del 36%.
Tuttavia, nella maggior parte dei casi, il codice open source di terze parti utilizzato non viene aggiornato e presenta potenziali problemi di sicurezza: nel 91% delle basi di codice esaminate ci sono componenti open source che non sono stati aggiornati per più di 5 anni o sono almeno da due anni in uno stato abbandonato senza supporto da parte degli sviluppatori. Di conseguenza, il 75% del codice open source identificato nei repository presenta vulnerabilità note non risolte, delle quali la metà è di alto livello di pericolo. Nella selezione del 2018, la quota di codice con vulnerabilità era del 60%.
La vulnerabilità pericolosa più comune è stata
problema (esecuzione remota di codice) nella libreria per Node.js, versioni vulnerabili riscontrate più di 500 volte. La vulnerabilità non corretta più antica è stata un problema nel demone lpd (), corretto nel 1999.
Oltre alla sicurezza, nelle basi di codice dei progetti commerciali si osservano anche negligenze nel rispetto delle condizioni delle licenze open source.
Nel 73% delle basi di codice sono state riscontrate problematiche di legalità relative all'uso di codice open source, come ad esempio le incompatibilità di licenza (in genere, il codice GPL viene incluso in prodotti commerciali senza rilasciare il prodotto derivato) o l'uso di codice senza specifica della licenza. Il 93% di tutti i problemi di licenza si manifesta in applicazioni web e mobili. Nei giochi, nei sistemi di realtà virtuale, nei programmi multimediali e di intrattenimento, le violazioni sono state osservate nel 59% dei casi.
In totale, lo studio ha identificato 124 componenti open source standard che vengono comunemente utilizzati in tutte le basi di codice. I più popolari tra questi sono: jQuery (55%), Bootstrap (40%), Font Awesome (31%), Lodash (30%) e jQuery UI (29%). In base ai linguaggi di programmazione, i più utilizzati sono JavaScript (impiegato 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 complessiva 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
