Application Security

Vad är SBOM?

SBOM är en detaljerad inventering av komponenter som utgör en mjukvara, inklusive tredjeparts- och öppen källkodsbibliotek samt ramverksversioner.

Vad är SBOM (Software Bill of Materials)?

En Software Bill of Materials (SBOM) är en detaljerad inventering av komponenter som utgör en mjukvara, inklusive tredjeparts- och öppen källkodsbibliotek samt ramverksversioner. Det är som en ingredienslista inuti applikationen.

Genom att hålla reda på varje komponent i applikationen kan utvecklingsteamet snabbt upptäcka när nya sårbarheter upptäcks.

Varför SBOM är viktigt inom cybersäkerhet

Moderna applikationer byggs genom att kombinera hundratals eller tusentals tredjepartsberoenden och öppen källkodsbibliotek för att påskynda utvecklingen. Om en av dessa har sårbarheter, kommer hela applikationen att utsättas för risk.

En SBOM hjälper utvecklingsteamet att:

  • Identifiera sårbarheter tidigare genom att kartlägga berörda komponenter
  • Förbättra efterlevnaden av standarder som NIST, ISO eller Executive Order 14028 i USA
  • Förbättra säkerheten i leveranskedjan genom att säkerställa transparens i mjukvarusammansättningen
  • Bygga förtroende med kunder och partners genom att visa vilka komponenter som ingår

Nyckelelement i en SBOM

En korrekt SBOM inkluderar vanligtvis:

  • Komponentnamn (t.ex., lodash)
  • Version (t.ex., 4.17.21)
  • Licensinformation (öppen källkod eller proprietär)
  • Leverantör (projekt eller leverantör som underhåller det)
  • Relationer (hur komponenter är beroende av varandra)

Exempel i praktiken: Apache Struts-brottet (Equifax, 2017)

År 2017 utnyttjade angripare en kritisk sårbarhet i Apache Struts-ramverket (CVE-2017-5638), som användes i Equifaxs (amerikanskt multinationellt konsumentkreditrapporteringsföretag) webbapplikationer. Patchen för denna sårbarhet var tillgänglig, men Equifax misslyckades med att tillämpa den i tid.

På grund av bristande insyn i alla beroenden och bibliotek i deras applikation gick felet i Struts-biblioteket obemärkt förbi, vilket ledde till en av de största dataintrången i historien, där mer än 147 miljoner personuppgifter exponerades.

Om en SBOM hade varit på plats, kunde Equifax snabbt ha:

  • Identifierat att deras applikationer använde den sårbara versionen av Apache Struts
  • Prioriterat patchning så snart sårbarheten avslöjades
  • Minskat tiden angripare hade för att utnyttja svagheten

Detta fall visar hur en SBOM har en kritisk roll för att hålla mjukvarukomponenter säkra, och hjälper organisationer att agera snabbare på nyligen avslöjade sårbarheter

Relaterade 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)