PDA

Просмотр полной версии : Alternate Data Streams в NTFS


dum_forever
05.07.2010, 22:48
Alternate Data Streams в NTFS

Есть в NT такая вещь как ADS (Alternate Data Streams - дополнительные потоки данных). А проще сказать: NTFS поддерживает многопотоковые файлы в виде :; то есть один файл может иметь несколько независимых потоков, различающихся именем (StreamName). Над этими потокам можно осуществлять обычные операции записи/чтения, указывая после имени файла через двоеточие имя потока.
Например: вывод на экран какой-либо проги перенаправим в альтернативный поток: ping.exe >> somefile.txt:kakashka
Весь прикол в том, что при этом видимый размер файла не изменился, так как ось померит размер главного (дефолтового) потока (для обращения к которому не пишется двоеточие и его имя). А вот места на диске стало поменьше из-за того, что мы записали в поток kakashka.
Как можно сие использовать, догадайся сам. :)))) Хотя, конечно, кроме засерания NTFS-томов, для ADS можно найти еще много других применений. Например: можно написать кул прогу которая прячется в альтернативных потоках ;)
Грохнуть альтернативный поток обычным del не получается. Самый простой способ избавиться от альтернативных потоков - перекинуть содержащий их файл на FAT, а потом обратно. Существуют проги для их обнаружения. Например «lads». Кстати, дополнительные потоки можно цеплять и к директориям, только файлы в них класть уже нельзя :