Valutazione delle biblioteche che richiedono controlli di sicurezza speciali

Fondazione costituita dalla Linux Foundation Iniziativa per le infrastrutture di base, in cui aziende leader hanno unito le forze per sostenere progetti open source in aree chiave dell'industria informatica, condotto secondo studio all'interno del programma Censimento, volto a identificare i progetti open source che necessitano di controlli di sicurezza prioritari.

Il secondo studio si concentra sull'analisi del codice open source condiviso utilizzato implicitamente in vari progetti aziendali sotto forma di dipendenze scaricate da repository esterni. Le vulnerabilità e la compromissione degli sviluppatori di componenti di terze parti coinvolti nel funzionamento delle applicazioni (catena di fornitura) possono annullare tutti gli sforzi volti a migliorare la protezione del prodotto principale. Come risultato dello studio lo era definito I 10 pacchetti più comunemente utilizzati in JavaScript e Java, la cui sicurezza e manutenibilità richiedono un'attenzione particolare.

Librerie JavaScript dal repository npm:

  • async (196mila righe di codice, 11 autori, 7 committer, 11 questioni aperte);
  • eredita (3.8mila righe di codice, 3 autori, 1 committer, 3 problemi irrisolti);
  • isarray (317 righe di codice, 3 autori, 3 committer, 4 questioni aperte);
  • tipo (2mila righe di codice, 11 autori, 11 committer, 3 problemi irrisolti);
  • lodash (42mila righe di codice, 28 autori, 2 committer, 30 questioni aperte);
  • minimista (1.2mila righe di codice, 14 autori, 6 committer, 38 questioni aperte);
  • nativi (3mila righe di codice, 2 autori, 1 committer, nessuna questione aperta);
  • qs (5.4mila righe di codice, 5 autori, 2 committer, 41 questioni aperte);
  • flusso leggibile (28mila righe di codice, 10 autori, 3 committer, 21 questioni aperte);
  • string_decoder (4.2mila righe di codice, 4 autori, 3 committer, 2 questioni aperte).

Librerie Java dai repository Maven:

  • jackson core (74mila righe di codice, 7 autori, 6 committer, 40 questioni aperte);
  • jackson-databind (74mila righe di codice, 23 autori, 2 committer, 363 questioni aperte);
  • guava.git, librerie Google per Java (1 milione di righe di codice, 83 autori, 3 committer, 620 questioni aperte);
  • codec-comuni (51mila righe di codice, 3 autori, 3 committer, 29 questioni aperte);
  • beni comuni (73mila righe di codice, 10 autori, 6 committer, 148 questioni aperte);
  • httpcomponents-client (121mila righe di codice, 16 autori, 8 committer, 47 questioni aperte);
  • httpcomponents-core (131mila righe di codice, 15 autori, 4 committer, 7 questioni aperte);
  • logback (154mila righe di codice, 1 autore, 2 committer, 799 questioni aperte);
  • lingua comune (168mila righe di codice, 28 autori, 17 committer, 163 questioni aperte);
  • slf4j (38mila righe di codice, 4 autori, 4 committer, 189 questioni aperte);

Il rapporto affronta anche questioni relative alla standardizzazione dello schema di denominazione dei componenti esterni, alla protezione degli account degli sviluppatori e al mantenimento delle versioni legacy dopo la realizzazione di nuove importanti versioni. Pubblicato inoltre dalla Linux Foundation documento con raccomandazioni pratiche per organizzare un processo di sviluppo sicuro per progetti open source.

Il documento affronta le questioni relative alla distribuzione dei ruoli nel progetto, alla creazione di team responsabili della sicurezza, alla definizione delle politiche di sicurezza, al monitoraggio dei poteri dei partecipanti al progetto, all'utilizzo corretto di Git durante la correzione delle vulnerabilità per evitare perdite prima di pubblicare la correzione, alla definizione dei processi per rispondere alle segnalazioni dei problemi di sicurezza, implementazione di sistemi di test di sicurezza, applicazione di procedure di revisione del codice, tenendo conto dei criteri legati alla sicurezza durante la creazione delle versioni.

Fonte: opennet.ru

Aggiungi un commento