Anonyme tal
fremforge offentliggør tal om, hvordan selskabets sikkerhedsfunktioner virker i praksis, for eksempel hvor mange åbne fund i afhængigheder der ikke har nogen kaldsti til den sårbare kode, eller hvor lang tid rettelser tager. Organisationer kan vælge at bidrage med anonyme tal til dem. Indstillingen er slået fra, medmindre en ejer af organisationen slår den til, og ingen organisation nævnes nogensinde ved navn.
Der er endnu ikke offentliggjort nogen tal. Et offentliggjort tal skal bygge på mindst fem bidragende organisationer (se Hvornår et tal må offentliggøres), og der er ikke fem endnu. Denne side beskriver metoden på forhånd, så den kan efterprøves, før noget tal dukker op.
Slå det til eller fra
Indstillingen ligger under Sikkerhed › Rapporter › Udbedringsmålinger (/<org>/_admin/security/reports/remediation) i kortet Bidrag med anonyme tal, der viser, om den er slået til, siden hvornår, og hvor mange dage der er gemt. Ejere af organisationen kan ændre den.
- Til: fra næste morgen (UTC) gemmes én række med tal for organisationen pr. dag.
- Fra: indsamlingen stopper, og alle dage, der allerede er gemt for organisationen, slettes med det samme.
Den samme indstilling findes i API’et og i Terraform:
GET /_app/api/v1/orgs/{org}/security/anonymous-counts policy:read
PUT /_app/api/v1/orgs/{org}/security/anonymous-counts policy:write {"enabled": true}GET returnerer enabled, enabled_at, stored_days og min_orgs_to_publish. PUT returnerer også previous, changed og deleted_rows, de dage, der blev slettet, da den blev slået fra. Hver ændring står i revisionsloggen som code-security.anonymous_counts.updated.
resource "fremforge_anonymous_counts" "this" {
org = "acme"
enabled = true
}Fjerner du Terraform-ressourcen, forbliver indstillingen, som den er. Vil du holde op med at bidrage, så sæt enabled = false.
Hvad der deles
En gang om dagen, for det foregående hele døgn i UTC:
| Tal | Hvad det er |
|---|---|
| Åbne fund | Hvor mange fund der er åbne, efter type (afhængigheder, images, SAST, secrets, licenser og resten) og alvorlighed, på tidspunktet for indsamlingen. |
| Nåbarhed | Hvor mange åbne fund i afhængigheder på standardbranches der er nåbare, ikke har nogen kaldsti eller er ukendte, som på siden Udbedringsmålinger. |
| Pull requests med sikkerhedsrettelser | Hvor mange pull requests med sikkerhedsrettelser der blev åbnet, og hvor mange der blev merget den dag. |
| Tid til rettelse | For fund, der blev rettet den dag, pr. alvorlighed: hvor mange, hvor længe de var åbne, og et histogram over de tider i faste intervaller (under 1 dag, 1–2, 2–4, 4–7, 7–14, 14–30, 30–60, 60–90, 90–180 dage og længere). |
Deles aldrig: navne på repositorier, pakker, images, advisories eller regler, kode, filstier og noget som helst om personer. Den gemte række indeholder tallene og din organisations interne id. Id’et bruges kun til at slette dine dage, når du slår dette fra, eller når din organisation slettes, og til at erstatte en dag i stedet for at tilføje en dag nummer to. Intet, der offentliggøres eller deles, bærer det, og fremforge-medarbejdernes værktøjer, der læser tallene, ser ingen organisationsidentitet.
Tid til rettelse medregner ikke fund, der blev lukket af automatisk afslutning, som lukker et fund ud fra en politik i stedet for at rette det, og heller ikke fund, hvis åbningstidspunkt ikke kendes, fordi de blev registreret, før historikken for fund begyndte.
Hvornår et tal må offentliggøres
- Kun fra organisationer, der har slået det til. fremforge måler også sine egne funktioner på tværs af alle organisationer som tal for at drive tjenesten. De interne målinger offentliggøres aldrig.
- Mindst fem organisationer bag hvert tal. Hvert tal tjekkes for sig: et tal om tid til rettelse af kritiske fund kræver fem organisationer, der har rettet et kritisk fund i perioden, ikke blot fem organisationer i alt. Et tal fra færre offentliggøres slet ikke, i stedet for at blive afrundet eller vist med et forbehold.
- Ingen organisation nævnes ved navn, og intet offentliggøres, der ville gøre det muligt at udpege en.
- fremforges egne organisationer holdes adskilt. De vises separat, når vi tjekker tallene, og indgår aldrig i et offentliggjort tal.
- Eksempelrepositorier tæller aldrig med. Fund og pull requests med rettelser i et eksempelrepository udelades, og en organisation, hvis eneste repository er et eksempel, bidrager slet ikke med tal, så den kan aldrig være en af de fem.
- En juridisk gennemgang kommer først. Før noget tal offentliggøres, gennemgås offentliggørelsen juridisk. Der er ikke offentliggjort nogen tal.
Sådan beregnes tallene
- Øjebliksbilleder (åbne fund, nåbarhed) bruger hver bidragende organisations seneste dag i perioden, lagt sammen.
- Strømme (pull requests, rettelser) lægger alle dage i perioden sammen, typisk 30 eller 90 dage.
- Tid til rettelse på tværs af organisationer angives som det interval i histogrammet, som den samlede median falder i, for eksempel “7–14 dage”. En median af hver organisations median ville ikke være medianen af alle rettelserne, så den beregner vi ikke.
- Hvert offentliggjort tal angiver sin periode, antallet af bidragende organisationer og et link til denne side.
Opbevaring
En gemt dag opbevares i 25 måneder og slettes derefter. Slår du indstillingen fra, slettes organisationens dage med det samme. Det samme sker, når organisationen slettes.