⚡ Windows Hardware Compatibility Program

SBOM-Anforderungen für Windows-Treiber bei WHCP-Einreichungen

Ab dem Windows-Release 2027 signiert Microsoft keinen Treiber mehr ohne eine SPDX-3-SBOM für jedes Treiberpaket. lynkctl erzeugt sie direkt aus Ihrem MSBuild- und WDK-Build.

Vertraut von regulierten Produktteams in Vorbereitung auf

WHCP
WHCP

Vertraut von regulierten Produktteams in Vorbereitung auf

WHCP
WHCP

Vertraut von regulierten Produktteams in Vorbereitung auf

WHCP
WHCP

KURZ GESAGT

Ab dem Windows-Client- und -Server-Release 2027 signiert Microsoft über das Hardware Dev Center (HDC) keinen Treiber, wenn nicht jedes Treiberpaket eine gültige SPDX-3-SBOM mitbringt.

Jedes Paket bekommt eine eigene SBOM, benannt nach seiner INF-Datei, mit jeder Komponente samt SHA-512-Hash, Lizenz und Abhängigkeiten. Ohne sie stellt HLK kein Einreichungspaket zusammen. Fehlt sie oder besteht sie die Validierung nicht, signiert HDC nicht.

Microsoft nimmt Anfang 2027 ein eigenes SBOM-Tool in das WDK auf. Darauf müssen Sie nicht warten. Jeder Generator, der eine konforme SPDX-3-Datei erzeugt, wird akzeptiert.

Ab dem Windows-Client- und -Server-Release 2027 signiert Microsoft über das Hardware Dev Center (HDC) keinen Treiber, wenn nicht jedes Treiberpaket eine gültige SPDX-3-SBOM mitbringt.

Jedes Paket bekommt eine eigene SBOM, benannt nach seiner INF-Datei, mit jeder Komponente samt SHA-512-Hash, Lizenz und Abhängigkeiten. Ohne sie stellt HLK kein Einreichungspaket zusammen. Fehlt sie oder besteht sie die Validierung nicht, signiert HDC nicht.

Microsoft nimmt Anfang 2027 ein eigenes SBOM-Tool in das WDK auf. Darauf müssen Sie nicht warten. Jeder Generator, der eine konforme SPDX-3-Datei erzeugt, wird akzeptiert.

ÜBERBLICK

ÜBERBLICK

ÜBERBLICK

Was ist die WHCP-SBOM-Anforderung für Treiber?

Was ist die WHCP-SBOM-Anforderung für Treiber?

Über das Windows Hardware Compatibility Program (WHCP) lassen Hardwarepartner ihre Treiber von Microsoft signieren. Ab dem Windows-Client- und -Server-Release 2027 muss jede betroffene Treibereinreichung eine Software Bill of Materials enthalten: eine Liste dessen, was im Treiberpaket steckt, mit Datei-Hashes und Lizenzen. Microsofts Feldliste stammt aus der BSI TR-03183-2, die viele Hersteller bereits für den EU Cyber Resilience Act nutzen.

Über das Windows Hardware Compatibility Program (WHCP) lassen Hardwarepartner ihre Treiber von Microsoft signieren. Ab dem Windows-Client- und -Server-Release 2027 muss jede betroffene Treibereinreichung eine Software Bill of Materials enthalten: eine Liste dessen, was im Treiberpaket steckt, mit Datei-Hashes und Lizenzen. Microsofts Feldliste stammt aus der BSI TR-03183-2, die viele Hersteller bereits für den EU Cyber Resilience Act nutzen.

SPDX 3

Das einzige akzeptierte SBOM-Format

1 pro Paket

Eine SBOM für jede INF-Datei und ihre Binärdateien

Eine SBOM für jede INF-Datei und ihre Binärdateien

SHA-512

Hash für jede Komponente erforderlich

Hash für jede Komponente erforderlich

2027

Erstes Windows-Release, für das sie gilt

Erstes Windows-Release, für das sie gilt

ZEITPLAN

ZEITPLAN

ZEITPLAN

WHCP-SBOM-Zeitleiste und wichtige Termine

WHCP-SBOM-Zeitleiste und wichtige Termine

Datum

Meilenstein

Was das bedeutet

September 2026

Erste Ankündigung

Microsoft kündigt an, dass WHCP-Treibereinreichungen eine SBOM und eine VEX-Aussage brauchen. Durch den Beitrag vom Oktober ersetzt.

21. Oktober 2026

Anforderungen überarbeitet

