OpenSSF Scorecard - Metriche di salute della sicurezza per l'Open Source
Abbiamo creato Scorecard per aiutare i manutentori di open source a migliorare le loro buone pratiche di sicurezza e per aiutare i consumatori di open source a giudicare se le loro dipendenze sono sicure.
Scorecard è uno strumento automatizzato che valuta una serie di importanti euristiche ("checks") associate alla sicurezza del software e assegna a ciascun check un punteggio da 0 a 10. Puoi usare questi punteggi per capire in quali aree specifiche migliorare al fine di rafforzare la postura di sicurezza del tuo progetto. Puoi anche valutare i rischi introdotti dalle dipendenze e prendere decisioni consapevoli sull'accettazione di questi rischi, valutando soluzioni alternative o lavorando con i manutentori per apportare miglioramenti.
L'ispirazione per il logo di Scorecard: "You passed! All D's ... and an A!"
Automatizzare le analisi e le decisioni di fiducia sulla postura di sicurezza dei progetti open source.
Utilizzare questi dati per migliorare proattivamente la postura di sicurezza dei progetti critici da cui il mondo dipende.
Fungere da strumento di misura per le politiche esistenti
Se i consumatori di OSS richiedono determinati comportamenti dalle loro dipendenze,
Scorecard può essere utilizzato per misurarli. Con il rilascio V5, vediamo i
Structured Results come un modo per farlo se esiste un'analisi supportata.
Invece di basarsi su un punteggio aggregato di X/10 o su un punteggio Maintained di
Y/10, un consumatore di OSS potrebbe voler assicurarsi che il repository da cui dipende
non sia archiviato (cosa coperta dalla probe archived). OpenSSF
adotta questo approccio con il suo Security Baseline per i progetti.
Essere un report definitivo o un requisito che tutti i progetti dovrebbero seguire.
Scorecard non è inteso come una soluzione valida per tutti. Ogni passo nella creazione dei nostri risultati è opinabile: quali check includere o escludere, l'importanza di ciascun check e come vengono calcolati i punteggi. Gli stessi check sono euristiche; ci sono falsi positivi e falsi negativi.
Che sia per applicabilità, fattibilità o questione di opinione, ciò che è incluso o escluso dai risultati di Scorecard porta a molte discussioni. È impossibile creare una Scorecard che soddisfi tutti perché diversi pubblici si preoccuperanno di diversi sottoinsiemi di comportamento.
I punteggi aggregati in particolare non dicono nulla su quali singoli comportamenti un repository sta o non sta adottando. Molti punteggi dei check sono aggregati in un unico punteggio e ci sono molti modi per arrivare allo stesso punteggio. Questi punteggi cambiano man mano che aggiungiamo nuove euristiche o perfezioniamo quelle esistenti.
Scorecard è stato eseguito su migliaia di progetti per monitorare e tracciare le metriche di sicurezza. Tra i progetti di rilievo che utilizzano Scorecard ci sono:
Per vedere i punteggi dei progetti scansionati regolarmente da Scorecard, vai al webviewer. Puoi anche sostituire il testo segnaposto (piattaforma, utente/org e nome del repository) nel seguente link template per generare un link Scorecard personalizzato per un repository:
https://scorecard.dev/viewer/?uri=<github_or_gitlab>.com/<user_name_or_org>/<repository_name>
Per esempio:
Per vedere i punteggi di progetti non inclusi nel webviewer, utilizza la CLI di Scorecard.
Eseguiamo una scansione settimanale di Scorecard sul milione di progetti open source più critici giudicati dalle loro dipendenze dirette e pubblichiamo i risultati in un set di dati pubblico di BigQuery.
Questi dati sono disponibili nel set di dati pubblico di BigQuery
openssf:scorecardcron.scorecard-v2. I risultati più recenti sono disponibili nella
vista BigQuery openssf:scorecardcron.scorecard-v2_latest.