USB Protocol: Difference between revisions

From Elvis Wiki
(Created page with "== Introduction == Description what this documentation is about. == USB protocol == Das USB-Protokoll zeichnet sich durch seine hohe Flexibilit¨at aus, die sich insbeson- dere in der Unterst¨utzung sogenannter Kompositger¨ate zeigt. Kompositger¨ate k¨onnen mehrere Konfigurationen und Schnittstellen enthalten, wobei jede Schnittstelle als eigenst¨andige Einheit fungiert. Ein typisches Beispiel ist ein USB-Headset, das eine Konfiguration aufweist, welche wiederum...")
 
No edit summary
Line 3: Line 3:
Description what this documentation is about.
Description what this documentation is about.


== USB protocol ==
== Security threads ==  


Das USB-Protokoll zeichnet sich durch seine hohe Flexibilit¨at aus, die sich insbeson-
USB-Geräte stellen ein großes Sicherheitsrisiko dar, weil sie trotz ihrer weiten Verbreitung eine geringe Sicherheit bieten. Ein besonderes Risiko bei USB-Geräten ist der USB-Stick. Dieser wird häufig als Träger von Schadsoftware wie Viren, Würmern und Trojanern missbraucht. Diese Schadsoftware kann sich leicht verbreiten, da USB-Sticks einfach zwischen verschiedenen Computern ausgetauscht werden können. Ein bekanntes Beispiel für eine Schwachstelle ist die AutoRun-Funktion in älteren Windows-Versionen, insbesondere Windows XP. Diese Funktion ermöglichte es USB-Geräten, Programme automatisch zu starten, sobald sie an einen Computer angeschlossen wurden. Dies wurde häufig genutzt, um Treiber zu installieren, aber auch, um unbemerkt Schadsoftware auszuführen. In späteren Windows-Versionen wurde diese Funktion jedoch stark eingeschränkt, um das Risiko zu minimieren.
dere in der Unterst¨utzung sogenannter Kompositger¨ate zeigt. Kompositger¨ate k¨onnen
mehrere Konfigurationen und Schnittstellen enthalten, wobei jede Schnittstelle als
eigenst¨andige Einheit fungiert. Ein typisches Beispiel ist ein USB-Headset, das eine
Konfiguration aufweist, welche wiederum vier Schnittstellen umfasst: eine Tastatur zur
Lautst¨arkeregelung, ein Mikrofon und zwei Lautsprecher. Diese Flexibilit¨at erm¨oglicht
es, verschiedene Funktionen in einem einzigen USB-Ger¨at zu kombinieren. Allgemeine
Klassenspezifikationen
Seit der Einf¨uhrung von USB 1.0 wurde das Konzept der ”Common Class Specifi-
cations” etabliert, um eine Standardisierung verschiedener Arten von Peripherieger¨aten
zu gew¨ahrleisten. Eine USB-Klasse ist eine Gruppe von einer oder mehreren Schnittstellen,
die zusammen eine erweiterte Funktionalit¨at bieten. Eine der bekanntesten Klassen ist
die ”Human Interface Device” (HID) Klasse, die es dem USB-Hostcontroller erm¨oglicht,
mit Eingabeger¨aten wie Tastaturen und M¨ausen zu kommunizieren. Eine weitere be-
deutende Klasse ist die USB-Massenspeicherklasse, die definiert, wie Daten zwischen
dem Host und Speicherger¨aten ¨ubertragen werden.
4
Chapter 2. Technischer Hintergrund
Kompositger¨ate kombinieren mehrere Klassen, um eine umfassendere Funktion-
alit¨at zu bieten. Beispielsweise kann ein USB-Headset sowohl die HID-Klasse als auch
die Audioklasse nutzen, um sowohl Eingaben als auch Audioausgaben zu erm¨oglichen.
Dieses Designprinzip, bei dem USB-Peripherieger¨ate durch die Kombination mehrerer
Klassen geschaffen werden, hat nicht nur die Flexibilit¨at des USB-Protokolls erh¨oht,
sondern auch Sicherheitsherausforderungen mit sich gebracht.
Nach dem Anschluss eines USB-Ger¨ats an ein Hostsystem erkennt der USB-Hostcontroller
die Anwesenheit des Ger¨ats und dessen ¨Ubertragungsgeschwindigkeit, indem er die
Spannungs¨anderungen an den Datenpins ¨uberpr¨uft. Daraufhin beginnt die sogenannte
Enumeration, eine Prozedur zur Identifikation und Konfiguration des Ger¨ats. Dieser
Prozess startet mit dem Befehl GetDeviceDescriptors, bei dem der Host nach Identi-
fikationsinformationen des Ger¨ats fragt, wie beispielsweise Hersteller, Vendor ID (VID),
Produkt ID (PID) und Seriennummer.
Nach der Abfrage setzt der Hostcontroller das Ger¨at zur¨uck und weist ihm eine
Adresse f¨ur die zuk¨unftige Kommunikation zu. Anschließend erfolgt eine GetConfigDescriptors-
Anfrage, um alle verf¨ugbaren Konfigurationen des Ger¨ats abzurufen. USB-Ger¨ate
k¨onnen eine oder mehrere Konfigurationen haben, wobei jedoch immer nur eine Konfig-
uration aktiv sein kann. Jede Konfiguration kann eine oder mehrere Schnittstellen en-
thalten, die ¨uber die GetInterfaceDescriptors-Anfrage ermittelt werden. Diese Schnittstellen
repr¨asentieren die essenziellen funktionalen Einheiten, die von verschiedenen Treibern
im Betriebssystem bedient werden. Nach Abschluss dieser Anfrage l¨adt das Betrieb-
ssystem die entsprechenden Treiber und ger¨atespezifische Subprotokolle (z. B. HID,
Storage) treten in Betrieb.


