Zum Inhalt springen
AutoST by Zyberum GmbH
Menü
GlossarUDSDiagnose

UDS (Unified Diagnostic Services)

UDS (ISO 14229) ist das Diagnoseprotokoll der meisten Steuergeräte: Sessions, Services, DIDs, SecurityAccess. Was es definiert und warum es die erste Angriffsfläche ist.

Aktualisiert Diese Seite als Markdown

Kurz gesagt

UDS (Unified Diagnostic Services) ist das Request/Response-Protokoll aus ISO 14229-1, mit dem Tester mit Steuergeräten sprechen: Diagnose-Sessions wechseln, Data Identifier lesen und schreiben, Routinen starten, Fehlerspeicher lesen und Software flashen. Jeder Request beginnt mit einem Service Identifier (SID); eine positive Antwort wiederholt SID + 0x40, eine negative beginnt mit 0x7F. UDS läuft über CAN (ISO-TP), DoIP und weitere Transporte und ist die größte aus der Ferne erreichbare Angriffsfläche der meisten Steuergeräte.

Was ist UDS?

UDS ist das Diagnoseprotokoll auf Anwendungsebene, das fast jedes Steuergerät im Fahrzeug spricht. Ein Tester (der Client) schickt einen Request, das Steuergerät (der Server) antwortet. Das erste Byte eines Requests ist der Service Identifier (SID), danach folgen ein optionales Sub-Funktions-Byte und die Parameter des Services. Eine positive Antwort wiederholt den SID plus 0x40; eine negative Antwort ist immer 7F <SID> <NRC>.

Ein einzelner Austausch sieht so aus: 22 F1 90 fragt mit ReadDataByIdentifier nach dem Data Identifier F190 (die VIN), und das Steuergerät antwortet 62 F1 90 57 56 57 ... mit den 17 ASCII-Bytes der VIN. Lehnt das Steuergerät ab, antwortet es zum Beispiel 7F 22 33, securityAccessDenied.

ISO 14229-1 teilt die 26 Services in sechs Funktionsgruppen: Diagnose- und Kommunikationsmanagement (0x10 DiagnosticSessionControl, 0x11 ECUReset, 0x27 SecurityAccess, 0x28 CommunicationControl, 0x29 Authentication, 0x3E TesterPresent, 0x85 ControlDTCSetting und weitere), Datenübertragung (0x22, 0x23, 0x2E, 0x3D und weitere), gespeicherte Daten (0x14, 0x19), Ein-/Ausgabesteuerung (0x2F), Routinen (0x31) und Upload/Download (0x34 bis 0x38).

Wo ist es definiert?

ISO 14229-1:2020 definiert die Anwendungsschicht: Services, Sub-Funktionen, Parameter, die Negative Response Codes in Anhang A, die Standard-Data-Identifier in Anhang C und die Routine Identifier in Anhang F. ISO 14229-2 definiert die Session-Schicht und die Timing-Parameter P2, P2* und S3. Der Transport ist getrennt geregelt: ISO 15765-2 (ISO-TP) für CAN und CAN FD, ISO 13400-2 für DoIP über Ethernet. ISO 14229-3 bis -8 bilden UDS auf die einzelnen Transporte ab.

Was es in der Praxis bedeutet

UDS ist die größte Angriffsfläche, die ein Steuergerät ohne Zerlegen preisgibt. Alles, was ein Werkstatttester kann, kann ein Angreifer am Bus ebenfalls versuchen: in die Extended Session wechseln, Identifikations- und Kalibrierdaten lesen, Data Identifier schreiben, Routinen starten, Speicher löschen und neue Firmware herunterladen. Das Protokoll selbst bringt weder Verschlüsselung noch Authentifizierung mit; der Schutz muss im Steuergerät über Sessions und SecurityAccess kommen, und genau dort unterscheiden sich die Implementierungen.

