Kostenlose DevOps-Analyse
Links das in Schutzfolie gehüllte Gestell einer fast fertigen Maschine, rechts kniet ein Automatisierungstechniker mit Taschenlampe vor dem offenen Schaltschrank, eine Kollegin in gelber Warnweste erfasst die Module auf dem TabletAI

// Der Weg: Problem → Funktionen → Adapter → Beispiel → Grenzen → frühe Nutzung

PLC SBOM Builder: eine SBOM für die ganze Maschine

SBOM-Generatoren aus der IT lesen Paketmanifeste, SPS-Projekte haben keine. Der SBOM Builder liest Geräte, Firmware-Stände und Bibliotheken über Adapter aus TIA Portal, CODESYS, TwinCAT und Studio 5000 und schreibt daraus eine CycloneDX-Datei für die ganze Maschine, in jedem Build neu.

30 Minuten · unverbindlich · kein Vertriebsgespräch

IN ENTWICKLUNG · CYCLONEDX 1.6 · BSI TR-03183-2 · MEHRERE HERSTELLER JE MASCHINE

01
// 01Kurz erklärt

Was ist der PLC SBOM Builder?

Der PLC SBOM Builder erzeugt die SBOM einer Maschine aus ihren SPS-Projekten, auch wenn darin Steuerungen mehrerer Hersteller stecken.

Der Cyber Resilience Act verlangt von Herstellern eine SBOM in einem gängigen, maschinenlesbaren Format, mindestens für die Top-Level-Abhängigkeiten; vollständig gilt er ab dem 11. Dezember 2027. Je Engineering-Umgebung liest ein Adapter die Engineering-Daten aus, der SBOM Builder führt sie mit den SBOMs der Komponentenhersteller zu einer Datei zusammen.

Auf einen Blick
Art
Kommandozeilenwerkzeug für Windows und Linux, Aufruf aus der Pipeline
Format
CycloneDX 1.6 als JSON
Prüfung
Schema CycloneDX 1.6 und Pflichtfelder nach BSI TR-03183-2
Adapter
Siemens TIA Portal, CODESYS, Beckhoff TwinCAT 3, Rockwell Studio 5000
Quellen
SPS-Projekte, Hersteller-SBOMs, Teil-SBOMs aus Syft oder cdxgen
Status
In Entwicklung, frühe Nutzung mit ausgewählten Teams
So soll es aussehen · Entwürfe der Oberfläche
  • Oberflächen-Entwurf der Pipeline-Stufe SBOM: Die Adapter tia-portal und twincat lesen 23 und 11 Geräte, dazu kommen drei Hersteller-SBOMs und eine Teil-SBOM aus Syft; die Prüfung gegen CycloneDX 1.6 und die Pflichtfelder nach BSI TR-03183-2 ist bestanden, mit dem Hinweis auf zwei Firmware-Stände ohne Hash; Ausgabe sbom-maschine.cdx.json mit 142 KomponentenAI
    /01 Lauf in der Pipeline

    Ein Aufruf in der Pipeline liest beide Stationen aus, nimmt die Hersteller-SBOMs dazu und prüft die fertige Datei. Zwei Firmware-Stände ohne Hash stehen als Hinweis da, nicht als leeres Feld.

  • Oberflächen-Entwurf des SBOM-Berichts für Maschine XY, Release R2026.10: links der Baum aus Maschine, Station PLC_1 und Roboterzelle mit ihren Komponenten, rechts die Komponenten von PLC_1 mit Typ, Version und Kennung als CPE oder bom-ref; vier sind vollständig, bei Kommunikationsmodul und Bedienpanel fehlt der Hash und ist vermerktAI
    /02 Prüfbericht

    Neben der JSON-Datei ein Bericht zum Lesen: die Maschine als Baum, je Komponente Kennung und Pflichtfelder. Lücken sind auf einen Blick zu sehen.

  • Oberflächen-Entwurf des Abgleichs für Maschine XY, Seriennummer 1042: Die Firmware-Stände aus der SBOM stehen neben dem Ist-Stand aus der Inbetriebnahme vom 22.10.2026; von 34 Geräten sind 31 gleich, bei Kommunikationsmodul, Antrieb Achse 1 und Buskoppler läuft im Feld eine neuere FirmwareAI
    /03 Abgleich mit dem Feld

    Liegt der Ist-Stand aus der Inbetriebnahme vor, steht er neben der SBOM. Bei drei von 34 Geräten läuft im Feld eine neuere Firmware als im Projekt.

