Безопасно удаляем файлы
Всем салют, дорогие друзья!
Сегодня мы поговорим об очень важном аспекте безопасности и анонимности:
безвозвратное удаление файлов и очистка диска.
Для начала напомним, что статья написана в образовательных целях. Мы не несем ответственности за любой возможный вред, причиненный материалами данной статьи.
Когда вы удаляете файл, даже минуя или очищая корзину, обычно он не удаляется в физическом смысле: «вычёркивается» только информация о нём, занимаемое им место считается свободным и в любое время туда может быть записан новый файл. Но пока это не произойдёт (запись новых данных), старый файл может быть успешно восстановлен.
Примерно это же происходит при «быстром форматировании», т.е. удаляется информация о существующих файлах, но сами данные не стираются и не перезаписываются.
Кроме программ для восстановления файлов имеется техника под названием магнитно-силовая микроскопия — Magnetic Force Microscopy (MFM), которая позволяет любому в меру финансируемому оппоненту восстановить последние два
Shred
Программа предустановлена в Kali Linux. Является частью пакета coreutils.
Shred случайными числами заполняет место, занятое файлом. И уже, даже восстановив ваш удалённый файл, его будет невозможно прочитать. По умолчанию shred не удаляет файл, для этого используется параметр --remove (-u).
shred -u /path/to/file
В shred заложен 25-тикратный цикл, то есть программа перезапишет файл случайным содержимым 25 раз.
Чтобы изменить это значение, например на 35-тикратный:
shred -u -n 35 /path/to/file
Если ваша паранойя достигла ещё большего уровня, то вам подойдут следующие советы:
Чтобы спрятать информацию о том, что вы зачищали файл, используйте параметр -z, добавляющий нули в конец файла — это сделает файл непохожим на зашифрованный. Если вам интересно наблюдать за процессом перезаписи, параметр -v (verbose) служит для подробного вывода информации прогресса.
shred -u -z /path/to/file
Если хотите удалить сразу несколько файлов, то укажите их в таком формате:
shred -u -z -n 30 /path/to/file1 /path/to/file2 /path/to/file3
или же можно использовать маску:
shred -u -z -n *.txt
Shred также может удалить содержимое всего жёсткого диска командой
shred /dev/sda
Естественно, время выполнения операций напрямую зависит от размера файла и скорости записи.
Единственным минусом является то, что shred не умеет удалять каталоги. В этом нам на помощь приходит утилита wipe.
Wipe
Wipe - многофункциональная консольная утилита для безвозвратного удаления отдельных файлов и каталогов, а также зачистки разделов, дисков и внешних носителей(флешек).
Домашняя страница - http://lambda-diode.com/software/wipe/
Установка в Kali Linux, Debian, Ubuntu, Linux Mint:
sudo apt-get install wipe
Установка в BlackArch:
sudo pacman -S wipe
Для быстрого стирания вы можете использовать её примерно так:
wipe -r -q /путь/для/затирания
Внимание: Wipe надёжно работает только для магнитной памяти, следовательно, для твердотельных дисков (памяти) используйте другие методы.
secure-delete (srm, sfill, sswap)
Пакет secure-delete включает в себя три утилиты(srm, sfill, sswap), которые безопасно очищают файлы, диски, раздел подкачки и память.
- srm выполняет безопасную перезапись/переименование/удаление целевого файла(ов).
- sfill выполняет безопасную перезапись свободного пространства на разделе, в котором находится указанная директория и всех свободных индексных дескрипторов (inode) указанного каталога.
- sswap делает безопасную перезапись раздела подкачки.
Запуск srm со стандартными (безопасными) настройками с более подробным выводом для стирания диска /dev/sdX:
srm -v /dev/sdX