Seite 1 von 1
FAT zerstören
Verfasst: 07.04.2010 09:08
von purebas
Ich möchte gerne ein paar Tests einer Software durchführen.
Die Software kopiert Dateien von einem USB-Stick auf die Festplatte.
In der Praxis kommt es einmal in 100 Fällen vor, dass die FAT-Logik
zerstört wurde. Wahrscheinlich durch Schreibzugriffe während des
Abziehens des USB-Sticks vom Quellsystem.
Die zu überprüfende Software soll nach einem Kopierfehler automatisch
eine Korrektur des Dateisystems vornehmen. Meine Frage dazu:
Was kann ich tun, um (beispielsweise mittels HEX-Editor) das
FAT-Dateisystem eines USB-Sticks zu "zerstören", sodass ich danach
die Reparaturfunktion der Software gezielt testen kann?
Re: FAT zerstören
Verfasst: 07.04.2010 09:37
von DarkDragon
Hallo,
Also bei FAT wird erstmal nichts gelöscht, sondern nur als gelöscht markiert. Desshalb überschreib einfach mal eine FAT. Aber deren Kopie musst du stehen lassen, sonst wirds wohl nichts. Wenn das Programm nur auf Dateiebene arbeitet, dann markier einfach eine Datei als gelöscht. Das Programm sollte die Datei dir dann wieder herstellen können.
http://members.inode.at/anton.zechner/a ... at.htm#DIR
Re: FAT zerstören
Verfasst: 07.04.2010 09:37
von zigapeda
Soweit ich weiss gibt es keine software mit der du direkt in der
FAT editieren kannst... Ich kenn das programm Rawwrite mit dem
kann man disketten komplett (also auch den teil von der FAT
beschreiben) ob das allerdings fuer USB sticks geeignet ist weiss
ich nicht. Da koenntest du dir dann eine fehlerhafte FAT im hex
editor erstellen und die jedes mal neu schreiben und dann testen.
Was mir jetzt noch nicht so klar geworden ist, willst du diese
software selber entwickeln oder traust du dem hersteller nicht und
willst sie nur testen? Wenn du sie selber entwickeln willst kannst du
ja erstmal eine software schreiben die da ein bischen drin rumpfuscht
um mit den lese und schreib operationen besser vertraut zu werden.
Ansonsten hier mal der link zu rawwrite, vll kannst du damit was
anfangen:
http://www.chrysocome.net/rawwrite
Re: FAT zerstören
Verfasst: 07.04.2010 09:54
von DarkDragon
zigapeda hat geschrieben:Soweit ich weiss gibt es keine software mit der du direkt in der
FAT editieren kannst... Ich kenn das programm Rawwrite mit dem
kann man disketten komplett (also auch den teil von der FAT
beschreiben) ob das allerdings fuer USB sticks geeignet ist weiss
ich nicht. Da koenntest du dir dann eine fehlerhafte FAT im hex
editor erstellen und die jedes mal neu schreiben und dann testen.

Das ist so einfach wie den Garten umgraben. Lange vor deiner Zeit gab es hier im Forum mal ein Beispiel von Rings. Das dürfte sogar noch im CodeArchiv liegen:
http://www.purearea.net/pb/CodeArchiv/F ... D+Files.pb
Man erkennt hier deutlich, wie man direkt aufs Laufwerk zugreifen kann:
So beschreib ich meine Disketten mit einem Image (Vorsicht! Der Inhalt des Laufwerks geht verloren und ich garantiere für nichts!):
Code: Alles auswählen
; Folgendes anpassen:
Filename.s="\\.\A:"
If ReadFile(0, "C:\Users\Daniel\Downloads\f6flpy3270\f6flpy32\F32.IMA")
Size = Lof(0)
If Size > 0
*Mem = AllocateMemory(Size)
If *Mem
ReadData(0, *Mem, Size)
Else
CloseFile(0)
Goto Exit
EndIf
Else
CloseFile(0)
Goto Exit
EndIf
CloseFile(0)
Else
Debug "Error"
Goto Exit
EndIf
; Diskette beschreiben
If OpenFile(0, Filename)
WriteData(0, *Mem, Size)
CloseFile(0)
Else
Debug "Error"
EndIf
Exit:
If *Mem
FreeMemory(*Mem)
EndIf
End
Da braucht man jetzt nicht alles neu beschreiben.
Re: FAT zerstören
Verfasst: 07.04.2010 10:12
von purebas
zigapeda hat geschrieben:Was mir jetzt noch nicht so klar geworden ist, willst du diese
software selber entwickeln oder traust du dem hersteller nicht und
willst sie nur testen?
Ich vertraue dem Hersteller und möchte die Produktentwicklung als Tester begleiten.
zigapeda hat geschrieben:Soweit ich weiss gibt es keine software mit der du direkt in der
FAT editieren kannst
Doch natürlich! Ich benutze den HEX-Editor "WinHex". Ich denke auch, dass dies viele HEX-Editoren können. Um an die FAT ranzukommen, könnte man ja auch einfach nur mit PureBasic das Laufwerk "\\C:\" öffnen und auslesen. Dann hast Du die FAT im ersten Teil der eingelesenen Daten. Siehe auch Beitrag von @DarkDragon.
@DarkDragon
Die Imagebespielung ist gut. Nur wie zerstöre ich gezielt die FAT, sodass gezielt bestimmte Datei- oder Ordnereinträge logisch zerstört werden.
Durch wildes reinhacken in die FAT (mit WinHex), habe ich es auch schon geschafft, die FAT-Logik zu zerstören. Jedoch wäre es super, wenn ich wüsste welcher Eintrag manipuliert werden müsste, um gezielt die Zerstörung einer Datei (oder eines Ordners) zu verursachen. So müsste ich nicht auf gut Glück rumhacken.
Re: FAT zerstören
Verfasst: 07.04.2010 10:33
von NicTheQuick
Dann müsstest du den Aufbau der FAT studieren. Vielleicht reichen ja schon die Angaben bei
Wikipedia (oder
englisch)