Der ein oder andere mag es mitbekommen haben, Hardware von Logitech mit Unify-Empfänger ist recht leicht angreifbar. Bei heise.de gab es jetzt die Tage den Hinweis, dass neue Firmware verfügbar sei. Zeit diese zu installieren.

Da ich mittlerweile vollständig auf Ubuntu setze (derzeit Version 19.04 Disco Dingo), habe ich natürlich nicht die Möglichkeit, die (Windows-) Software von Logitech für die Aktualisierung der Firmware zu verwenden. Der oben verlinkte Heise-Artikel gab aber einen kurzen Hinweis auf das Tool fwupd.

Kurz geprüft, siehe da, fwupd ist bereits installiert und kann direkt verwendet werden: fwupdmgr get-devices listet alle Geräte auf, die grundsätzlich aktualisiert werden könnten. Möchte man die Gerätedatenbank (ähnlich zu einem apt update) aktualisieren, muss nur fwupdmgr refresh eingegeben werden.

Das eigentliche Herunterladen einer Firmware wird leider mit einem Fehler quittiert:

$ fwupdmgr get-updates
cannot handle firmware requirement 'not-child'

Schuld ist eine veraltete Version im Ubuntu-Repository, die mit den Unify-Recievern nicht zurecht kommt. Ich habe also kurzer Hand eine aktuelle Version per Snap nachinstalliert, so wie es auf der Projektseite nahegelegt wird:

 sudo snap install fwupd --classic

Das gerade installierte Programm aus dem Snap hört auf den Namen fwupd.fwupdmgr und exisitert paralell zu dem fwdupdmgr aus dem Ubuntu-Repository.

Zunächst aktualisieren:

$ fwupd.fwupdmgr refreshFetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gzDownloading? [***************************************]Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc

Dann zur Sicherheit Geräte auflisten:

$ fwupd.fwupdmgr get-devices
Unifying Receiver
  DeviceId:            45lk6nl4kjn3jbn45lj6n4l56n45k5ntljal4kff
  Guid:                fk4k23l4-m602-395g-2kgt-93856kd59065
  Guid:                39097jd3-5896-23e6-jafd-5f5uog5jh5r5
  Summary:             A miniaturised USB wireless receiver
  Plugin:              unifying
  Flags:               updatable|supported|registered
  Vendor:              Logitech
  VendorId:            USB:0x046D
  Version:             RQR12.01_B0019
  VersionBootloader:   BOT01.02_B0014
  VersionFormat:       plain
  Icon:                preferences-desktop-keyboard
  InstallDuration:     7
  Created:             2019-08-31

Update herunterladen:

$ fwupd.fwupdmgr get-updates
Unifying Receiver has firmware updates:
  Device ID:          45lk6nl4kjn3jbn45lj6n4l56n45k5ntljal4kff
  GUID:               fk4k23l4-m602-395g-2kgt-93856kd59065
  GUID:               39097jd3-5896-23e6-jafd-5f5uog5jh5r5
  ID:                 com.logitech.Unifying.RQR12.firmware
  Update Version:     RQR12.08_B0030
  Update Name:        Unifying Receiver Device Update Update
  Update Summary:     Firmware for the Logitech Unifying receiver
  Update Remote ID:   lvfs
  Update Duration:    7 seconds
  Update Checksum:    SHA1(8dabc1e0fdd536c13d1e94c637d300f3541d3bf1)
  Update Location:    https://fwupd.org/downloads/690feedb8fe9cb05d1eaf80f903d66381eec7200-Logitech-Unifying-RQR12.08_B0030.cab
  Update Description: This release addresses an encrypted keystroke injection issue known as Bastille security issue #13. The vulnerability is complex to replicate and would require a hacker to be physically close to a target.

  ? Wireless Mouse M335
  ? Zone Touch Mouse T400
  ? Wireless Mouse M545
  ? Wireless Mouse M560
  ? Touch Mouse M600
  ? Touch Mouse T620
  ? Wireless Rechargeable Touchpad T650

  ID:                 com.logitech.Unifying.RQR12.firmware
  Update Version:     RQR12.07_B0029
  Update Name:        Unifying Receiver Device Update Update
  Update Summary:     Firmware for the Logitech Unifying receiver
  Update Remote ID:   lvfs
  Update Duration:    7 seconds
  Update Checksum:    SHA1(d0d33e760ab6eeed6f11b9f9bd7e83820b29e970)
  Update Location:    https://fwupd.org/downloads/938fec082652c603a1cdafde7cd25d76baadc70d-Logitech-Unifying-RQR12.07_B0029.cab
  Update Description: This release addresses an unencrypted keystroke injection issue known as Bastille security issue #11. The vulnerability is complex to replicate and would require a hacker to be physically close to a target.

Am Ende das update auch installieren (root-Rechte benötigt!):

$ sudo fwupd.fwupdmgr update
Downloading RQR12.08_B0030 for Unifying Receiver...
Fetching firmware https://fwupd.org/downloads/690feedb8fe9cb05d1eaf80f903d66381eec7200-Logitech-Unifying-RQR12.08_B0030.cab
Downloading?                 [***************************************]
Decompressing?               [***************************************]
Authenticating?              [***************************************]
Updating Unifying Receiver?  [***************************************]
Writing?                     [***************************************]

Jetzt kann man noch kurz prüfen, ob die Versionsnummer auch tatsächlich anders ist:

$ fwupd.fwupdmgr get-devices
Unifying Receiver
...
Version: RQR12.08_B0030
...

Hier nochmal die Kurzform:

$ sudo snap install fwupd --classic
$ fwupd.fwupdmgr refresh
$ fwupd.fwupdmgr get-devices
$ fwupd.fwupdmgr get-updates
$ sudo fwupd.fwupdmgr update

Danke für die Aufmerksamkeit.