Когда Microsoft разработала Windows, вместо использования обычного атрибута для хранения информации о файле (например, даты создания файла) она решила хранить эту информацию в скрытом месте.. Это скрытое место известно как файловые потоки.
В этом руководстве вы узнаете о потоках файлов и о том, как их эффективно использовать.
Каждый файл в системе Windows имеет поток по умолчанию, который приложение может использовать для хранения информации. Файл также может иметь несколько потоков (также называемых альтернативными потоками), но они редко используются приложениями.
Как скрыть текстовую информацию в файле
Приложениям рекомендуется хранить данные в альтернативных потоках, а не в потоке по умолчанию. Однако почти каждая программа, которую мы используем, даже не заботится об этом. Они просто используют поток по умолчанию и забывают о том, что файл может иметь более одного потока. Создать альтернативный поток так же просто, как использовать команду file:stream
в командной строке.
Чтобы скрыть текстовую информацию в файле, нам просто нужно создать альтернативный поток и сохранить в нем информацию. В данном случае мы будем использовать файл с именем «program.exe».
Откройте командную строку. Чтобы создать новый поток, введите:
notepad "program.exe:hide"
Появится следующее окно:
Блокнот создаст альтернативный поток с именем «hide.txt» внутри program.exe. Нажав «Да», мы сможем сохранить любой текст:
Если вы скопируете файл «program.exe» в другое место, он сохранит этот файл вместе с ним. Чтобы получить доступ к потоку, вам нужно будет использовать его имя, в данном случае «hide.txt», что еще больше усложняет его чтение.
Как проверить, получен ли файл из внешних источников
Windows использует эту функцию для управления источником файлов. Это также хороший способ повысить вашу безопасность, поскольку теперь вы можете узнать источник файла. Чтобы проверить, пришел ли файл с другого компьютера или из Интернета, щелкните файл правой кнопкой мыши и выберите «Свойства».
На вкладке «Общие» вы увидите информацию о файле:
Как управлять потоками файлов
Хотя вы можете легко создать поток, в Windows нет инструмента для просмотра файлов, в которых есть потоки. Он также не может перечислить потоки, связанные с файлами. Если мы хотим увидеть эту информацию, вам нужно использовать простой вызов приложения «Потоки». Это старая программа, созданная Марком Руссиновичем, который в настоящее время работает в Microsoft.
Загрузить Потоки от Sysinternals
С помощью этой программы вы можете увидеть, содержит ли файл более одного потока. Он также показывает имя этого потока и его размер.
На изображении ниже видно, что многие файлы имеют поток «Zone.Identifier:$DATA». Он используется Windows для хранения информации об источнике файла. Он будет существовать только в том случае, если файл создан с других компьютеров или из Интернета.
По умолчанию Windows блокирует загруженные программы из Интернета. Если вы уверены в безопасности файла, вы можете использовать Streams для удаления этих данных, чтобы Windows не просила вас разблокировать программу каждый раз, когда вы ее запускаете.
Альтернативные способы просмотра потоков
Если вы используете Windows Vista или 7, вы можете использовать команду dir
с переключателем /R
для просмотра потока. На изображении ниже вы можете видеть, что информация о потоках появляется, если мы используем переключатель /R
.
Вы можете видеть, что «file.exe» содержит два потока. Один из них безымянный (по умолчанию), а другой — «Zone.Identifier:$DATA». Для файла, который пришел не с другого компьютера или из Интернета, такого потока не существует.
Знаете ли вы какие-либо другие способы скрыть конфиденциальные данные в файле?