Wie wird die Kapazität einer Festplatte gefälscht?

90

Ich las über magische chinesische Triebe . Wie würde das gemacht werden? In diesem Beitrag wird von einem "Loop-Modus" gesprochen und es wird empfohlen, einen anderen Controller für das Betriebssystem zu verwenden.

Ich habe eines dieser Geräte gekauft, es ausprobiert und es funktionierte wie angekündigt (Überschreiben von Daten, wenn es voll war), obwohl es beim Formatieren seine "wahre" Kapazität zeigte.

Wie wird das erreicht?

Rohan Monga
quelle
14
Ich denke, die Frage wäre besser mit dem Titel "Wie wird die Kapazität des Flash-Speichers gefälscht?"
Joseph Earl
Ich möchte einen dieser chinesischen magischen Antriebe, aber ich fliege nicht nach China, um einen zu bekommen !, würde ein tolles Geek-Gag-Geschenk abgeben.
Moab
+1. Ich hatte noch nie davon gehört, als ich diese Frage in der Ansicht "Heiße Fragen" als "Rakete an die Spitze der Charts" sah.
Jprete
heh .. danke :) Ich hatte diese Art von Reaktion nicht erwartet, als ich neugierig wurde auf eine 'Festplatte' mit 2 riesigen Muttern im Gehäuse
Rohan Monga

Antworten:

59

FAT32 verfügt über eine Mastertabelle mit freiem Speicherplatz. Sie können diese Mastertabelle hexen, um eine beliebige Menge an freiem Speicherplatz anzuzeigen. Ich besitze seit Ewigkeiten eine Diskette mit einer Größe von 3,7 GB.

Barfieldmv
quelle
4
Ja, Sie können die FAT manipulieren, aber es gibt auch Möglichkeiten, mit dem Mikrocontroller zu basteln, um am Betriebssystem zu liegen. Windows formatiert die Festplatte in der Tat wiederholt falsch und identifiziert sie als viel größer als sie tatsächlich ist. Normalerweise verfügen sie über einen eingebauten Algorithmus, der den Flash-Chip so schleift, dass das Betriebssystem tatsächlich eine gültige (aussehende) Master-Tabelle erstellen kann.
TheCompWiz
Wenn ich anfange, mich am Mastertisch und am Controller herumzustochern und herumzuspielen, erwarte ich, dass weitere Fragen folgen :)
Rohan Monga
2
Möchten Sie näher erläutern, wo sich die Haupttabelle befindet oder wie Sie sie bearbeiten können?
Ivo Flipse
2
Ich würde gerne eine Dokumentation dazu sehen. Ich habe versucht, diese mit der Programmierung zu replizieren, und konnte das Betriebssystem nicht dazu bringen, die Größe zu bestimmen. siehe diesen Thread hier, um zu sehen, was ich versucht habe stackoverflow.com/questions/7482920/…
cromestant
Ich hatte ein Magazin, in dem Norton Commander und hexedit zum Ändern der angegebenen Partitionsgröße verwendet wurden. Schade, dass ich das Magazin verloren habe.
Barfieldmv
19

Die Hardware wird nicht geändert - die Dateitabelle wird einfach geändert, um das Betriebssystem zu täuschen. Während eines Formats wird die Dateitabelle gelöscht und somit das echte Kapazitätslesen wiederhergestellt.

Wenn Sie zu einem nicht seriösen Verkäufer gehen, können Sie sich in China die ganze Zeit über von dieser Art von billigen gefälschten Flash-Laufwerken oder sogar Festplatten fangen lassen.

KoKo
quelle
11
Letztes Jahr habe ich bei Ebay einen angeblich 64-GB-Memory-Stick aus China für 15 GBP gekauft. Ich hätte wissen müssen, dass für den Preis keine Kapazität verfügbar ist. In der Tat war es 4 GB mit einer gefälschten führenden "6" auf dem Etikett geätzt. Die Art und Weise, wie das Dateisystem verschlüsselt wurde, bedeutete, dass Sie kein Problem bemerkten, bis mehr als 4 GB auf das Gerät kopiert wurden. Zu diesem Zeitpunkt begannen neue Dateien damit, Teile der vorhandenen zu überschreiben. Ich konnte das Ding nie neu formatieren, um es zumindest als 4-GB-Stick zu verwenden.
FumbleFingers
7
@FumbleFingers, Ja, es ist üblich, dass die Verkäufer die Chip-Informationen vermasseln, so dass Sie nicht direkt formatieren können, aber Sie müssen dies tun: 1. Verwenden Sie die ChipGenius-Software + das Massenproduktionstool, um die Chip-Informationen zu reparieren. 2. Verwenden Sie ein Formatierungswerkzeug auf niedriger Ebene, um das eigentliche Format durchzuführen. Hier ist eine Anleitung: agnipulse.com/2010/04/how-i-fixed-a-fake-64gb-usb-drive
KoKo
Vielen Dank! Vielleicht kann ich doch ein bisschen Wert daraus ziehen (wenn ich es noch nicht frustriert in den Mülleimer geworfen habe).
FumbleFingers
6

