Как спрятать файл
АрхивСистемаКак скрыть файл от посторонних глаз, чтобы никто и не догадался о его существовании? Есть способ сделать это с почти стопроцентной гарантией (при условии, что "противник" не читал эту статью).
Существует множество программ для шифрования файлов. Но как скрыть файл от посторонних глаз, чтобы никто и не догадался об его существовании?
Что вы делаете, когда вам нужно втайне от хозяина компьютера сохранить на нём какую-нибудь информацию? Например, вам нужно сохранить загруженный в интернет-клубе десятимегабайтный файл на тот случай, если будет повреждена дискета; сделать копию сохранённой игры на служебном компьютере так, чтобы её не удалил администратор. Многие пользователи создают подкаталог в C:\Windows и копируют файлы в него. Это просто, но не слишком надёжно.
Существует способ скрыть файлы с почти стопроцентной гарантией, что их никто не обнаружит (при условии, что "противник" не читал эту статью). Вам понадобится любой хороший архиватор (например, RAR или 7-Zip) и шестнадцатеричный редактор.
Вначале создайте архив с максимальной степенью сжатия. Теперь переместите архив в системный каталог Windows и переименуйте его, например, в C:\Windows\System32\kernel.dll в Windows XP или C:\Windows\System\kernel.dll в Windows 9x. Хороший программист может вспомнить, что такого файла в каталоге Windows изначально нет, но большинство перепутает его с существующими kernel32.dll и krnl386.exe. Тем более, системный каталог Windows обычно большой, и вряд ли кто-нибудь станет подробно изучать его.
Скрытый файл kernel.dll среди других файлов в C:\Windows\System
Особенно легко скрыть свой файл среди файлов Direct-X с похожими именами. Например, существуют файлы D3d8.dll, D3dim.dll или D3dpmesh.dll, а вы создаете D3drg8d.dll. Другой пример: библиотеки Visual Basic 5.0 и 6.0 называются Msvbvm50.dll и Msvbvm60.dll, но в четвертой версии runtime-библиотека хранилась в файле Vb40032.dll. Воспользовавшись этой путаницей, вы можете создать файл Msvbvm40.dll. Он не нарушит нормальную работу программ, так как старые приложения Visual Basic будут обращаться к файлу Vb40032.dll.
Чтобы файл не привлекал внимание, он не должен существенно отличаться по размеру от других DLL. Не лишним будет изменить дату и время создания файла (на скриншоте легко заметить, что файл kernel.dll создан в 2004 году, а прочие системные файлы Windows 98 - в 1998).
Однако спрятанный таким способом архив можно открыть в файловом менеджере Total Commander или Far, нажав Ctrl+Page Down. На этот случай нам понадобится шестнадцатеричный редактор. Откройте в нем файл и замените первые четыре байта "Rar!" на "MZ" и любые два символа. Теперь, если не приглядываться, то файл будет выглядить, как настоящая библиотека, и открыть его в Total Commander уже не удастся. Перед распаковкой смените первые байты на "Rar!", и перед вами снова обычный архив. Обратите внимание, что первая буква R в сигнатуре "Rar!" заглавная, остальные строчные (коды 52 61 72 21).
Изменяем первые байты файла
Если требуется дополнительная защита, архив можно защитить паролем. Для этого можно порекомендовать Rar 3.0 и новый бесплатный архиватор 7-Zip. Оба архиватора используют надежный криптографический алгоритм AES и могут зашифровывать имена файлов, так что их не будет видно при просмотре архива в шестнадцатеричном редакторе. Zip-архивы защищены гораздо хуже, а для их взлома существуют готовые хакерские программы.