Microsoft legt das Format auf SPDX 3.0.1 fest und knüpft den Geltungsbereich an das Windows-Release 2027. VEX ist nicht mehr Teil der Einreichung.

Anfang 2027

Microsoft-SBOM-Tool im WDK

Microsofts Generator erscheint im Windows Driver Kit. Andere Tools bleiben zulässig.

Windows-Release 2027 (RTM)

Durchsetzung beginnt

HLK und HDC prüfen ab dann betroffene Einreichungen. Microsoft veröffentlicht das endgültige Datum noch.

GELTUNGSBEREICH

GELTUNGSBEREICH

GELTUNGSBEREICH

Wen betrifft die WHCP-SBOM-Anforderung?

Wen betrifft die WHCP-SBOM-Anforderung?

Sie gilt für betroffene Treiberpakete, die über HDC für das Windows-Client- oder -Server-Release 2027 oder später eingereicht werden. In der Praxis heißt das: IHVs, OEMs, ODMs und alle anderen, die einen signierten Treiber für ihre Hardware ausliefern.

Microsofts Ankündigung nennt drei Rollen.

Sie gilt für betroffene Treiberpakete, die über HDC für das Windows-Client- oder -Server-Release 2027 oder später eingereicht werden. In der Praxis heißt das: IHVs, OEMs, ODMs und alle anderen, die einen signierten Treiber für ihre Hardware ausliefern.

Microsofts Ankündigung nennt drei Rollen.

Entwickler

Teams, die das Treiberpaket und seine Binärdateien bauen, einschließlich Code von Chipherstellern und anderen Zulieferern.

Signierer

Partner, die den Treiber über WHCP signieren lassen, ob per HLK-Zertifizierung oder Attestierung.

Einreicher

Alle, die im Auftrag eines Unternehmens Treiberpakete in das Hardware Dev Center hochladen.

Hinweis: Ältere Zielversionen bleiben außen vor. Ein Treiber für Windows 25H2, 24H2 oder Windows 10 braucht keine SBOM, auch wenn Sie ihn nach Beginn der Durchsetzung einreichen.

PFLICHTFELDER

PFLICHTFELDER

PFLICHTFELDER

Pflichtfelder der SBOM

Pflichtfelder der SBOM

Zur SBOM selbst

Zur SBOM selbst

E-Mail-Adresse oder URL des Erstellers und ein Erstellungszeitstempel.

E-Mail-Adresse oder URL des Erstellers und ein Erstellungszeitstempel.

E-Mail-Adresse oder URL des Erstellers und ein Erstellungszeitstempel.

Jede Komponente

Jede Komponente

Ersteller, Name, Version, Dateiname, Lizenz als SPDX-Kennung, SHA-512-Hash und die Angabe, ob es sich um eine ausführbare Datei, ein Archiv oder eine strukturierte Datei handelt.

Ersteller, Name, Version, Dateiname, Lizenz als SPDX-Kennung, SHA-512-Hash und die Angabe, ob es sich um eine ausführbare Datei, ein Archiv oder eine strukturierte Datei handelt.

Ersteller, Name, Version, Dateiname, Lizenz als SPDX-Kennung, SHA-512-Hash und die Angabe, ob es sich um eine ausführbare Datei, ein Archiv oder eine strukturierte Datei handelt.

Beziehungen und Tiefe

Beziehungen und Tiefe

Direkte Abhängigkeiten oder enthaltene Komponenten, dazu ein Vollständigkeitsstatus. Jeder Pfad wird mindestens bis zur ersten Komponente aufgelöst, die Sie nicht selbst ausliefern.

Direkte Abhängigkeiten oder enthaltene Komponenten, dazu ein Vollständigkeitsstatus. Jeder Pfad wird mindestens bis zur ersten Komponente aufgelöst, die Sie nicht selbst ausliefern.

Direkte Abhängigkeiten oder enthaltene Komponenten, dazu ein Vollständigkeitsstatus. Jeder Pfad wird mindestens bis zur ersten Komponente aufgelöst, die Sie nicht selbst ausliefern.

Falls verfügbar

Falls verfügbar

SBOM-URI, Quellcode-URI, PURL oder CPE und ursprüngliche Lizenzen. Eine neue SBOM für jede Version.

SBOM-URI, Quellcode-URI, PURL oder CPE und ursprüngliche Lizenzen. Eine neue SBOM für jede Version.

SBOM-URI, Quellcode-URI, PURL oder CPE und ursprüngliche Lizenzen. Eine neue SBOM für jede Version.