Bis ich Ihre Nachricht sah, war ich mir sicher, dass es sich um einen anderen Controller handelt - mit einem modifizierten Controller können Sie dem Betriebssystem alles mitteilen, was Sie möchten. Angesichts der Tatsache, dass das Format dieses Verhalten ändert, kam es auch auf Dateisystemebene zu einer Art Trick. Daraus ergeben sich zwei Möglichkeiten:

  • Dies ist eine Modifikation des Controllers, die nach dem Formatieren einfach nicht funktioniert, da sie von einer Dateisystemmodifikation abhängt (die mir immer noch als wahrscheinlicher erscheint).

  • Es gibt eine andere Möglichkeit, dies ohne Hardwaremodifikation zu tun, z. B. indem Sie eine verknüpfte Liste freier Blöcke so ändern, dass sie zirkulär ist sonst erst ...).

BEARBEITEN: Es ist naiv anzunehmen, dass FAT32 verwendet wird. Ein viel wahrscheinlicheres Szenario ist, dass ein anderes Dateisystem verwendet wird, das versehentlich einen solchen Trick bei der Verwaltung von zirkulärem freiem Speicherplatz zulässt (sofern dieses Dateisystem auch vom Betriebssystem unterstützt wird) für den Benutzer praktisch unsichtbar sein). Das macht es viel interessanter, sich ein solches Gerät anzuschauen ...

Ofir
quelle
2
Ich bin mir sicher, dass es sich um ein Dateisystem handelt. Diese Laufwerke werden nicht physisch geändert.
Crasic
4
Ich würde jedoch so kleinere Sache kaufen .. für Testzwecke :)
Greenleader
1
Wenn Sie sich die Mühe machen, einen benutzerdefinierten oder modifizierten Controller zu verwenden, verlieren Sie die Preisersparnis beim Kauf billiger Controller. Daher erscheint es mir weitaus wahrscheinlicher, dass dies rein auf Dateisystemebene geschieht - ein Raw-Write mit dd ist im Vergleich zum Ersetzen / Ändern von Hardware schnell, kostengünstig und einfach.
Kaerast
6

So erstellen Sie eine 1.000.000.000.000 Byte (1 TB) große Festplatte auf einem Schlüssel (unter Linux):

  1. Erstellen Sie eine gefälschte formatierte 1-TB-Festplatte:

    mkdosfs -C  temp_file 1000000000
    
  2. Überprüfen Sie, ob es wirklich passiert ist

    ls -lh temp_file
    
  3. Schließen Sie Ihr DoK an und überprüfen Sie, wie es montiert wurde:

    mount
    
  4. Suchen Sie nach dem Gerätenamen /dev/sdb1 (Wenn Sie hier einen Fehler machen, können Sie möglicherweise eine andere Festplatte zerstören, die mit dem System verbunden ist. Seien Sie also vorsichtig!)

  5. Hängen Sie es aus:

    sudo umount /dev/sdb1
    
  6. Finden Sie die Größe unserer FAT-Tabelle heraus:

    ls -s temp_file
    

(Die erste Zahl ist die Größe in Kilobyte)

  1. Kopieren Sie nach DoK

    echo "head -c [size_from_above]K temp_file > /dev/sdb1" | sudo sh
    
  2. Freak out dein Freund! Sie können es lokal zum Herumspielen wie folgt montieren:

    mkdir test
    sudo mount temp_file test -o loop
    
Boris
quelle
5

Ziemlich einfach,

Der Flash-Chip-Controller enthält einige Einstellungen. Produkt-ID, Hersteller-ID sowie Anzahl und Größe der Flashchips.

Wenn Sie ein älteres Gerät mit einem kleinen Chip verwenden und die Firmware mit einer falschen Anzahl von Flash-Chips überschreiben, ist die Gesamtkapazität des Laufwerks größer als die Anzahl der installierten Flash-Chips.

Da sich die Anzahl der Adresszeilen nicht geändert hat, wird immer auf den Chip geschrieben. Beispielsweise werden zuerst 128 MB geschrieben, dann wird der nächste Chip ausgewählt und dann werden weitere 128 geschrieben.

Da es nur einen Chip gibt, ist die Auswahlleitung nicht verbunden und die Daten des zweiten Flashchips überschreiben die Daten des ersten Chips.

Da der Controller die Größe aller Chips, einschließlich der nicht mit dem Betriebssystem verbundenen, meldet, formatiert das Betriebssystem die falsche Größe.

Progger
quelle
3
Das Problem hierbei ist, dass auf diese Weise in der Hardware neuere Daten auch die FAT32-Dateizuordnungstabelle und das Stammverzeichnis am Anfang des Laufwerks überschreiben und das Laufwerk so unbrauchbar machen, bis es neu formatiert wird. Die Tatsache, dass dies nicht der Fall ist, deutet darauf hin, dass es sich um einen Dateisystem-Hack handelt, mit dem es funktioniert.
Mokubai
yup, genial wie es ist, würde dies sehr schnell gefangen werden.
Rohan Monga
1

Hierzu gibt es zwei Methoden:

  1. Partition: Es gibt mehrere Tools zum manuellen Ändern und Erstellen einer Partition. Beispielsweise ist es möglich, mehr Zylinder als die tatsächlich verfügbaren auszuwählen. Ist trivial das zu tun. Ex. Partitionsmagie und ich denke, sogar fdisk kann das

  2. Geräte-Firmware: Die andere Methode besteht darin, die Firmware des Geräts zu ändern. Bei den meisten Geräten (aber nicht bei allen) sind die Informationen (Plug & Play und andere Informationen) in der Firmware enthalten.

Beispielsweise besteht ein üblicher Trick darin, eine Firmware einer Festplatte mit mehr Kapazität in einem Gerät mit weniger Kapazität zu verwenden und den Speicherplatz "zu vergrößern".

Magallane
quelle