Seriennummer eines USB-Sticks ändern?

  • Frage

  • patchmatch
  • 2122 Aufrufe 5 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Seriennummer eines USB-Sticks ändern?

    Hallo,

    ich bin auf der Suche, ob und wie man bei einem USV-Stick die hardwaremäßig vergebene Seriennummer ändern kann.

    Es handelt sich um folgenden Stick:

    Device Vendor: Kingston
    Device Revision: 0110
    Manufacturer: Kingston
    Product Model: DataTraveler 3.0
    Product Revision: PMAP
    Controller Vendor: Phison
    Controller Part-Number: PS2251-07(PS2307) - F/W 08.03.50 [2018-05-11]
    Flash ID code: AD3A18030050 - Hynix [TLC]

    Die Serial Number 94DE8072478CE2C10940BA45 besteht aus 24 hexadezimalen Zeichen, der ich gerne eine bestimmte Zeichenfolge vergeben möchte.

    Hat jemand von euch eine Idee?

    MfG

    patchmatch :) :) :) :)
    Lächelnde SMILEYS bringen Farbe in den tristen Alltag!
    Rechteübersicht * Forenregeln * F.A.Q. * Lexikon
    Suchfunktion * Chat * User helfen User
  • Eine etwas unkonventionelle Anforderung an einen USB-Stick. Die Seriennummer wird, sofern sie denn überhaupt vergeben wird, vom Hersteller vergeben und das nicht mit der Intention, sie vom Endanwender ändern zu lassen. Dass dies nicht trivial möglich ist, ist auch eine Voraussetzung für Software wie USBGuard, welche es ermöglicht, nur bestimmte USB-Geräte an einem Rechner zu erlauben. Dieses Whitelisting basiert darauf, die angeschlossenen Geräte anhand bestimmter Eigenschaften erkennen zu können, etwa anhand der Seriennummer. So könnte man eben nur vorab definierte Seriennummern überhaupt erlauben. Könnte man die Seriennummer einfach ändern, wäre es recht einfach, diesen Schutz auszuhebeln, sofern man grundsätzlich Zugang zu dem Rechner hat und die Seriennummern der angeschlossenen Geräte auslesen kann. Daher wäre meine erste Annahme, dass das nicht möglich ist.

    Gräbt man nun etwas tiefer, stellt sich die Frage, wo die Seriennummer denn eigentlich abgelegt ist und inwiefern diese Ablage überhaupt schreibbar ist. Um die Seriennummer zu ermitteln, verwende ich lsusb, welches auf der quelloffenen Bibliothek libusb aufsetzt. Schaut man sich die API dieser Bibliothek an, findet man dort den Aufruf libusb_get_descriptor, welcher etliche Eigenschaften wie etwa die Id des Herstellers ermittelt, insbesondere aber auch die Seriennummer, wie man dem Aufbau des verwendeten Structs entnehmen kann (beachte die ISerialNumber Eigenschaft). Diese API verwendet eine in der USB Spezifikation festgelegte Funktion GET_DESCRIPTOR. Also ist der logische nächste Schritt sich ebendiese anzuschauen, welche z.B. hier zu finden ist: http://sdphca.ucsd.edu/Lab_Equip_Manuals/usb_20.pdf

    Hier finden sich allerdings keine Details darüber, wo die Seriennummber abgelegt ist. Dies kann praktisch beliebig durch den Hersteller festgelegt werden und es lässt sich somit nicht allgemein sagen, ob diese überhaupt geändert werden kann. Naheliegend ist dann die Frage, ob der USB Standard eine Möglichkeit zur Änderung vorsieht und tatsächlich, analog zu GET_DESCRIPTOR findet sich in der oben verlinkten Spezifikation auch eine API SET_DESCRIPTOR. Dies hat mich ehrlich gesagt überrascht, da mir nicht klar ist, warum die hier gelieferten Informationen für jedes die Spezifikation umsetzende USB-Gerät änderbar sein sollten. Allerdings ist das natürlich der Weg der Wege, wenn man die Seriennummer ändern möchte. Letztlich brauchst du "nur" diesen Aufruf absetzen und kannst dann prüfen, ob der Hersteller deines Sticks diese Funktion in seinem Controller umgesetzt hat, was natürlich nicht garantiert ist. Um das auszuprobieren, bräuchte man jetzt idealerweise eine Bibliothek, welche diesen Aufruf auch implementiert. Die oben erwähnte libusb tut dies leider nicht, was wohl daran liegt, dass das unter normalen Umständen niemand braucht. Ich habe an dieser Stelle auch nicht weiter gesucht, aber der Weg sollte klar sein: Schau, ob du ein Tool/ eine Bibliothek findest, die diesen Teil der USB Spezifikation umsetzt und hoffe dann, dass dein Controller den Aufruf auch beherrscht. Je nach dem, was du bereit bist, für einen Aufwand zu betreiben und was deine Vorkenntnisse sind, kannst du das natürlich auch selbst umsetzen, die Informationen sind jedenfalls öffentlich zugängig.
  • Hallo patchmatch,

    die Serial Number ist in der Firmware des Sticks hinterlegt.

    Mit ausreichernd Kenntnissen und den richtigen Tools kann man das.

    Aber bedenke, Firmware ist so eine Art Mini-Betriebssytem - also Vorsicht!!!

    Eine kleine Hilfe findest Du hier, auch wenn es dort um Drucker geht, lässt sich das sicher auch auf anderer Firmware anwenden.

    Viel Erfolg

    VG

    mad.de
  • Vielen Dank an euch beiden! :) - Leider ist es noch nicht das, was ich mir vorgestellt habe.

    Das mit dem Set_Descriptor wäre eigentlich eine gute Idee, wenn nicht die Aussage da wäre: „Set-Descriptor is rather unusual; not many devices support it (if any)“.

    So ähnlich wie bei dem von mad.de beschriebenen Drucker vorzugehen ist mir nicht möglich, da ich keine Firmware habe, die man ggf. modifizieren könnte.

    Hat jemand noch andere Ideen oder evtl. ein kleines Software-Tool dafür?
    Lächelnde SMILEYS bringen Farbe in den tristen Alltag!
    Rechteübersicht * Forenregeln * F.A.Q. * Lexikon
    Suchfunktion * Chat * User helfen User
  • Ich frage mich, ob eine LowLevel Formatierung nicht das gewünschte Resulatat bringt.

    computerbild.de/download/HDD-L…-Format-Tool-6459264.html

    Vielleicht hilft Dir folgendes Tool:

    winfuture.de/downloadvorschalt,3142.html

    Ansonsten habe ich eine Firma gefunden, welche das macht:

    shop.haegeleonline.de/sonstige…ck-seriennummern-aendern/

    Hoffe ich konnte Dir helfen.

    LG
    Hans

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von GoSoft ()

  • Hallo @patchmatch

    Schlagwörter wie "ChipGenius" oder "FlashGenius" könnten Dir helfen, aber Vorsicht ! Oft findet man diese Software auf russischen Servern, da ist Vorsicht geboten weil oft verseucht mit Viren.
    Ich habe eine Version 4.19.0319 die gibt es bei Softpedia aber dazugehörige Software FlashMaster ist leider auf chinesisch.

    Ich glaube ich habe vor einigen Jahren diese Software für verschiedene Zwecke benutzt u.a. auch um SerNr. zu ändern.

    Mit ChipGenius tut man USB Device ID: VID und PID -auslesen und dann mit entsprechendem flasher kann man vieles tun.

    Es hatte mich damals sehr viel Energie und Zeit gekostet, aber es hatte sich gelohnt ;)