DER SCHWIERIGE TEIL

DER SCHWIERIGE TEIL

DER SCHWIERIGE TEIL

Warum sind Treiber-SBOMs schwer zu erstellen?

Warum sind Treiber-SBOMs schwer zu erstellen?

Die meisten SBOM-Generatoren lesen zuerst ein Paketmanifest. Ein Windows-Treiber hat in der Regel keins. Er ist in C oder C++ geschrieben, wird mit MSBuild und dem WDK gebaut und enthält oft Quellcode aus dem SDK eines Chipherstellers sowie statische Bibliotheken, die beim Build gelinkt werden.

Die meisten SBOM-Generatoren lesen zuerst ein Paketmanifest. Ein Windows-Treiber hat in der Regel keins. Er ist in C oder C++ geschrieben, wird mit MSBuild und dem WDK gebaut und enthält oft Quellcode aus dem SDK eines Chipherstellers sowie statische Bibliotheken, die beim Build gelinkt werden.

☑️ Kein Paketmanager, die Abhängigkeiten müssen also aus dem Build selbst kommen
☑️ Übernommener und veränderter Quellcode ohne Versionsangaben
☑️ Statische Bibliotheken, die in den Imports der fertigen Binärdatei keine Spur hinterlassen
☑️ Ein SHA-512-Hash für jede tatsächlich ausgelieferte Datei
☑️ Lizenzen als SPDX-Kennungen statt als Freitext
☑️ Eine eigene SBOM für jede INF-Datei in einer Einreichung mit mehreren Treibern

{
"@context": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld",
"@graph": [
{
"type": "software_File",
"spdxId": "urn:contoso:file:contoso.sys",
"creationInfo": "_:creationinfo",
"name": "contoso.sys",
"software_primaryPurpose": "executable",
"verifiedUsing": [{
"type": "Hash",
"algorithm": "sha512",
"hashValue": "9f2c4e…"
}]
},
…
]
}

Paket-Scanner für npm- oder PyPI-Projekte übersehen das meiste davon. Damit eine Treiber-SBOM die HDC-Validierung besteht, muss sie aus dem Build selbst erzeugt werden.

Paket-Scanner für npm- oder PyPI-Projekte übersehen das meiste davon. Damit eine Treiber-SBOM die HDC-Validierung besteht, muss sie aus dem Build selbst erzeugt werden.

PRÜFUNG DER EINREICHUNG

PRÜFUNG DER EINREICHUNG

PRÜFUNG DER EINREICHUNG

Was prüfen HLK und HDC?

Was prüfen HLK und HDC?

Ihre SBOM wird zweimal geprüft. Das Hardware Lab Kit (HLK) sucht sie, wenn Sie eine Einreichung zusammenstellen. Danach validiert das Hardware Dev Center (HDC) sie vor dem Signieren gegen Microsofts Schema und Pflichtfelder.

Ihre SBOM wird zweimal geprüft. Das Hardware Lab Kit (HLK) sucht sie, wenn Sie eine Einreichung zusammenstellen. Danach validiert das Hardware Dev Center (HDC) sie vor dem Signieren gegen Microsofts Schema und Pflichtfelder.

1 pro INF

Eine SBOM pro Treiberpaket, nie eine für die gesamte Einreichung

.spdx.json

Benannt nach der INF-Datei: <inf_name>.spdx.json

Benannt nach der INF-Datei

HLK

Blockiert das Paketieren, wenn die SBOM fehlt

HDC

Verweigert die Signatur, wenn sie fehlt oder ungültig ist

ZIEL

BETROFFEN

WARUM

Windows-Client- oder -Server-Release 2027 und später

Ja

Betroffen: Ja

Die Anforderung ist für diese Releases geschrieben

Windows 11 25H2, 24H2 und Windows 10

Nein

Betroffen: Nein

Ältere Ziele werden nicht einbezogen, auch nicht bei Einreichung nach Beginn der Durchsetzung

Einreichung mit mehreren Treibern

Ja, pro Paket

Betroffen: Ja, pro Paket

Jedes Treiberpaket braucht seine eigene SBOM

WISSENSWERTES

  • Legen Sie die SBOM dort ab, wo HLK oder HDC es vorgibt, nicht im Ordner für ergänzende Dokumente.

  • Schwachstellen- und Ausnutzbarkeitsdaten gehören nicht in die SBOM. Microsoft möchte sie separat erhalten, etwa als CSAF oder VEX.

  • Das Signieren der SBOM wird empfohlen, ist aber nicht vorgeschrieben.

  • Microsoft nutzt die SBOM nur intern. Sie wird nicht an Endnutzer ausgeliefert.

  • Jeder konforme Generator ist zulässig. Sie müssen nicht auf das WDK-Tool warten.

  • Legen Sie die SBOM dort ab, wo HLK oder HDC es vorgibt, nicht im Ordner für ergänzende Dokumente.

  • Schwachstellen- und Ausnutzbarkeitsdaten gehören nicht in die SBOM. Microsoft möchte sie separat erhalten, etwa als CSAF oder VEX.

  • Das Signieren der SBOM wird empfohlen, ist aber nicht vorgeschrieben.

  • Microsoft nutzt die SBOM nur intern. Sie wird nicht an Endnutzer ausgeliefert.

  • Jeder konforme Generator ist zulässig. Sie müssen nicht auf das WDK-Tool warten.

MEHR ALS DAS MINIMUM

Reicht es, die HDC-Validierung zu bestehen?

Reicht es, die HDC-Validierung zu bestehen?

BESTEHT HDC

HÄLT STAND

Tiefe

Bis zur ersten Komponente außerhalb Ihrer Lieferung

Besteht HDC: Bis zur ersten Komponente außerhalb Ihrer Lieferung

✓ Vollständiger, transitiver Abhängigkeitsbaum

Aktualität

Für jede Einreichung erstellt

Besteht HDC: Für jede Einreichung erstellt

✓ Bei jedem Build neu erzeugt

Schwachstellendaten

Außerhalb der SBOM geführt

Besteht HDC: Außerhalb der SBOM geführt

✓ Auf neue CVEs überwacht, mit VEX

Wiederverwendung

Nur für WHCP

Besteht HDC: Nur für WHCP

✓ Dieselbe SBOM dient auch der technischen Dokumentation für den CRA

PLATTFORM

PLATTFORM

PLATTFORM

So hilft Interlynk

So hilft Interlynk

lynkctl erstellt die SBOM aus Ihren MSBuild- und WDK-Projekten. Die Interlynk-Plattform speichert sie und überwacht ihre Komponenten weiter, wenn der Treiber ausgeliefert ist.

lynkctl erstellt die SBOM aus Ihren MSBuild- und WDK-Projekten. Die Interlynk-Plattform speichert sie und überwacht ihre Komponenten weiter, wenn der Treiber ausgeliefert ist.

01

SPDX 3 direkt aus dem Build

lynkctl liest Ihre MSBuild- und WDK-Projekte direkt, sodass übernommener Code und statische Bibliotheken in der SBOM landen.

02

SBOM pro Paket

lynkctl teilt die Ausgabe pro INF-Datei auf und benennt sie als <inf_name>.spdx.json, wie WHCP es verlangt.

03

Air-gapped

lynkctl läuft komplett offline. Build-Rechner brauchen für die SBOM also keinen Zugang nach außen.

04

VEX getrennt

Die Plattform überwacht jede Komponente auf neue CVEs und hält VEX getrennt von der SBOM, wie Microsoft es verlangt.

FAQ

FAQ

FAQ

Häufige Fragen

Häufige Fragen

Brauchen Windows-Treiber eine SBOM?

Ja, wenn der Treiber für das Windows-Client- oder -Server-Release 2027 oder später bestimmt ist. Jedes betroffene Paket, das Sie über HDC zur WHCP-Signierung einreichen, braucht eine gültige SPDX-3-SBOM.

Ab wann gilt die WHCP-SBOM-Anforderung?

Welches SBOM-Format verlangt Microsoft für Treiber?

Kann eine SBOM eine Einreichung mit mehreren Treibern abdecken?

Muss ich noch eine VEX-Aussage einreichen?

Muss ich das WDK-Tool von Microsoft verwenden?

Gilt die Anforderung auch für Treiber für Windows 11 24H2 oder Windows 10?

Wie hängt die WHCP-SBOM mit dem EU Cyber Resilience Act zusammen?

Vertraut von Sicherheits- und Compliance-Teams in 100+ regulierten Unternehmen

Machen Sie Ihre Treiber bereit für WHCP

Machen Sie Ihre Treiber bereit für WHCP

Erzeugen Sie für jedes Treiberpaket eine SPDX-3-SBOM aus Ihrem bestehenden MSBuild- und WDK-Setup, lange bevor HDC mit den Prüfungen beginnt.