Skip to content

CRA incidents (Cyber Resilience Act)

Das Modul CRA incidents hilft Ihnen, die Meldepflicht aus Art. 14 des EU Cyber Resilience Act zu erfüllen: Es registriert aktiv ausgenutzte Schwachstellen und schwerwiegende Sicherheitsvorfälle, überwacht die 24-stündige Frist für die Frühwarnung und bereitet einen strukturierten JSON-Export zur Einreichung bei der ENISA Single Reporting Platform (SRP) vor.

CRA Art. 14 definiert drei Meldeschwellen für Hersteller digitaler Produkte:

SchwelleFristUmfang
Frühwarnung24hTatsache der Erkennung, Komponente, vorläufige Bewertung
Vorfallsmeldung72hGrundursache, Umfang, angewandte Gegenmaßnahmen
Abschlussbericht14 TageVollständige Grundursache, Behebung, Empfehlungen

Das Modul berechnet die 24h-Frist automatisch aus discoveredAt. Die übrigen Fristen (72h, 14 Tage) müssen manuell überwacht werden - sie liegen außerhalb des FREE-Umfangs.

Gehen Sie zu Polski > CRA incidents > Record incident. Das Formular:

FeldHinweise
TitleKurzer Titel (erforderlich)
Affected componentName des Produkts oder Moduls (z. B. polski-free, custom-checkout-module)
Affected versionsVersionsbereich (z. B. <= 2.0.4)
ReporterPerson, die die Meldung registriert hat
External referenceCVE / Bug-Tracker / CVD-Kennung (optional)
Kindactively_exploited_vulnerability, security_incident, near_miss
Severitycritical, high, medium, low
SummaryTechnische Beschreibung (erforderlich)

Nach dem Speichern befindet sich der Vorfall im Status Open und hat deadlineAt = discoveredAt + 24h.

Für jeden Vorfall im Status Open bietet die Liste die Aktion Dispatch notification. Sie wird parallel ausgelöst:

  • Webhook (POST JSON) an die URL aus der Option polski_cra_incident_webhook
  • E-Mail mit einer lesbaren Zusammenfassung an die Adresse aus der Option polski_cra_incident_email

Beide Optionen werden unter Polski > Settings > CRA incidents konfiguriert. Nach einer 2xx-Antwort des Webhooks oder einer erfolgreich versandten E-Mail wechselt der Vorfall in den Status Notified und speichert notifiedAt.

Die Aktion Export JSON liefert cra-incident-<id>-<timestamp>.json mit Content-Type: application/json. Die Struktur folgt dem Entwurf des ENISA-Single-Reporting-Platform-Schemas - die Felder decken die Identität des Herstellers, die Komponente, den Erkennungszeitpunkt, den Schweregrad, die Art des Vorfalls und die Zusammenfassung ab.

Beispiel:

{
"reference_id": "CVE-2026-1234",
"kind": "actively_exploited_vulnerability",
"severity": "high",
"title": "Stored XSS in checkout notes",
"affected_component": "polski-free",
"affected_versions": "<= 2.0.4",
"discovered_at": "2026-04-19T08:12:00+00:00",
"deadline_at": "2026-04-20T08:12:00+00:00",
"summary": "..."
}
// Nachdem ein Vorfall registriert wurde (vor jeder Benachrichtigung).
add_action('polski_cra_incident_recorded', function (int $id, $incident): void {
// Ihre Integration: Jira, PagerDuty, Slack
}, 10, 2);
// Wenn weniger als 2h bis zur 24h-Frist verbleiben.
add_action('polski_cra_incident_deadline_approaching', function ($incident): void {
// Eskalation an den Datenschutzbeauftragten
});

Version 2.1.0 führt die Tabelle {$wpdb->prefix}polski_cra_incidents ein. Die Migration läuft bei der Aktivierung automatisch. Falls nicht, erzwingen Sie sie manuell:

Terminal window
wp polski migrate --module=cra
  • UI und Aktionen: manage_woocommerce
  • Webhook / E-Mail: frei konfigurierbar (keine Berechtigungsanforderung - dies sind ausgehende Kanäle)
  • Das Modul verfolgt die 72h- / 14-Tage-Schwellen nicht automatisch (nur 24h)
  • Die Erkennung von Vorfällen erfolgt manuell - wir scannen keine Protokolle
  • Der Webhook hat keine HMAC-Signatur (für PRO geplant)
  • Das Formular unterstützt keine binären Anhänge - fügen Sie diese der ENISA-SRP-Einreichung manuell bei