Hoppa till huvudinnehållet

Efterlevnadsrapport

Efterlevnadsrapporten besvarar de frågor en revisor ställer om sårbarhetshantering: vad som var öppet, vad som åtgärdades och hur snabbt, om åtgärderna höll dina SLA:er per allvarlighetsgrad, vilka risker som accepterades och av vem, och vilken policy som gällde. Du väljer perioden och, om du vill, ett enskilt repo.

Du hittar den under Säkerhet › Rapporter › Efterlevnadsrapport (/<org>/_admin/security/reports/compliance). Ägare av organisationen och medlemmar i organisationens Auditors-team kan öppna och ladda ned den.

Vad den innehåller

AvsnittVad det visar
Öppna fyndFynd som är öppna vid periodens slut, per typ och allvarlighetsgrad. Typer: beroenden, container-images (även images som hämtas via beroendeproxyn), IaC, licenser, SAST, hemligheter, skadlig kod och registry-paket. Avfärdade och åtgärdade fynd räknas inte.
ÅtgärderPer allvarlighetsgrad: fynd som öppnats, åtgärdats och avfärdats under perioden, genomsnittlig tid från öppnat till åtgärdat, och efterlevnad av SLA. Per typ: öppnade, åtgärdade, avfärdade, genomsnittlig tid till åtgärd och fortfarande öppna. Därefter tiden till merge för de pull requests med säkerhetsfixar som mergades under perioden (median i timmar, per källa); den gäller hela organisationen och utelämnas därför i en rapport för ett enskilt repo. Sidan Åtgärdsmått definierar öppnat, åtgärdat och tid till merge.
SLA-överträdelserFynd av alla typer vars SLA-tidsgräns passerade under perioden medan de fortfarande var öppna, bredvid de code-security.sla.breached-händelser som registrerats för fynd i beroenden (de som skickas till din SIEM).
Gällande undantagGodkända undantag som gäller vid periodens slut, med vem som begärde och vem som godkände vart och ett och när det löper ut. Ett undantag som senare återkallats eller löpt ut visas ändå om det gällde då.
Mest riskfyllda komponenterUpp till 20 komponenter rangordnade efter ett antal öppna säkerhetsmeddelanden viktat efter allvarlighetsgrad (kritisk 10, hög 5, medel 2, låg 1). Från komponentinventeringen.
PolicyinställningarDe inställningar som gäller när rapporten genereras: SLA-dagar, skanningspolicy och tröskelvärden för skannrar, licenspolicyn med dess listor för neka, varna och tillåt, paketpolicyn med dess listor för neka och tillåt, läget för modellskanning och inställningarna för undantag.
Historik över fyndVarje fynd som var öppet någon gång under perioden, med när det öppnades, åtgärdades eller avfärdades, och dess SLA-läge. Bara i CSV.
AI-inventeringDe modellfiler din organisation har när rapporten genereras: hur många, hur många din policy för modellskanning blockerar eller skulle blockera, hur många som har ett avfärdat fynd, ditt läge för modellskanning, de modellhämtningar i CI som saknar fast revision, och filerna per angiven licens. Alltid för hela organisationen. CSV-filen listar varje modellfil.
IaC per benchmark och NIS2-områdeDe öppna IaC-fynden när rapporten genereras, grupperade efter de benchmarkkontroller som deras kontroller testar och efter NIS2-område; se nedan. För repot när du väljer ett.

Allvarlighetsgraderna följer säkerhetsöversikten: SAST error räknas som hög och warning som medel; en förbjuden licens räknas som kritisk och en begränsad som hög; hemligheter och skadlig kod är kritiska.

Efterlevnad av SLA för en allvarlighetsgrad är de fynd som åtgärdats inom sin SLA, delat med de som åtgärdats inom den, de som åtgärdats efter den och de som fortfarande var öppna efter den vid periodens slut. En allvarlighetsgrad utan SLA har ingen siffra för efterlevnad.

Fynd som inte är nåbara. Om din organisation har slagit på SLA-multiplikatorn använder varje SLA-siffra (efterlevnad, överträdelser under perioden och varje fynds förfallodatum) samma tidsgräns som SLA-etiketterna, sammanfattningen och SIEM-händelserna för överträdelser: ett fynd i ett beroende eller en image mäts mot den förlängda SLA:n bara när varje aktuell rad för det har bedömningen Ej nåbar, och aldrig när dess EPSS gör det troligt att det utnyttjas. Där den förlängda SLA:n skiljer sig från policyns SLA visar rapporten båda: “30, 60 utan anropsväg” och hur många fynd som mättes mot den förlängda. CSV och JSON innehåller sla_days (tidsgränsen som användes), policy_sla_days, policy_sla_due_at och sla_multiplier per fynd, och unreachable_sla_days och stretched_sla_findings per allvarlighetsgrad. Med multiplikatorn på 1 ändras ingenting.

Fynd i registry-paket visas bara för en organisation vars pipeline för paketpolicyer är aktiverad. Annars utelämnar rapporten dem och säger det; din egen paketpolicy och dess undantag listas ändå.

IaC per benchmark och NIS2-område

Per benchmark. En rad per benchmark: hur många av dess kontroller som har ett öppet fynd, hur många av dess kontroller som fremforges kontroller testar, de öppna fynden och id:n för kontrollerna med fynd. Mappningarna är Trivys egna efterlevnadsspecifikationer (MIT), i den version som skannrarna kör, för nio benchmarks: CIS Docker 1.6.0, CIS Kubernetes 1.23, RKE2 CIS 1.24, EKS CIS 1.4, NSA:s härdningsguide för Kubernetes 1.0, Pod Security Standards baseline och restricted, samt CIS AWS 1.2 och 1.4. Bara kontroll-id:n, allvarlighetsgrader och de kontroller som testar dem ingår; benchmarktexten återges inte (CIS publicerar den under sin egen licens), och varje benchmarks namn länkar till dess publicerade specifikation. Det finns ingen benchmark för Azure eller Google Cloud: Trivy publicerar ingen mappning för någon av dem.

Per NIS2-område. Samma fynd efter den åtgärd i NIS2 artikel 21.2 som varje kontroll berör: (b) incidenthantering, (c) kontinuitet i verksamheten, (e) säker konfiguration, (h) kryptografi och kryptering, (i) åtkomstkontroll. Den här grupperingen är fremforges egen, gjord utifrån varje kontrolls titel, eftersom det inte finns någon öppen mappning från de här kontrollerna till NIS2. Det är ingen officiell mappning och den anger inte efterlevnad av någon åtgärd.

Din organisations egna kontroller räknas under NIS2-område (e) om inte deras titel nämner något av de andra; de mappas inte till någon benchmarkkontroll. Utan öppna IaC-fynd säger avsnittet det på en rad.

Format

  • PDF-sammanfattning: varje avsnitt sammanfattat på några A4-sidor, på ditt konsolspråk (engelska, danska, tyska, franska, nederländska, norska eller svenska).
  • CSV: en fil per avsnitt (open, remediation, sla, exceptions, components, policy, findings, ai_inventory, iac_compliance), var och en komplett, med stabila engelska kolumnnamn, för ett kalkylblad eller ett skript. iac_compliance har en rad per benchmarkkontroll med fynd och en per NIS2-område: grouping, framework, version, control, severity, checks (kontroll-id:na, separerade med mellanslag) och open_findings.

Varje nedladdning registreras i granskningsloggen som compliance.security_report.generated.

Perioden

Hela dagar i UTC, båda ändar inräknade, högst 366 dagar. Standard är de senaste 30 dagarna. Ett fynd som öppnas kl. 00:00:00 den första dagen eller åtgärdas kl. 23:59:59 den sista räknas som inom perioden.

Var historiken kommer ifrån

De flesta skannrar ersätter sina fynd vid varje skanning, så skannrarnas tabeller ensamma kan inte säga när något åtgärdades. fremforge registrerar därför varje fynds livscykel (öppnat, åtgärdat, avfärdat) en gång om dagen för varje organisation och dessutom varje gång en rapport genereras. Rapporten läser den registreringen, och dess sista avsnitt, Om historiken, anger vad den kan och inte kan visa:

  • Historiken börjar det datum då registreringen startade för din organisation. En åtgärd före det datumet räknas bara där skannern behöll fyndet (den markerar fynd som en senare skanning inte längre rapporterar, och fynd för skadliga paket och registry-paket behåller sina egna datum för lösning). För ett fynd som redan var öppet är öppningsdatumet det som skannern registrerade.
  • Tider för åtgärder är exakta på timmen eller inom en dag. Där skannern markerade åtgärden används dess tid. Där ett fynd helt enkelt försvann registreras åtgärden när den dagliga registreringen, eller en rapport, först inte längre hittar det.
  • Fynd i ett raderat, omdöpt eller överfört repo räknas som åtgärdade den dag de tas bort: efter fönstret på 30 dagar för återställning av ett raderat repo, eller när det gamla namnet inte längre finns för ett som raderats direkt, döpts om eller överförts. Se Lagring av bevis.
  • SAST-fynd som var öppna innan registreringen började har sin senaste skanning som öppningsdatum, eftersom SAST-skannern inte sparar ett datum för när fyndet först sågs.
  • Avfärdanden visas som de ser ut nu; ett som hävts senare finns inte med i rapporten.

Via REST API

GET /_app/api/v1/orgs/{org}/security/compliance-report
    ?from=2026-09-01&to=2026-09-30
    &repo=web                          optional, a repository of the org
    &format=json | pdf | csv           default json
    &section=open|remediation|sla|exceptions|components|policy|findings|ai_inventory|iac_compliance   with format=csv
    &lang=en|da|de|fr|nl|sv            PDF language; else Accept-Language, else English

Kräver en token med findings:read. JSON är hela rapporten, inklusive history.notes. Exempel:

curl -H "Authorization: Bearer ${FREMFORGE_TOKEN}" \
  "https://frem.sh/_app/api/v1/orgs/acme/security/compliance-report?from=2026-07-01&to=2026-09-30&format=pdf&lang=da" \
  -o compliance-report.pdf

Bifoga den till veckosammanfattningen

En ägare av organisationen kan bifoga PDF:en till säkerhetssammanfattningen: kryssa i Bifoga den här rapporten som PDF till säkerhetssammanfattningen längst ned på rapportsidan. Det är avstängt som standard. Den bifogade rapporten täcker sammanfattningens egen period (7 dagar, eller 1 dag för en daglig prenumeration) och är på varje mottagares språk.

Via API:t: PUT /_app/api/v1/orgs/{org}/security/compliance-report/settings med {"digest_attachment": true} (policy:write); läs den med GET på samma sökväg (policy:read).