Wir sehen regelmäßig Services, die in der Default Session antworten, obwohl die Herstellerspezifikation sie auf die Extended Session beschränkt, Data Identifier, die mehr preisgeben als nötig, und SecurityAccess-Implementierungen, die sich mit wenigen Requests umgehen lassen. Ein Trace aus UDS-Requests und -Antworten ist deshalb der schnellste Weg, den Schutz eines Steuergeräts einzuschätzen.

Wie AutoST es testet

AutoST spricht UDS über CAN, CAN FD und DoIP. Die Enumerations-Engine findet ISO-TP-Endpunkte und Diagnose-Sessions, probiert in jeder Session jeden SID von 0x00 bis 0xFE, klassifiziert die Antwort und liest die Data Identifier; die Diagnose-Engine ergänzt DID-Namen und Routinen aus ODX- oder CDD-Dateien; die SecurityAccess-Engine testet 0x27; die Fuzzing-Engine schickt fehlerhafte UDS-Payloads und achtet auf Abstürze. Die Ergebnisse fließen in einen Risiko-Score, einen PDF-Bericht und einen Fix Plan.

Häufige Missverständnisse

UDS ist kein Sicherheitsprotokoll und sollte nie eines sein. Es ist auch nicht auf CAN beschränkt: dieselben Requests laufen über DoIP, und ein Steuergerät, das am CAN gut geschützt ist, ist es nicht automatisch, wenn ein Gateway DoIP-Verkehr dorthin weiterleitet. Und ein Tester, der 7F xx 11 (serviceNotSupported) bekommt, hat etwas gelernt, nicht nichts: der Service existiert auf diesem Steuergerät nicht, anders als bei 7F xx 7F, das heißt, er existiert in einer anderen Session.

FAQ

Häufig gestellte Fragen

Ist UDS dasselbe wie OBD?

Nein. OBD (ISO 15031, SAE J1979) ist die gesetzlich vorgeschriebene Abgasschnittstelle mit festen Services 0x01 bis 0x0A. UDS (ISO 14229) ist das Hersteller-Diagnoseprotokoll mit den Services 0x10 bis 0x3E und 0x83 bis 0x88, und damit arbeiten Werkstätten, Flash-Tools und Angreifer, um ins Innere eines Steuergeräts zu kommen.

Hat UDS eingebaute Sicherheit?

Nur das, was das Steuergerät implementiert: Session-Steuerung (0x10) begrenzt die erreichbaren Services, SecurityAccess (0x27) ergänzt eine Seed/Key-Abfrage, und Authentication (0x29) bringt in der Ausgabe 2020 zertifikats- oder challenge-basierte Zugriffe. Standardmäßig ist in UDS nichts verschlüsselt oder authentifiziert.

Über welche Transporte läuft UDS?

Meist über ISO-TP auf CAN oder CAN FD (ISO 15765-2) und über DoIP auf Ethernet (ISO 13400). Die Anwendungsschicht bleibt identisch, deshalb kann ein Tool, das UDS über CAN testet, dasselbe Steuergerät auch über DoIP testen.

Quellen

Passende Seiten

Sieh es auf deinem ECU

Ein Begriff, der für dein Steuergerät zählt?

In 15 Minuten sagen wir dir, wie AutoST ihn testet, wie ein Finding aussieht und was er für deinen ISO/SAE-21434-Nachweis bedeutet.

  • Direkte Antwort von einem ECU-Security-Engineer
  • Welcher Test den Begriff abdeckt
  • Kostenlos und unverbindlich
Tom Zaubermann

Deine Demo ist mitTom ZaubermannGründer von Zyberum, früher Leiter des VW InCar Security Testing Lab

Bereits im Einsatz bei Tier-1-, Tier-2-Zulieferern und OEMs. Referenzen auf Anfrage.

Ruf uns an: +49 176 439 17074automotive@zyberum.com

Oder schreib uns eine Nachricht

Wir antworten innerhalb eines Werktags.

Ruf uns anAutoST-Team fragen

Wähle einen Termin, der dir passt

In neuem Tab öffnen