La Control Tower di CAST per i componenti Open Source. Le implicazioni legali
Oltre il 90% delle applicazioni utilizza componenti open source.
Il crescente utilizzo di software open source nella maggior parte delle applicazioni ha rivoluzionato lo sviluppo del software, ma ha anche creato vulnerabilità nascoste introducendo rischi legali, di sicurezza e di obsolescenza.
Sono molti i casi di vulnerabilità di componenti e librerie open source che hanno aperto le porte ad attacchi cyber alle aziende. Tra gli ultimi, quello esploso nel dicembre scorso, che ha riguardato una vulnerabilità di Log4j (una utility di logging di Apache) che permetteva agli attaccanti d’iniettare codice per sottrarre dati, installare malware o altro.
Se da un lato quindi gli sviluppatori software ottengono grandi vantaggi dalle librerie open source, perché si riducono i tempi di sviluppo ed è più facile concentrarsi sulle componenti peculiari e più specifiche dell’applicazione, dall’altro però questo utilizzo viene spesso effettuato in violazione delle licenze che imporrebbero citazioni e limitazioni d’uso.
La conseguenza è che parte del codice incorporato nelle applicazioni non è conosciuto né censito, quindi escluso dagli aggiornamenti e patch che periodicamente vengono fatti per eliminare i bug funzionali e le vulnerabilità.
Come effettuare quindi una Software Composition Analysis (SCA) per limitare i rischi in maniera efficiente? Gli approcci tradizionali all'implementazione della Software Composition Analysis sono spesso impegnativi, possono essere necessari mesi o addirittura anni per implementare con successo una SCA per l’intero portfolio applicativo di un’azienda. Demandare il controllo agli Sviluppatori rallenta il loro lavoro oltre ad aumentare la complessità e i costi.
L'approccio migliore consiste nell'utilizzare una soluzione automatizzata per la sicurezza dei componenti open source e i controlli di conformità legale e introdurre tali controlli nel ciclo di vita dello sviluppo di applicazioni/prodotti. Questi controlli devono essere introdotti in anticipo e ripetuti frequentemente (ad esempio, ogni sprint).
CAST Highlight fornisce un'alternativa efficace ai tradizionali prodotti SCA. Tramite Cast Highlight è possibile scansionare in poche settimane un intero parco applicativo aziendale.
Questi i punti di forza che rendono CAST Highlight la migliore soluzione sul mercato:
- ha un’implementazione rapida e un’interfaccia utente facile da usare con una vista centralizzata dell'intero portfolio di applicazioni;
- fornisce suggerimenti di correzione per affrontare i rischi legali, di sicurezza e di obsolescenza;
- supporta un'ampia gamma di tecnologie e linguaggi di programmazione;
- Individua le vulnerabilità note dell'open source (CVE) e vulnerabilità non ancora segnalate (CWE);
- calcola l'indebitamento tecnico (giorni di lavoro richiesti) misurando la qualità del codice, la predisposizione al cloud e la sicurezza open source;
- è conforme alle normative, agli standard e alle migliori pratiche in materia di sicurezza (ISO 27001). il codice sorgente non lascia mai la rete dell’application owner che dopo avere compilato alcuni questionari sulle applicazioni da misurare, scarica un agent dal portale di Highlight, e in pochi minuti effettua l’analisi del codice sorgente delle sue applicazioni direttamente nella sua rete. Solo i risultati dell’analisi prodotti in file criptati, vengono poi caricati sul cloud privato e sicuro di Cast Highlight. I risultati vengono quindi aggregati e resi disponibili in dashboard intuitive e di dettaglio. Automaticamente viene generato il Software Bill of Materials (SBOMs) in formato standard.
Come districarsi tra le regole delle licenze dei componenti Open Source?
La maggior parte degli sviluppatori non conosce necessariamente tutte le implicazioni legali dell'utilizzo dei componenti open source usati nelle loro applicazioni. Sebbene i team di sviluppo abbiano più o meno familiarità con i principi fondamentali della licenza del software Open Source, alcune clausole di licenza possono essere scritte in modo complesso e creare confusione da comprendere. È qui che entra in gioco CAST Highlight per facilitare la comprensione dei termini di licenza OSS, con regole di licenza intuitive.
In CAST Highlight, un regolamento di licenza è un riepilogo intuitivo dei termini di una licenza che semplifica la comprensione delle possibili implicazioni legali. In altre parole, non è necessario leggere l'intero testo della licenza (sebbene sia disponibile in dashboard) per capire cosa si può fare, cosa non si può fare e cosa è necessario fare per includere un componente software con una specifica licenza.
Ecco i principi base che regolano la licenza:
In CAST Highlight, i manuali delle licenze sono disponibili per oltre 120 licenze e continueranno a crescere in futuro. Nell'interfaccia utente, i manuali sono disponibili nelle dashboard Composizione software (SCA) facendo clic su una licenza. Si apre una popup con l'intero testo della licenza, i principi base caratterizzati dal relativo colore nonché i collegamenti ai riferimenti sulla licenza.
Le regole delle licenze sono disponibili nelle dashboard a livello di portfolio nella sezione Componenti che elenca tutti i componenti e le licenze rilevati a livello di portafoglio oppure direttamente nella sezione Licenze.
E’ possibile visualizzare le regole delle licenze anche a livello di singola applicazione
Inoltre è disponibile una copia gratuita di “CAST Highlight Open Source License Rulebook and Reference Guide” al seguente indirizzo:
https://content.castsoftware.com/download-wp-open-source-license-rulebook-and-reference-guide
Questo ad esempio il contenuto relativo alla licenza di Apache 2.0:
Profilo di rischio delle licenze
In CAST Highlight, i componenti Open Source utilizzati dalle tue applicazioni vengono rilevati automaticamente con le relative licenze. A seconda dei vincoli, delle autorizzazioni e di altri attributi di queste licenze CAST Highlight determina. automaticamente un livello di rischio (alto, medio, basso) dell'utilizzo di tale componente all'interno di un'applicazione. Sebbene sia possibile utilizzare il profilo di rischio di licenza di default fornito da CAST, si può volere anche modificarlo o creare un nuovo profilo di rischio di licenza da zero applicando la propria politica di licenza. Il profilo di rischio di licenza predefinito di CAST è progettato per identificare i rischi di licenza comuni per un'applicazione tipica sviluppata da organizzazioni commerciali. Se non si è sicuri di una licenza specifica o di una categorizzazione del rischio, è preferibile comunque consultare un esperto legale open source.
Dall'interfaccia utente di CAST Highlight (Manage License Profiles), è possibile creare il proprio profilo di rischio della licenza determinando manualmente il livello di rischio (alto, medio, basso) per ciascuna licenza, oppure utilizzare il License Rule Book per determinare automaticamente il livello di rischio per ciascuna licenza in base alle proprietà e ai termini della licenza stessa.
Compatibilità delle licenze
Un altro tema importante è quello della compatibilità delle licenze relativamente ai vari componenti open source presenti nelle applicazioni.
Infatti, quando si ha a che fare con la compatibilità delle licenze Open Source, la verifica della compatibilità dei termini legali tra i componenti di terze parti e le rispettive dipendenze, se eseguita manualmente, potrebbe trasformarsi in una odissea infinita, aumentando il rischio legale di un conflitto di licenza.
Quando le organizzazioni creano applicazioni software utilizzando componenti Open Source di terze parti, devono assicurarsi che questi componenti "funzionino bene" con i componenti software che utilizzano essi stessi (dipendenze), da un punto di vista legale. Ci sono clausole contrastanti nelle diverse licenze dei componenti? I termini e gli obblighi della licenza sono contraddittori? Questo aspetto legale dei componenti OSS dovrebbe essere verificato per specifici contesti applicativi (ad esempio, software distribuito/commerciale).
Le licenze Open Source più popolari dichiarano pubblicamente la loro compatibilità con altre licenze, come la Free Software Foundation sulle sue versioni GPL (General Public License).
Esempio con licenza Apache, versione 1.1: “Questa è una licenza software libera permissiva senza copyleft. Ha alcuni requisiti che lo rendono incompatibile con la GNU GPL, come i forti divieti sull'uso di nomi relativi ad Apache".
Comments: