Application Security

Hvad er SBOM?

SBOM er en detaljeret inventarliste over komponenter, der udgør en software, inklusive tredjeparts- og open-source-biblioteker samt framework-versioner.

Hvad er SBOM (Software Bill of Materials)?

En Software Bill of Materials (SBOM) er en detaljeret inventarliste over komponenter, der udgør en software, inklusive tredjeparts- og open-source-biblioteker samt rammeversioner. Det er som en ingrediensliste inde i applikationen.

Ved at holde styr på hver komponent inde i applikationen kan udviklingsteamet hurtigt opdage, når nye sårbarheder opdages.

Hvorfor SBOM er vigtig i cybersikkerhed

Moderne applikationer bygges ved at kombinere hundrede eller tusinder af tredjepartsafhængigheder og open-source-biblioteker for at accelerere udviklingen. Hvis en af disse har sårbarheder, vil det sætte hele applikationen i fare.

En SBOM hjælper udviklingsteamet med at:

  • Identificere sårbarheder tidligere ved at kortlægge berørte komponenter
  • Forbedre overholdelse af standarder som NIST, ISO eller Executive Order 14028 i USA
  • Forbedre forsyningskædesikkerhed ved at sikre gennemsigtighed i softwarekompositionen
  • Opbygge tillid med kunder og partnere ved at vise, hvilke komponenter der er inkluderet

Nøgleelementer i en SBOM

En korrekt SBOM inkluderer normalt:

  • Komponentnavn (f.eks. lodash)
  • Version (f.eks. 4.17.21)
  • Licensinformation (open source eller proprietær)
  • Leverandør (projekt eller leverandør, der vedligeholder det)
  • Relationer (hvordan komponenter afhænger af hinanden)

Eksempel i praksis: Apache Struts-bruddet (Equifax, 2017)

I 2017 udnyttede angribere en kritisk sårbarhed i Apache Struts-rammeværket (CVE-2017-5638), som blev brugt i Equifax’s (amerikansk multinationalt forbrugerkreditrapporteringsbureau) webapplikationer. Patchen til denne sårbarhed var tilgængelig, men Equifax undlod at anvende den i tide.

Fordi de manglede synlighed i alle afhængigheder og biblioteker inde i deres applikation, gik fejlen i Struts-biblioteket ubemærket hen, hvilket førte til et af de største databrud i historien, hvor mere end 147 millioner personlige data blev eksponeret.

Hvis en SBOM havde været på plads, kunne Equifax hurtigt have:

  • Identificeret, at deres applikationer brugte den sårbare version af Apache Struts
  • Prioriteret patching, så snart sårbarheden blev offentliggjort
  • Reduceret den tid, angribere havde til at udnytte svagheden

Denne sag viser, hvor kritisk en SBOM er for at holde softwarekomponenter sikre, og hjælper organisationer med at handle hurtigere på nyligt offentliggjorte sårbarheder

Relaterede Termer

Ready to validate what matters?

Ready to validate what matters?

Plexicus is Proof-Driven AppSec: validated findings, contextual understanding, and reviewed remediation — anchored in evidence, scoped with you.

Qualification

Check whether AI Swarm Pentest fits your environment.

Share the minimum context. We will review the scope and tell you the next commercial step.

Before submitting — verify you fit

Teams with fewer than 50 developers: start a 14-day Trial instead of booking a demo. Start a 14-day Trial →

0 / 280

No commitment. If you don't fit, we'll tell you.

SAMPLE HANDOVER · ILLUSTRATIVE

Sample evidence handover

A trimmed view of what your team receives at the end of an AI Swarm Pentest engagement. Real engagements include full technical evidence, executive narrative, and a remediation plan.

VALIDATED FINDING Evidence attached

Server-Side Request Forgery in webhooks/receiver

demo-project/sample-app · src/webhooks/receiver.py:42

SeverityHigh CVSS 3.18.6 Priority79 Confirmedvia replay

Untrusted caller-supplied URLs reach an internal egress without an allowlist. Replayed in a sandbox against a fresh authorised target — the same control was validated to fail twice.

REVIEWER-READY REMEDIATION Merge-ready PR

Validate the target URL against an allowlist of permitted hostnames. Reject private/internal IP ranges. Enforce HTTPS only.

plexicus/remediation/webhooks-ssrf 3 changed · 0 new files
42resp = requests.get(target_url)
42+if not is_allowed_host(target_url):
43+  raise WebhookRejected(target_url)
44+resp = requests.get(target_url, timeout=5)
Every engagement hands over:
  • Executive briefing
  • Validated findings list
  • Merge-ready PRs
  • Compliance mapping (NIS2 · DORA · CRA)