CDD (CANdela Diagnostic Description)
Eine CDD-Datei ist die Vector-CANdela-Beschreibung der Diagnoseschnittstelle eines Steuergeräts: Sessions, Services, DIDs, Routinen, Security Level. Inhalt und Nutzung.
Aktualisiert Diese Seite als Markdown
Kurz gesagt
Eine CDD (CANdela Diagnostic Description) ist die XML-Datei aus Vector CANdelaStudio, die die Diagnoseschnittstelle eines Steuergeräts beschreibt: Sessions, UDS-Services mit Sub-Funktionen, Data Identifier, Routinen, Fehlercodes und die SecurityAccess-Level, die sie schützen. Es ist ein Herstellerformat, kein ISO-Standard, in der Lieferkette aber so verbreitet wie ODX. Am Prüfstand macht sie aus rohen Identifiern Namen und sagt dem Tester, welche Routinen existieren und was sie erwarten.
Was ist CDD?
Eine CDD-Datei (CANdela Diagnostic Description) ist Vectors XML-basierte Beschreibung von allem, was ein Steuergerät an seiner Diagnoseschnittstelle anbietet: die Sessions, die UDS-Services mit ihren Sub-Funktionen, die Data Identifier (DIDs) mit Datentypen und Skalierungen, die Routinen (RIDs), die Fehlercodes und die SecurityAccess-Level, die sie schützen. Erstellt wird sie in CANdelaStudio, und sie ist die Datei, die ein Tier-1 dem OEM übergibt, damit Entwicklungstester, Bandende-Tester und Werkstatttester alle gleich mit dem Steuergerät sprechen.
Anders als ODX ist CDD kein ISO-Standard, sondern ein Herstellerformat. In der deutschsprachigen Lieferkette ist es mindestens so verbreitet wie ODX, weil viele Zulieferer in CANdelaStudio arbeiten und ODX oder PDX nur exportieren, wenn ein Kunde danach fragt.
Wo ist es definiert?
Das Format definiert Vector Informatik in der CANdelaStudio-Dokumentation; eine öffentliche Spezifikation außerhalb des Tools gibt es nicht. Was es beschreibt, ist UDS nach ISO 14229-1: Die Service Identifier, Sub-Funktionen, DIDs, RIDs und Negative Response Codes in einer CDD sind die aus dem Standard, plus die herstellerspezifischen Bereiche, die das Steuergerät nutzt. Das standardisierte Gegenstück ist ODX nach ISO 22901-1, und CANdelaStudio exportiert eine CDD nach ODX 2.2 oder in ein PDX-Paket.
Was es in der Praxis bedeutet
Am Prüfstand ist die CDD die Landkarte des Steuergeräts. Enumeration ohne Datei liefert Zahlen: DID 0xF190 antwortet in der Default Session, RID 0x0203 existiert in der Extended Session. Mit der CDD werden daraus “VIN” und “Programmiervoraussetzungen prüfen”, und ein Finding liest sich wie deine Diagnosespezifikation statt wie ein Hex-Dump.
Der zweite Nutzen ist Abgrenzung. Die CDD sagt, welche Session und welches Security Level ein Service brauchen soll. Wo das Steuergerät in einer niedrigeren Session antwortet als die Datei angibt, oder ohne SecurityAccess, hast du eine Abweichung, die ein Finding wert ist. Wir sehen regelmäßig Identifikations-DIDs (Seriennummer, Fingerprints), die in der CDD als geschützt markiert und am echten Steuergerät beschreibbar sind, und Routinen, die die Datei an die Programming Session bindet und die in der Extended Session antworten.
Der dritte Nutzen sind Routinen. Routine Identifier lassen sich nicht sinnvoll per Brute Force durchprobieren: Der Payload zählt, das Ergebnis hängt von Vorbedingungen ab und manche Routinen sind destruktiv. Die CDD sagt dir, welche Routinen existieren und was sie erwarten, also rufst du genau diese auf und keine anderen.
Wie AutoST es testet
AutoST importiert CDD-Dateien neben ODX, ODX-D und PDX, normalisiert sie zu DIDs und Routinen und hängt sie einmal ans Steuergerät; jeder spätere Scan nutzt sie. Gefundene DIDs zeigen ihren CDD-Namen, Routinen (0x31) werden nur gestartet, wenn die Datei sie definiert, mit einem Payload, den du überschreiben kannst, und die optionalen Schreibtests (0x2E) vergleichen den Schutz, den die Datei verspricht, mit dem, was das Steuergerät tut. Vertrauliche Dateien bleiben auf deiner Instanz.
Häufige Missverständnisse
Eine CDD beschreibt, was das Steuergerät tun soll, nicht, was es tut. Behandle sie als Hypothese, die du testest, nicht als Ergebnis. Eine Testspezifikation ist sie auch nicht: Außer der Zuordnung von Session und Security Level sagt sie nichts über erwartetes Sicherheitsverhalten, also müssen die Prüfungen aus Angreifersicht (Seed-Qualität, Lockout, undokumentierte Services) weiterhin vom Tester kommen.
FAQ
Häufig gestellte Fragen
Ist eine CDD dasselbe wie ODX?
Nein. ODX ist das Austauschformat nach ISO 22901-1, CDD das native Format von Vector CANdelaStudio. Beide beschreiben dieselben Dinge, und CANdelaStudio exportiert eine CDD als ODX oder als PDX-Paket, deshalb haben die meisten Teams am Ende beides.
Kann ein Security-Tester ohne die CDD arbeiten?
Ja, die Enumeration findet Sessions, Services und DIDs ohne jede Datei. Die CDD ergänzt Namen, die erwartete Session und das Security Level pro Service und die Liste der Routinen mit Payloads. Das macht die Ergebnisse lesbar und den Routinen-Scan sicher.
Verlässt die CDD den Prüfstand?
In AutoST hängt sie am Steuergerät auf deiner Instanz, gehostet in der EU oder auf deinen eigenen Servern, und wird nicht weitergegeben. Viele Zulieferer behandeln die Datei als vertraulich, und der Testaufbau muss das respektieren.
Quellen
Passende Seiten
- GlossarODX (Open Diagnostic Data Exchange)ODX (ISO 22901-1, ASAM MCD-2 D) ist das XML-Format, das beschreibt, wie ein Steuergerät UDS spricht: Services, DIDs, Routinen und Daten. Aufbau und Nutzen für Tester.
- GlossarPDX (Packaged ODX)Eine PDX-Datei ist ein ZIP-Container, der ODX-Diagnosedaten (ODX-D, ODX-C, ODX-F und mehr) mit einem Katalog bündelt, nach ISO 22901-1. Inhalt und Nutzung im Test.
- GlossarDID (Data Identifier)Eine DID ist der 16-Bit-Identifier, mit dem UDS Datensätze adressiert, gelesen mit 0x22, geschrieben mit 0x2E. Bereiche nach ISO 14229-1 Anhang C und schreibbare DIDs.
- GlossarRID (Routine Identifier)Eine RID ist der Zwei-Byte-Identifier, mit dem RoutineControl (0x31) eine Routine im Steuergerät startet, stoppt und abfragt, von Erase Memory (FF00) bis Herstellertests.
- PlattformDein ODX und CDD, zu Tests gemacht.AutoST importiert ODX-, PDX- und Vector-CDD-Dateien, um gefundene DIDs zu benennen und die richtigen Routinen (0x31) aufzurufen. Write-Probing ist optional.
- InsightsODX-gestütztes Testen: Diagnosedaten in Tests verwandelnWie ODX- und PDX-Dateien einen schärferen ECU-Security-Test treiben: was ein DIAG-LAYER benennt, wie DIDs und Routinen aus den Daten kommen, besser als Brute Force.
