Treiber gegen gefälschte Chips: FTDI ruft Fake-Killer zurück

Chip-Hersteller FTDI hat nach heftigen Protesten seinen Treiber für die USB-Adapter-Chips FT232R zurückgezogen. Die neueste Version machte gefälschte FTDI-Chips kurzerhand unbrauchbar.

In Pocket speichern vorlesen Druckansicht 235 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Carsten Meyer

Keine Frage: Gegen Produktpiraterie darf man sich als Hersteller wehren; wenn etwas so aussieht wie das Original, aber nicht ganz so gut oder gar nicht funktioniert, ist der Gewinn geschmälert und letztendlich der Kunde der Gelackmeierte. Der USB-Spezialist FTDI aber hat wohl etwas übertrieben, indem man nichtsahnenden Gelackmeierten einen Treiber unterschob, der die an sich funktionierende Nachahmung eines USB-Seriell-Adapters kurzerhand unbrauchbar machte.

USB-Seriell-Adapter aus China mit gefälschten FTDI-Chips. Die abgebildeten trugen die Date-Codes 1308-C und 1402-C.

Das Ausmaß der Empörung in den einschlägigen Foren ließ allerdings auch erahnen, wieviele gefälschte Chips inzwischen in Umlauf sind. Der besonders in der Maker- und 3D-Druck-Szene beliebte Schaltkreis ist auf Zubehörteilen chinesischer Provenienz kaum noch als Original zu finden – bei unseren Stichproben fand er sich auf allen vier untersuchten Arduino-Zusatzplatinen, wie sie gern bei eBay oder in einem Fall auch über Amazon angeboten werden. Die funktionierten vor dem Treiber-Update einwandfrei, allerdings schien uns das Timing der Fälschungen bei direkter Ansprache der FTD2XX-DLL aus einer Applikation heraus (d.h. ohne Umweg über einen emulierten Com-Port) nicht ganz einwandfrei zu sein – es gab hier öfter Timeout-Fehler.

Nun hat FTDI auf den Unmut reagiert und den "Killer-Treiber" von Windows Update zurückgezogen, so dass ein unbemerktes Lahmlegen der Fake-Chips nicht mehr passieren kann. In einem Blog-Beitrag behält sich FTDI aber Maßnahmen vor, sich "nicht-invasiv" gegen die Fälschungen zu wehren.

Wir konnten unsere zwangsweise stillgelegten Fakes mit folgendem Vorgehen reaktivieren: Zunächst alle FTDI-Treiber deinstallieren und älteren Treiber (z.B. #2.08) bereithalten. Die im Treiberpaket enthaltene INI-Datei ftdibus.ini mit einem Texteditor öffnen und unter den entsprechenden Keys (eckige Klammern) die Zeilen

[FtdiHw]
%USB\VID_0403&PID_0000.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_0000
[FtdiHw.NTamd64]
%USB\VID_0403&PID_0000.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_0000VID_0403&PID_0000.DeviceDesc="USB Serial Port"
[Strings]
USB\VID_0403&PID_0000.DeviceDesc="USB Serial Converter"

sowie in ftdiport.ini die Zeilen

[FtdiHw]
%VID_0403&PID_0000.DeviceDesc%=FtdiPort.NT,FTDIBUS\COMPORT&VID_0403&PID_0000
[FtdiHw.NTamd64]
%VID_0403&PID_0000.DeviceDesc%=FtdiPort.NTamd64,FTDIBUS\COMPORT&VID_0403&PID_0000
[Strings]
VID_0403&PID_0000.DeviceDesc="USB Serial Port"

hinzufügen. Dann den Fake-Chip neu anschließen und Windows gezielt auf den so modifizierten alten Treiber lenken (per Klick auf "Datenträger"). Windows wird sich eventuell beschweren, dass der Treiber nicht passt oder nicht zertifiziert ist – egal.

Nun sollte der Fake-Chip im Gerätemanager wieder unter den COM- und LPT-Ports auftauchen. Abschließend muss man mit dem FTDI-Tool FT_Prog (wir verwendeten erfolgreich Version 1.4) die PID wieder auf 6001 ändern und den Rechner neu starten. FT_Prog erkennt übrigens keine USB-Adapter, für die kein Treiber installiert wurde; außerdem scheint die neueste FT_Prog/MProg-Version 2.8 die Fakes auch selbst zu erkennen und zeigt sie gar nicht erst an. (cm)