Azienda Synopsys 1253 codici sorgente commerciali e ha concluso che quasi tutte le applicazioni commerciali esaminate (il 99%) includono almeno un componente open source, e il 70% del codice negli archivi esaminati è open source. A titolo di confronto, in uno studio analogo del 2015, la percentuale di codice open source era del 36%.
Inoltre, nella maggior parte dei casi, il codice open source di terze parti utilizzato non viene aggiornato e presenta potenziali problemi di sicurezza: nel 91% dei codici sorgente esaminati sono presenti componenti open source che non sono stati aggiornati per più di 5 anni o che sono stati abbandonati per almeno due anni e non sono più supportati dagli sviluppatori. Di conseguenza, nel 75% del codice open source identificato negli archivi sono presenti vulnerabilità note non corrette, di cui metà ha un alto livello di pericolo. Nella selezione del 2018, la percentuale di codice con vulnerabilità era del 60%.
La vulnerabilità pericolosa più comune è stata
il problema (esecuzione di codice remoto) nella libreria per Node.js, le versioni vulnerabili delle quali si sono incontrate più di 500 volte. La vulnerabilità non corretta più antica è stata un problema nel demone lpd (), corretta nel 1999.
Oltre alla sicurezza, nei codici sorgente dei progetti commerciali si osserva anche un atteggiamento negligente nel rispetto delle condizioni delle licenze open source.
Nel 73% dei codici sorgente sono stati riscontrati problemi di legalità nell'utilizzo del codice open source, ad esempio, incompatibilità delle licenze (in genere, il codice GPL viene incluso nei prodotti commerciali senza aprire il prodotto derivato) oppure utilizzo di codice senza indicazione di licenza. Il 93% di tutti i problemi di licenza si manifesta 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, nello studio sono stati identificati 124 componenti open source tipici, comunemente utilizzati in tutti i codici sorgente. I più popolari tra questi sono: jQuery (55%), Bootstrap (40%), Font Awesome (31%), Lodash (30%) e jQuery UI (29%). In termini di linguaggi di programmazione, i più popolari 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 percentuale 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
