Categories: Windows

Альтернативные потоки данных в NTFS или создание секретных файлов

Приветствую Вас, уважаемые читатели блога webcodius.ru. Файловая система NTFS обладает интересной возможностью поддержки альтернативных потоков данных (Alternate Data Stream, ADS). Технология подразумевает под собой, то, что каждый файл в файловой системе NTFS может иметь несколько потоков, в которых могут храниться данные. Проводник и большинство других приложений работают только со стандартным потоком и не могут получить данные их альтернативных. Таким образом с помощью технологии ADS можно скрывать данные, которые не удастся обнаружить стандартными способами.

Поддержка альтернативных потоков данных была добавлена в NTFS для совместимости с файловой системой HFS, использующейся на MacOS.

Немного теории

В файловой системе NTFS файлы имеют атрибуты. Один из атрибутов $DATA является атрибутом данных. В свою очередь атрибут $DATA может иметь несколько потоков. По умолчанию существует один основной поток $DATA:"", который называют неименованным. С этим потоком как раз и работает проводник windows. При желании к файлу можно добавить несколько именованных потоков (например $DATA:"potok1"), которые будут содержать различные не связанные между собой данные.

По умолчанию все данные, записываемые в файл, попадают в основной неименованный поток данных. И при открытии файла мы видим только основной поток. Альтернативные потоки NTFS, которые есть у файла, скрыты от пользователя и штатными средствами их не увидеть. Поэтому удалив файл с потоками, содержащими объемные данные, можно заметить, что места на устройстве хранения данных освободилось значительно больше, чем занимал файл по мнению того же Проводника. Альтернативными потоками часто пользуются вирусы, которые могут прописать себя в именованый поток какого-нибудь безобидного файла.

Для работы с альтернативными потоками можно использовать специальные программы, либо командную строку.

Как создать альтернативный поток NTFS

Создать альтернативный поток можно с помощью консольной команды echo.

Для начала откроем командную строку cmd.exe и с помощью команды echoсоздадим текстовый файл example.txt и запишем в него текст:

echo Главный поток>example.txt

Следующей командой запишем данные в альтернативный поток. Для этого после названия файла ставите двоеточие (:) и даете название потоку:

echo Альтернативный поток>example.txt:test

Теперь если открыть файл example.txt в любом тестовом редакторе, то будет виден только первый текст «Главный поток»:

Получить информацию содержащуюся в потоке можно с помощью команды more:

more <example.txt:test

Увидеть содержимое потока можно не только в командной строке. Например, открыть альтернативный поток в популярном текстовом редакторе Notepad++ можно с помощью следующей команды:

«C:\Program Files (x86)\Notepad++\notepad++.exe» example.txt:test

Обычный Блокнот может открывать только те потоки, название которых заканчивается на «.txt». Для примера, добавим к нашему файлу поток test.txt:

echo Альтернативный поток для блокнота>example.txt:test.txt

И откроем его в блокноте:

notepad.exe example.txt:test.txt

В альтернативные потоки, можно помещать не только текстовые данные, а абсолютно любые типы данных. Кроме того к любым типам файлов можно добавлять любые данные — к текстовым файлам добавлять видео, а к изображениям текстовую информацию.

Для примера добавим к нашему файлу поток с изображением img.jpg. Для этого воспользуемся командой type:

type img.jpg>example.txt:img.jpg

В результате мы получили обычный текстовый файл. Если открыть его обычным способом: двойным щелчком через проводник, то откроется текстовый редактор с содержимым главного потока:

Чтобы открыть содержащееся в альтернативном потоке изображение, например в Paint-е, достаточно воспользоваться командой:

mspaint example.txt:img.jpg

Что самое интересное альтернативные потоки не увеличивают видимый объем файла. Так если к текстовому файлу размером 1 Кб добавить видео размером 30 Гб, то проводник все равно покажет размер файла 1 Кб.

Также потоки можно добавлять для папок и даже для разделов жесткого диска. Делается все также как и для файлов:

echo Текст в папке>c:\test:hide.txt

И открываем в блокноте:

notepad c:\test:hide.txt

Так как наличие альтернативных потоков никак не отображается в проводнике и других файловых менеджерах, самый простой способ их обнаружить это воспользоваться командой dir /R:

Скрытие приложений в альтернативных потоках и их запуск

