A Synopsys Company 1253 kereskedelmi kódalap és arra a következtetésre jutott, hogy szinte minden (99%) vizsgált kereskedelmi alkalmazás tartalmaz legalább egy nyílt forráskódú komponenst, és a vizsgált adattárakban található kód 70%-a nyílt. Összehasonlításul, a hasonló 2015-ös kutatásban a nyílt kód aránya 36% volt.
A legtöbb esetben a felhasznált harmadik féltől származó nyílt kód nem frissül és potenciális biztonsági problémákat tartalmaz — a vizsgált kódalapok 91%-ában vannak nyílt komponensek, amelyeket több mint 5 éve nem frissítettek, vagy legalább két éve elhagyott formában vannak és nem támogatják a fejlesztők. Ennek következtében a repozitóriumokban fellelt nyílt kód 75%-ában találhatóak nem javított ismert sebezhetőségek, amelyek közül a fele magas veszélyességi szintű. A 2018-as mintavételben a sebezhetőséggel rendelkező kód aránya 60% volt.
A leggyakrabban előforduló veszélyes sebezhetőség a következő volt
probléma (távoli kódfuttatás) a következő könyvtárban Node.js-hez, amelynek sebezhető verziói több mint 500 alkalommal fordultak elő. A legöregebb nem javított sebezhetőség a lpd démonban lévő hiba volt (), amelyet 1999-ben javítottak.
A kereskedelmi projektek kódalapjaiban nemcsak a biztonság, hanem a szabad licencek betartásának hanyag kezelése is megfigyelhető.
A kódalapok 73%-ában találhatóak a nyílt kód használatának jogi problémái, például a licencek inkompatibilitása (általában a GPL-kódot kereskedelmi termékek részeként használják anélkül, hogy a származékos produktumot közzétennék) vagy a kód használata licenc megjelölése nélkül. A licencekkel kapcsolatos problémák 93%-a a hálózati és mobilalkalmazásokban jelentkezik. A játékok, virtuális valóság, multimédiás és szórakoztató programok esetében a megsértés 59%-ban fordult elő.
A kutatás során összesen 124 tipikus nyílt komponenst azonosítottak, amelyeket általában minden kódalapban használnak. A legnépszerűbbek: jQuery (55%), Bootstrap (40%), Font Awesome (31%), Lodash (30%) és jQuery UI (29%). A programozási nyelvek szempontjából a legnépszerűbbek a JavaScript (a projektek 74%-ában használják), C++ (57%), Shell (54%), C (50%), Python (46%), Java (40%), TypeScript (36%), C# (36%); Perl (30%) és Ruby (25%). A programozási nyelvek összesített aránya:
JavaScript (51%), C++ (10%), Java (7%), Python (7%), Ruby (5%), Go (4%), C (4%), PHP (4%), TypeScript (4%), C# (3%), Perl (2%) és Shell (1%).
Forrás: opennet.ru