Entwürfe, mit KI erzeugt, keine Bildschirmfotos. PLC SBOM Builder ist in Entwicklung; Namen und Nummern stammen aus dem Beispiel in Abschnitt 05. Ein Klick auf ein Bild öffnet es in voller Größe.

02
// 02Ausgangslage

Warum entsteht die SBOM einer Maschine nicht von selbst?

Weil ihre Bestandteile an verschiedenen Orten liegen. Geräte, Artikelnummern und projektierte Firmware stehen im Engineering-Projekt, bei einer gemischten Maschine in mehreren Projekten verschiedener Hersteller. Was in der Firmware steckt, weiß nur der Komponentenhersteller. Anwenderprogramm und eigene Bibliotheken liegen im Repository.

Für Steuerungs-Hardware gibt es keine Package URLs, und CPEs führt die NVD nur je Gerätefamilie, nicht je Bestellnummer. Seit April 2026 ergänzt sie die meisten neuen Schwachstellen zudem nicht mehr um CPEs. Tragfähiger ist die Bestellnummer: Siemens nennt sie in seinen CSAF-Advisories zu jedem betroffenen Gerät. Wer die SBOM von Hand pflegt, schreibt Bestellnummer, Firmware-Stand und Kennung für jede Baugruppe einzeln.

Und das Projekt ist nicht die Anlage. Eine Steuerung läuft auch mit neuerer Firmware als der im Projekt hinterlegten. Eine SBOM, die nur das Projekt kennt, weist dann den falschen Stand aus.

Ein Kunde fragt nach einer Schwachstellenmeldung, welche seiner Maschinen die betroffene Komponente enthalten. Die Antwort steht in zwei Excel-Listen, eine für die Siemens-Steuerungen und eine für die Beckhoff-Zellen, beide zuletzt bei der Abnahme vor zwei Jahren gepflegt.

03
// 03Funktionen

Was soll der SBOM Builder
können?

Der geplante Funktionsumfang. PLC SBOM Builder ist in Entwicklung, Einzelheiten können sich bis zur ersten Version ändern.

  • /01

    Hardware- und Firmware-Inventar

    Jedes Gerät mit Bestellnummer, dazu die Firmware, wo das Projekt sie führt.

    Über den Adapter liest der SBOM Builder alle Geräte aus dem Projekt: Steuerung, Kommunikations- und E/A-Module, Panels, Antriebe und Feldgeräte, jeweils mit Artikel- oder Katalognummer und dem projektierten Firmware-Stand. Bei EtherCAT-Klemmen und bei Geräten, die über eine GSDML-Datei eingebunden sind, steht keine Firmware im Projekt. Dort vermerkt die SBOM die Lücke, bis der Ist-Stand aus der Inbetriebnahme vorliegt.

  • /02

    Software-Inventar

    Anwenderprogramm, Bibliotheken, Zugekauftes.

    Das Anwenderprogramm geht mit Release-Kennung und Git-Commit in die SBOM ein, Bibliotheken mit Hersteller und Version. Geschützte Bausteine Dritter führt die SBOM mit Lieferant und Version, soweit sie bekannt sind.

  • /03

    Kennungen und Pflichtfelder

    Bestellnummer zuerst, CPE wo vorhanden, Lücken sichtbar.

    Jede Komponente trägt Hersteller, Bestellnummer und Firmware-Version als Properties in Ihrem Namespace; über diese Angaben lassen sich die CSAF-Advisories der Hersteller zuordnen. Eine CPE kommt aus einer Zuordnungstabelle dazu, die Sie pflegen, Komponenten ohne CPE bekommen eine eindeutige bom-ref. Fehlt für Hersteller-Firmware ein Hash, vermerkt die SBOM das ausdrücklich, statt das Feld leer zu lassen.

  • /04

    Eine Maschine, eine SBOM

    Adapter, Hersteller-SBOMs und Teil-SBOMs in einer Datei.

    Die Ergebnisse mehrerer Adapter, die SBOMs der Komponentenhersteller und Teil-SBOMs für Webseiten oder Hochsprachen-Anteile, die Syft oder cdxgen erzeugt haben, führt der SBOM Builder hierarchisch zusammen: Maschine, Station, Komponente.

  • /05

    Validieren und mit dem Feld abgleichen

    Erst geprüft, dann archiviert.

    Die fertige Datei prüft das Werkzeug gegen das Schema CycloneDX 1.6 und die Pflichtfelder der TR-03183-2; ein Fehler beendet den Build. Liegen ausgelesene Ist-Stände vor, etwa aus der Inbetriebnahme, gleicht es sie mit der SBOM ab und meldet jede Abweichung.

