<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Pentagrid AG (Einträge über Flash)</title><link>https://www.pentagrid.ch/</link><description></description><atom:link href="https://www.pentagrid.ch/de/categories/flash.xml" rel="self" type="application/rss+xml"></atom:link><language>de</language><copyright>Contents © 2026 Pentagrid AG </copyright><lastBuildDate>Wed, 17 Jun 2026 19:14:55 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Shreddy2 – Ein Raspberry Pi als Löschstation für USB-Sticks</title><link>https://www.pentagrid.ch/de/blog/shreddy2-the-raspberry-pi-storage-scrub-station-for-usb-thumb-drives/</link><dc:creator>Pentagrid AG</dc:creator><description>&lt;figure&gt;&lt;img src="https://www.pentagrid.ch/images/202112_Screenshot_shreddy2.png"&gt;&lt;/figure&gt; &lt;p&gt;"Delete early, delete often" ist das leicht abgewandelte Motto, dass daran
erinnert, Datenlecks durch verlorene oder gestohlene USB-Sticks mittels
regelmäßigem Löschen zu minimieren. Sind Sie es leid, beim Formatieren eines
USB-Sticks auf Ihrem lokalen Computer darauf zu achten, nicht versehentlich das
falsche Gerät zu löschen? Um den Vorgang zu vereinfachen, haben wir eine
USB-Löschstation als Software auf einem Raspberry Pi implementiert. Die
Software wartet  drauf, dass ein USB-Stick angeschlossen wird. Der wird dann
bereinigt. Also: shreddy, ready, go!&lt;/p&gt;
&lt;!-- TEASER_END --&gt;
&lt;section id="warnhinweis"&gt;
&lt;h2&gt;Warnhinweis&lt;/h2&gt;
&lt;p&gt;Zunächst einmal sollten sensible Informationen nicht ungeschützt auf mobilen
USB-Sticks gespeichert werden, vor allem dann nicht, wenn die Gefahr besteht,
dass sie verloren gehen. Es ist daher immer eine gute Idee, Daten vor dem
Speichern zu verschlüsseln oder einen USB-Stick mit Verschlüsselungsfunktion zu
verwenden, der man vertrauen kann oder noch besser, die verifiziert wurde.
Nichtsdestotrotz werden viele Daten auf USB-Sticks gespeichert. Wenn diese
nicht regelmäßig gelöscht werden, sammelt sich ein Informationsberg, der,
auch wenn einzelne Dateien weniger sensibel sind, in der Menge viel über interne Aktivitäten
oder persönliche Angelegenheiten preisgeben kann. Daher verringert das
regelmäßige Löschen von USB-Sticks die Auswirkungen im Falle eines Verlustes.&lt;/p&gt;
&lt;/section&gt;
&lt;section id="loschen-von-flash-speichern"&gt;
&lt;h2&gt;Löschen von Flash-Speichern&lt;/h2&gt;
&lt;p&gt;USB-Sticks nutzen Flash-Speicher. Werden Informationen darauf gelöscht, werden
die Daten zunächst nicht wirklich gelöscht. Dateiinhalte können oft auf der Ebene
des Dateisystems wiederhergestellt werden, insbesondere bei &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Undeletion"&gt;FAT-Dateisystemen&lt;/a&gt;, die auf USB-Sticks weit verbreitet
sind. Ein Wiederherstellen ist solange möglich, wie Verwaltungsinformationen
und Dateiinhalte nicht überschrieben werden. Aber selbst bei
teilüberschriebenen Dateien können noch genügend extrahierbare Informationen
erhalten bleiben. Früher wurden Dateien auf Magnetplatten mit speziellen
Löschprogrammen mehrfach überschrieben, um eine Wiederherstellung zu verhindern
oder zu erschweren. Während dies bei magnetischen Festplatten gut funktioniert,
funktioniert dieser Ansatz bei Flash-Speichern nicht. Der
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Flash_memory_controller"&gt;Flash-Speicher-Controller&lt;/a&gt; versucht,
Schreibvorgänge über den Flash-Speicher zu verteilen, sodass eine gleichmäßige
Schreibbelastung der Speicherzellen erzielt wird. Diese Methode wird als
Wear-Levelling bezeichnet und verlängert die Lebensdauer eines Speichermediums.
Dieses Wear-Leveling verhindert jedoch, eine einzelne Datei einfach zu
überschreiben. Beim Versuch eine Datei mehrfach zu überschreiben würden zwar
mehrere Regionen innerhalb des Flash-Speichers überschrieben werden, nicht
notwendigerweise aber die Speicherzellen, an denen der ursprüngliche
Dateiinhalt gespeichert war. Außerdem hält der Flash-Speicher-Controller
zusätzlichen Speicherplatz als Ersatz für ausfallende Speicherzellen vor. Wurde
der Dateiinhalt an eine solche nun nicht mehr nutzbare Stelle geschrieben, kann
er ohne Low-Level-Zugriff auf den Flash-Speicher nicht mehr überschrieben werden.&lt;/p&gt;
&lt;p&gt;Was ist also der richtige Weg, um einen USB-Speicherstick zu löschen? &lt;a class="reference external" href="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-88r1.pdf"&gt;NIST SP
800-88 Rev. 1 "Guidelines for Media Sanitization"&lt;/a&gt;
empfiehlt das folgende Verfahren zum Löschen von USB-Wechselmedien
(einschließlich sogenannter Pen Drives, Thumb Drives, Flash Memory Drives,
Memory Sticks usw.):&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Datenträger werden mit organisatorisch genehmigten und getesteten
Überschreibtechnologien/-methoden/-tools überschreiben. Das Überschreiben
sollte mindestens zwei Durchgänge umfassen, und dabei ein Muster im ersten
Durchgang und sein Komplementärmuster im zweiten Durchgang verwenden. Es
können zusätzliche Durchgänge verwendet werden.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Das NIST fügt jedoch auch als Hinweis hinzu: "In den meisten Fällen, in denen
eine Bereinigung gewünscht ist, sollten USB-Wechselmedien vernichtet werden."
Das ist die Empfehlung, um auf Nummer sicher zu gehen.&lt;/p&gt;
&lt;p&gt;Für weniger kritische Daten und Datensammlungen kann jedoch ein einfacher
Überschreibansatz mit mehreren Durchgängen ausreichend sein. Da das
Überschreiben einer einzelnen Datei aufgrund der Art und Weise, wie der
Flash-Speicher verwaltet wird, prinyipbedingt kein Überschreiben darstellt,
bleibt als Ansatz ein mehrfaches vollständiges Überschreiben, um das Risiko von
Datenrückständen erheblich zu verringern. Wei et al. beobachteten in ihren
praktischen &lt;a class="reference external" href="https://www.usenix.org/legacy/event/fast11/tech/full_papers/Wei.pdf"&gt;Wiederherstellbarkeitstests&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;In den meisten Fällen reichte das zweimalige Überschreiben des gesamten
Datenträgers aus, um den Datenträger zu säubern, unabhängig vom vorherigen
Zustand des Laufwerks. Es gab drei Ausnahmen: Etwa 1 % (1 GB) der Daten
blieb auf Laufwerk A nach zwanzig Durchläufen übrig. Wir testeten auch eine
kommerzielle Implementierung des 5220.22-M-Standards mit vier Durchläufen
auf Laufwerk C. Für den Fall der sequentiellen Initialisierung entfernte
sie alle Daten, aber bei der zufälligen Initialisierung blieb ein einzelner
Fingerabdruck (Anmerkung: zuvor wurden auf dem Datenträger Testdaten
verteilt) übrig.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mit anderen Worten: Es gibt keinen wirklich korrekten Weg der sicheren
Datenlöschung, außer die Daten nicht außerhalb eines Verschlüsselungscontainers
zu verarbeiten oder den Datenträger physisch zu zerstören. Sagen Sie uns nicht,
Sie seien nicht gewarnt worden. Trotzdem haben wir ein Tool erstellt, wenn Sie
versuchen möchten, Daten zu löschen.&lt;/p&gt;
&lt;/section&gt;
&lt;section id="software"&gt;
&lt;h2&gt;Software&lt;/h2&gt;
&lt;p&gt;Wir haben eine Software in Python implementiert. Diese nutzt die Bibliothek
py-udev für das Monitoring von entsprechenden USB-Events. Die Speichermedien
werden dann in drei Durchgängen überschrieben: Der erste und zweite Durchgang
verwenden den Befehl &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Badblocks"&gt;badblocks&lt;/a&gt;, um
die komplementären Muster 0x00 und 0xff zu schreiben. Der badblocks-Befehl ist
eigentlich nicht für das Überschreiben von Daten gedacht. Dies ist jedoch ist ein
Nebeneffekt beim Prüfen des Speichers auf beschädigte Bereiche. Wir verwenden das Programm
hier, weil es die Angabe eines expliziten Schreibmusters erlaubt. Das
Überschreiben des Blockgeräts in einem dritten Durchgang wird durch den Aufruf
des &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Shred_(Unix)"&gt;shred-Befehls&lt;/a&gt; im Zufallsmodus
umgesetzt. Das Überschreiben des Speichers mit Zufallsdaten soll den Aufwand
für die Suche nach extrahierbaren Datenresten erhöhen. Anschließend legt die
Software ein neues FAT-32-Dateisystem an. Dazu nutzt das Programm &lt;code class="docutils literal"&gt;parted&lt;/code&gt; und
&lt;code class="docutils literal"&gt;mkfs&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Die Software kann auf einem Raspberry Pi installiert werden, der in einem Büro
in einer vertrauenswürdigen Umgebung platziert wird. Nutzerinnen und Nutzer
können ihre benutzten USB-Sticks anstecken und später wiederkommen, um sie
abzuholen. Dies kann ein eigenes Sicherheitsproblem darstellen. Nochmals, Sie
wurden gewarnt.&lt;/p&gt;
&lt;a class="reference external image-reference" href="https://www.pentagrid.ch/images/202112_Screenshot_shreddy2.png"&gt;
&lt;img alt="Screenshot der Telnet-Statusseite" class="align-center" src="https://www.pentagrid.ch/images/202112_Screenshot_shreddy2.thumbnail.png"&gt;
&lt;/a&gt;
&lt;p&gt;Die Software implementiert zwei Methoden, um über den Status zu informieren. In
einem Netzwerkmodus hat die Löschstation Netzwerkschnittstelle, über die
mittels &lt;code class="docutils literal"&gt;netcat&lt;/code&gt; oder &lt;code class="docutils literal"&gt;telnet&lt;/code&gt; Statusinformationen abgefragt werden können (siehe
Screenshot). Da der Netzwerkmodus einem möglicherweise kompromittierten
Raspberry Pi erlaubt, den Inhalt des USB-Sticks auszulesen und Daten an einen
Angreifer auszuleiten, könnte der Raspberry Pi alternativ in einem
Funkschnittstellen blockierenden Metallgehäuse und ohne Ethernet betrieben
werden. Die zweite Methode der Statussignalisierung ist ein am Raspberry Pi
angebrachtes USB-Busylight. Solange ein Löschvorgang läuft, leuchtet das
Busylight rot, ein rotes Blinken meldet einen Fehler, und ein grünes Licht
bedeutet, dass alle eingesteckten USB-Sticks verarbeitet wurden. Im Leerlauf,
wenn kein USB-Speicherstick eingesteckt ist, spart das Busylight Energie und
ist aus. Die Software unterstützt derzeit Busylights von Kuando über die
Python-Bibliothek &lt;a class="reference external" href="https://github.com/nitram2342/pyBusylight"&gt;pyBusylight&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Der Quellcode ist auf &lt;a class="reference external" href="https://github.com/pentagridsec/shreddy2"&gt;Github&lt;/a&gt;
verfügbar. Dort ist auch die Installationsanleitung zu finden.&lt;/p&gt;
&lt;/section&gt;</description><category>Flash</category><category>Information Disclosure</category><category>Operational Security</category><category>Raspberry Pi</category><category>Tools</category><guid>https://www.pentagrid.ch/de/blog/shreddy2-the-raspberry-pi-storage-scrub-station-for-usb-thumb-drives/</guid><pubDate>Mon, 20 Dec 2021 05:12:21 GMT</pubDate></item></channel></rss>