== Security threads ==
Ein weiteres ernsthaftes Risiko bei USB-Geräten besteht in der Möglichkeit, HID-Geräte zu missbrauchen. Da HID-Geräte vertrauenswürdig erscheinen, können sie leicht als Angriffsvektor genutzt werden. Beispielsweise kann ein manipuliertes USB-Gerät als Tastatur auftreten und unbemerkt schädliche Eingaben ausführen, um Daten zu stehlen oder Malware zu installieren. Diese Angriffe, wie etwa das O.MG Cable, nutzen die Tatsache aus, dass die meisten Betriebssysteme HID-Geräten vertrauen und ihnen automatisch Rechte für Benutzereingaben einräumen. Durch solche Angriffe können Angreifer unbemerkt Befehle ausführen und Zugang zu sensiblen Daten erlangen, was erhebliche Sicherheits- und Datenschutzrisiken birgt.


USB-Ger¨ate stellen ein großes Sicherheitsrisiko da, weil sie trotz ihrer weiten verbre-
Ein weiteres Hauptproblem bei der USB-Technologie ist zudem die fehlende Verschlüsselung des Datenverkehrs. Die Datenübertragung zwischen USB-Geräten und dem Host-Rechner erfolgt im Klartext, was sie für passive Abhörangriffe anfällig macht. Angreifer können mit relativ einfachen Mitteln den Datenverkehr auf der Busleitung mitschneiden und sensible Informationen abfangen. Dabei stellt die Tastatur die größte Gefährdung dar, weil sie häufig zur Eingabe sensibler Daten, wie etwa Passwörter, verwendet wird.
itung eine geringe Sicherheit bieten. Ein besonderes Risiko bei USB-Ger¨aten ist der
USB-Stick. Er wird h¨aufig als Tr¨ager von Schadsoftware wie Viren, W¨urmern und
5
Chapter 2. Technischer Hintergrund
Trojanern misbraucht. Diese Schadsoftware kann sich leicht verbreiten, da USB-Sticks
einfach zwischen verschiedenen Computern ausgetauscht werden k¨onnen. Ein bekan-
ntes Beispiel f¨ur eine Schwachstelle ist die AutoRun-Funktion in ¨alteren Windows-
Versionen, insbesondere Windows XP. Diese Funktion erm¨oglichte es USB-Ger¨aten,
Programme automatisch zu starten, sobald sie an einen Computer angeschlossen wur-
den. Dies wurde h¨aufig genutzt, um Treiber zu installieren, aber auch, um unbemerkt
Schadsoftware auszuf¨uhren. In sp¨ateren Windows-Versionen wurde diese Funktion je-
doch stark eingeschr¨ankt, um das Risiko zu minimieren. [SLL21] [TSK+18]
Ein weiteres ernsthaftes Risiko bei USB-Ger¨aten besteht in der M¨oglichkeit, HID-
Ger¨ate zu missbrauchen. Da HID-Ger¨ate vertrauensw¨urdig erscheinen, k¨onnen sie
leicht als Angriffsvektor genutzt werden. Beispielsweise kann ein manipuliertes USB-
Ger¨at als Tastatur auftreten und unbemerkt sch¨adliche Eingaben ausf¨uhren, um Daten
zu stehlen oder Malware zu installieren. Diese Angriffe, wie etwa das O.MG Cable,
nutzen die Tatsache aus, dass die meisten Betriebssysteme HID-Ger¨aten vertrauen
und ihnen automatisch Rechte f¨ur Benutzereingaben einr¨aumen. Durch solche An-
griffe k¨onnen Angreifer unbemerkt Befehle ausf¨uhren und Zugang zu sensiblen Daten
erlangen, was erhebliche Sicherheits- und Datenschutzrisiken birgt. [SSN+23]
Ein weitere Hauptprobleme bei der USB-Technologie ist zudem die fehlende Ver-
schl¨usselung des Datenverkehrs. Die Daten¨ubertragung zwischen USB-Ger¨aten und
dem Host-Rechner erfolgt im Klartext, was sie f¨ur passive Abh¨orangriffe anf¨allig macht.
Angreifer k¨onnen mit relativ einfachen Mitteln den Datenverkehr auf der Busleitung
mitschneiden und sensible Informationen abfangen.[NLF16] Dabei stellt die Tastertur
die gr¨oßte gef¨ahrdung da, weil sie als eingabe sensible Daten genutz wird z.B von
Passw¨orter