04
// 04Adapter

Welche Hersteller unterstützt der SBOM Builder?

Geplant sind Adapter für vier Engineering-Umgebungen. Bedienung und Regeln bleiben gleich, der Adapter übernimmt, was die jeweilige Umgebung anders macht. Welche Adapter zuerst fertig werden, ist noch offen. Weitere Umgebungen lassen sich über eigene Adapter anbinden.

Siemens TIA Portal V21Liest Geräte, Artikelnummern und Firmware-Stände über TIA Portal Openness, dazu Bibliothekstypen wie die LGF mit Typversion.
CODESYS V3.5Liest Geräte aus den Gerätebeschreibungen des Projekts und Bibliotheken mit Version aus dem Bibliotheksverwalter.
Beckhoff TwinCAT 3Liest E/A-Konfiguration und eingebundene Bibliotheken aus den Projektdateien, ohne die Umgebung starten zu müssen. Die Firmware der EtherCAT-Klemmen steht nicht im Projekt und kommt aus dem Ist-Stand.
Rockwell Studio 5000Liest Module mit Katalognummer und Revision sowie Add-On Instructions aus dem L5X-Export.
05
// 05Beispiel

Wie sieht die SBOM einer gemischten Maschine aus?

Ein stark verkürzter Entwurf für eine Maschine mit einer Siemens-Steuerung und einer Beckhoff-Zelle. CPE, Bestellnummer und Versionen sind Platzhalter, der Namespace firma: steht für Ihren eigenen.

Bei der nächsten Schwachstellenmeldung sucht niemand in Excel-Listen. Die SBOM jedes Release liegt am Build, für alle Steuerungen der Maschine, und die Bestellnummer aus dem Advisory des Herstellers findet sich mit einer Suche über alle SBOMs.

sbom-maschine.cdx.json
{
  "bomFormat": "CycloneDX",
  "specVersion": "1.6",
  "metadata": {
    "tools": { "components": [
      { "type": "application", "name": "PLC SBOM Builder" } ] },
    "component": { "type": "device", "name": "Maschine XY", "version": "R2026.10" }
  },
  "components": [
    { "bom-ref": "plc1-fw", "type": "firmware",
      "supplier": { "name": "Siemens AG" },
      "name": "SIMATIC CPU-Firmware", "version": "x.y.z",
      "cpe": "cpe:2.3:o:siemens:<cpu-typ>_firmware:x.y.z:*:*:*:*:*:*:*",
      "properties": [ { "name": "firma:bestellnummer", "value": "6ES7xxx-xxxxx-xxxx" },
                      { "name": "firma:adapter", "value": "tia-portal" } ] },
    { "bom-ref": "plc1-app", "type": "application",
      "name": "Station PLC_1, Anwenderprogramm", "version": "R2026.10 (git a1b2c3d)" },
    { "bom-ref": "zelle-rt", "type": "application",
      "supplier": { "name": "Beckhoff Automation" },
      "name": "TwinCAT 3 Runtime", "version": "…",
      "properties": [ { "name": "firma:adapter", "value": "twincat" } ] },
    { "bom-ref": "zelle-app", "type": "application",
      "name": "Roboterzelle, Anwenderprogramm", "version": "R2026.10 (git a1b2c3d)" }
  ],
  "dependencies": [
    { "ref": "plc1-app", "dependsOn": [ "plc1-fw" ] },
    { "ref": "zelle-app", "dependsOn": [ "zelle-rt" ] }
  ]
}

