De acordo com o relatório anual State of Software Security da Veracode, 70% dos aplicativos móveis e de desktop usados hoje têm erros ou pelo menos uma falha de segurança resultante do uso de bibliotecas de código aberto.
O relatório diz:
O número de bibliotecas externas encontradas em qualquer aplicativo varia bastante, dependendo da linguagem em que o aplicativo está sendo desenvolvido.
Uma publicação da Veracode diz:
Nossa pesquisa descobriu que a maioria dos aplicativos JavaScript contém centenas de bibliotecas de código aberto – alguns possuem mais de 1.000 bibliotecas diferentes. Além disso, a maioria das linguagens apresenta o mesmo conjunto de bibliotecas principais. O JavaScript e o PHP, em particular, têm várias bibliotecas principais que estão em praticamente todos os aplicativos.
Erros nas bibliotecas de código aberto impactam 70% dos softwares modernos
De acordo com o relatório da Veracode, quase qualquer aplicativo moderno inclui bibliotecas de código aberto que implementam funcionalidades que seriam extremamente tediosas para serem escritas do zero.
Os especialistas analisaram mais de 85.000 aplicativos e bibliotecas importadas relacionadas, representando mais de 351.000 bibliotecas externas exclusivas.
A maioria das vulnerabilidades que afetam os aplicativos analisados pelos pesquisadores estava presente nas bibliotecas de código aberto Swift, .NET, Go e PHP.
O Swift é amplamente usado no ecossistema da Apple, possui a maior densidade de vulnerabilidades, mas possui uma porcentagem geral baixa de bibliotecas defeituosas.
O Go possui uma alta porcentagem de bibliotecas com falhas, a boa notícia é que possui um número geral baixo de falhas por biblioteca individual. Comparado com o Go, o PHP tem uma taxa mais alta de bibliotecas defeituosas.
O cross-site scripting (XSS) é a vulnerabilidade mais comum que afeta as bibliotecas de código-fonte aberto, estando presente em 30% delas.
Por fim, o relatório conclui:
A maioria das falhas de biblioteca introduzidas (quase 75%) nos aplicativos pode ser solucionada com apenas uma pequena atualização de versão. Geralmente, não são necessárias grandes atualizações de bibliotecas!
Esses dados sugerem que o problema é de descoberta e rastreamento.
Fonte: Security Affairs