Поместить исполняемые файлы в альтернативные потоки также легко как и обычные файлы. Для примера возьмем наш файл example.txt и поместим приложение Блокнот (notepead.exe) в поток hideapp.exe:

type C:\Windows\system32\notepad.exe>example.txt:hideapp.exe

Чтобы запустить скрытый Блокнот используется следующая команда:

start .\example.txt:hideapp.exe

С помощью описанных приемов можно легко спрятать информацию от неподготовленных пользователей. Вообще применение альтернативных потоков данных ADS ограничено только вашей фантазией.

На этом все, до новых встреч!

Share
Tags: Windows альтернативные потоки ntfs файлы
alex

View Comments

  • Спасибочки за подробную инструкцию по созданию альтернативных потоков)) Будем пробовать) =)

  • В 1993 году Microsoft выпустила первую версию операционной системы Windows NT , в которой была реализована файловая система NTFS. Эта файловая система может работать с несколькими именованными потоками, получившими название «Альтернативные потоки данных». Поддержка ADS была реализована для совместимости с уже существующими операционными системами, позволяющими хранить метаданные для файлов (например, файловая система HFS ).

    В операционной системе Windowsальтернативные потоки данных используются для хранения таких атрибутов, как сведения об авторе, название и иконка файла. Начиная с Service Pack 2 для Windows XP , Microsoft представила службу Attachment Execution Service , которая сохраняет в альтернативных потоках данных подробную информацию о происхождении загруженных файлов в целях повышения безопасности.

  • У меня разрыв шаблона, какой-то трешак! В каждом файле можно спрятать что угодно. Сразу возникают вопросы:
    1) Видят ли антивирусы и онлайн-сканеры (VirusTotal например) альтернативные потоки в файлах? Сдаётся мне что ничерта они не видят, так же как и всякие сравнивалки файлов через подсчёт контрольных сумм.
    2) Какие системы программирования поддерживают работу с альтернативными потоками?
    3) Вопрос риторический, к "микрософту": "это сделано для безопасности"? Ох, рилли? Лукаво скрывать полную информацию, хранимую в файле? Неосведомлённость обычного юзера - самая первая огромная дырень в безопасности!!! Вообще, любые усложнения редко приводят к повышению безопасности. Безопасная система => простая система. Вот один из постулатов настоящей безопасности. А глядя на винду, возникает чувство что она специально задумывалась как рассадник червей, троянов, уязвимостей и прочего дерьма!

  • Поискал - большинство вменяемых антивирусов - их видят и сканируют тоже. А вот до VirusTotal они не доходят!

  • Вопром к автору, а на Windows XP как узнать список потоков? Ключа R там нет...

Recent Posts

  • Заработок в интернете

Ферма stealth аккаунтов. Как быстро начать и главное зачем?

В данном топике описан процесс создания и управления большим количеством аккаунтов (или stealth ферма), предназначенных для работы с репутацией и…

2 года ago
  • Заработок в интернете

Рейтинг онлайн казино на деньги: какие параметры подлежат оценке

Азартная индустрии при появлении интернета стала развиваться семимильными шагами. Игорные площадки быстро стали популярны. (далее…)

2 года ago
  • Заработок в интернете

Gologin — антидетект приложение для масштабирования ферм stealth аккаунтов

Ключевая задача антидетект браузера - обеспечить пользователя функционалом, позволяющим выглядеть в глазах поисковых и антифрод систем реальным пользователем, а не…

2 года ago
  • Заработок в интернете

Бездепозитные бонусы казино: классификация и способы получения

Бонусы без депозита предоставляют некоторые казино новичкам и зарегистрированным пользователям. Многие считают, что, воспользовавшись таким предложением, получат подарочные деньги от…

2 года ago
  • Заработок в интернете

Бездепозитные бонусы от казино — лучший подарок для любителей азартных игр

Игроки ищут любые возможности получить деньги от онлайн казино. Ведь победить в слотах непросто. Нередкие проигрыши могут подкосить бюджет любого…

2 года ago
  • Заработок в интернете

Покер на Андроид: как выбрать и скачать софт для игры на реальные деньги и бесплатно

Онлайн покер является удобным вариантом игры. Однако многие предпочитают устанавливать программы на свои устройства. (далее…)

2 года ago