Entwurf · Befehle, Bezeichnungen und Ausgabe können sich bis zur ersten Version ändern.

// 06Grenzen

Was der SBOM Builder
nicht tut

  • /01

    Der SBOM Builder bewertet keine Schwachstellen. Das übernimmt ein Überwachungssystem. Dependency-Track etwa prüft die SBOM über CPE und Package URL, die CSAF-Advisories der Hersteller liest es bisher nicht.

  • /02

    Er schreibt keine VEX-Bewertungen. Ob eine Schwachstelle in Ihrer Maschine ausnutzbar ist, entscheiden Sie, und das gehört in ein eigenes VEX-Dokument.

  • /03

    Er kann keine Hersteller-SBOMs ersetzen. Die fordern Sie bei den Komponentenherstellern an.

  • /04

    Er liest die Anlage nicht selbst aus. Den Ist-Stand liefern die Diagnosewerkzeuge der Hersteller, bei Siemens etwa PRONETA oder der Webserver der CPU.

  • /05

    Eine SBOM allein erfüllt den Cyber Resilience Act nicht. Schwachstellenüberwachung und Meldewege gehören dazu.

07
// 07Voraussetzungen

Was braucht der SBOM Builder?

Build-Agent
Für Exportdateien wie L5X, AML oder die TwinCAT-Projektdateien jeder Agent unter Windows oder Linux. Für Adapter, die über die Schnittstelle des Herstellers lesen, etwa TIA Portal Openness, ein Windows-Agent mit der Engineering-Umgebung und denselben Gerätebeschreibungen wie die Arbeitsplätze (HSP, GSDML, ESI)
Lizenzen
Engineering-Lizenz der jeweiligen Umgebung, soweit der Adapter sie zum Lesen braucht
Repository
Hersteller-SBOMs als *.cdx.json neben den Projektquellen
Weiterverarbeitung
Optional Dependency-Track mit dem Jenkins-Plugin
08
// 08Einordnung

Wo steht der SBOM Builder
in der Kette?

Die vier Werkzeuge bauen aufeinander auf: versionieren, bauen und testen, nachweisen, mit KI entwickeln. Jedes läuft auch allein, in Ihrer vorhandenen Pipeline. Die ganze Strecke bis zur Anlage deckt die Plattform IndustrialFlow ab.

  1. 01 · Versionieren
    PLC Git Bridge
  2. 02 · Bauen und testen
    PLC Build Tool
  3. 03 · Nachweisen
    PLC SBOM Builder
    Diese Seite
  4. 04 · Mit KI entwickeln
    PLC KI Tool
Plattform · Verfügbar als 90-Tage-Pilot
IndustrialFlow

Entspricht in IndustrialFlow der SBOM im IEC-62443-Gate.

// 09Frühe Nutzung

Ab wann geht das
bei uns?

Wir suchen Maschinen- und Anlagenbauer, die ihre SBOM für den Cyber Resilience Act aufbauen und den SBOM Builder früh an einer Baureihe einsetzen wollen, gern mit Steuerungen mehrerer Hersteller. Was dafür nötig ist und ab wann es geht, klären wir in einem kurzen Gespräch.

Frühen Zugang anfragen
30 Minuten · unverbindlich · kein Vertriebsgespräch