== Description ==
== Description ==

Revision as of 13:41, 22 November 2024

Introduction

Description what this documentation is about.

Security threads

USB-Geräte stellen ein großes Sicherheitsrisiko dar, weil sie trotz ihrer weiten Verbreitung eine geringe Sicherheit bieten. Ein besonderes Risiko bei USB-Geräten ist der USB-Stick. Dieser wird häufig als Träger von Schadsoftware wie Viren, Würmern und Trojanern missbraucht. Diese Schadsoftware kann sich leicht verbreiten, da USB-Sticks einfach zwischen verschiedenen Computern ausgetauscht werden können. Ein bekanntes Beispiel für eine Schwachstelle ist die AutoRun-Funktion in älteren Windows-Versionen, insbesondere Windows XP. Diese Funktion ermöglichte es USB-Geräten, Programme automatisch zu starten, sobald sie an einen Computer angeschlossen wurden. Dies wurde häufig genutzt, um Treiber zu installieren, aber auch, um unbemerkt Schadsoftware auszuführen. In späteren Windows-Versionen wurde diese Funktion jedoch stark eingeschränkt, um das Risiko zu minimieren.

Ein weiteres ernsthaftes Risiko bei USB-Geräten besteht in der Möglichkeit, HID-Geräte zu missbrauchen. Da HID-Geräte vertrauenswürdig erscheinen, können sie leicht als Angriffsvektor genutzt werden. Beispielsweise kann ein manipuliertes USB-Gerät als Tastatur auftreten und unbemerkt schädliche Eingaben ausführen, um Daten zu stehlen oder Malware zu installieren. Diese Angriffe, wie etwa das O.MG Cable, nutzen die Tatsache aus, dass die meisten Betriebssysteme HID-Geräten vertrauen und ihnen automatisch Rechte für Benutzereingaben einräumen. Durch solche Angriffe können Angreifer unbemerkt Befehle ausführen und Zugang zu sensiblen Daten erlangen, was erhebliche Sicherheits- und Datenschutzrisiken birgt.

Ein weiteres Hauptproblem bei der USB-Technologie ist zudem die fehlende Verschlüsselung des Datenverkehrs. Die Datenübertragung zwischen USB-Geräten und dem Host-Rechner erfolgt im Klartext, was sie für passive Abhörangriffe anfällig macht. Angreifer können mit relativ einfachen Mitteln den Datenverkehr auf der Busleitung mitschneiden und sensible Informationen abfangen. Dabei stellt die Tastatur die größte Gefährdung dar, weil sie häufig zur Eingabe sensibler Daten, wie etwa Passwörter, verwendet wird.

Description

Step 1

Enter these commands in the shell

echo foo
echo bar

Step 2

Make sure to read

  • War and Peace
  • Lord of the Rings
  • The Baroque Cycle

Used Hardware

Device to be used with this documentation Maybe another device to be used with this documentation

Courses

References