LINUX.ORG.RU

Удобное и надежное стирание носителей

 ,


0

2

Вот например есть серия MicroSD карт используемых в офисе по работе, стирать их по одной - головная боль, записывать UUID и стирать по скрипту - тоже непросто, иногда случается ротация карт, смена уидов и так далее.

Можно ли забацать такую схему: Подключенный Card Reader по USB, любая карта вставленная в который была бы стёрта и перезаписана нулями? Я понимаю, что можно, но не могу сообразить как это осуществить.

Устройства, скрывающие особенности работы флеш-памяти транслятором (FTL) и прикидывающиеся блочным устройством, надёжно стереть нельзя.

Кто будет гарантировать, что все блоки будут участвовать в трансляции? Ведь FTL может после записи в этот блок секретов перестать его использовать, чтобы уменьшить износ.

Впрочем, примерно то же справедливо и для НЖМД. Какой-то сектор может начать хуже читаться, и тогда он станет relocated, а значит будет вечно хранить секрет, даже если пользователь затрёт весь диск нулями.

Теоретически, от всего этого должна спасать ATA-команда secure erase, но это вопрос доверия писателю прошивки. Даже если он не злоумышленник, то он мог банально накосячить.

Надёжный способ при необходимости переиспользовать носитель только один — хранить зашифрованные данные, а перед переиспользованием уничтожать ключ. Если ключ лежит в RAM, то это достаточно просто. Если записан на другой носитель (например на дешёвую флешку), то его можно уничтожить механически.

По теме — можно скриптом поллить раз в несколько секунд содержимое /proc/partitions или /sys/block/ и запускать процедуру уничтожения данных для всего, кроме тех дисков, на которых установлена ОС.

kmeaw ★★★ ()
Ответ на: комментарий от kmeaw

Кажется перепрошивка удалит всё и сразу , но придётся для каждой флешки искать и хранить прошивку и прошивальщик .

Gennadevich ()
Ответ на: комментарий от sparks

Но каким скриптом, например флешка появилась в устройстве usb3, дальше скрипт какого рода будет? НЕ могу никак сообразить, ведь wipe или shred надо направить на какой-то /dev/* А как сопоставить устройство блочное с юсб читающим его устройством?

cheetah111v ()
Ответ на: комментарий от kmeaw

По теме — можно скриптом поллить раз в несколько секунд содержимое /proc/partitions или /sys/block/ и запускать процедуру уничтожения данных для всего, кроме тех дисков, на которых установлена ОС.

Я хочу не все кроме тех на которых ОС, а только те которые находятся в определенном usb читальщике, но вот как сопоставить /dev* устройство и читающее его устройство и как потом на это сопоставление натравить shred\wipe?

cheetah111v ()

Нет такого. Только физическое уничтожение.

LongLiveUbuntu ★★★★★ ()
Ответ на: комментарий от cheetah111v

Тогда надо найти соответствующее USB-устройство, например по VID/PID (в данном примере 8564:1000) и посмотреть на все блочные устройства, которые оно предоставляет:

for f in $(grep -Hx 8564 /sys/bus/usb/devices/*/idVendor | cut -d: -f1); do
    d="${f%/*}"
    [ "$(cat "$d/idProduct")" = 1000 ] || continue
    ls $d/*:*/*/*/*/block | while read -r blk ; do
        lsblk "/dev/$blk"
    done
done

Потом можно будет заменить lsblk на стирание.

kmeaw ★★★ ()
Последнее исправление: kmeaw (всего исправлений: 1)

Удобно и надёжно стирать данные, например, при помощи промышленного шредера и последующего выпекания полученных отходов при температуре свыше 1688K.

peregrine ★★★★★ ()
Последнее исправление: peregrine (всего исправлений: 1)

Берете картридер apt-get install secure-delete или gnome disk utility можно делать перезапись

apt-get install secure-delete

sfill -fiIlvz /home/test/Загрузки

Ruslan5g ()
Последнее исправление: Ruslan5g (всего исправлений: 1)

Свч печь надежно сотрет все ваши данные.

utanho ★★★ ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.