Então o que são Fluxos de Dados Alternados (ADS) ?
É uma funcionalidade que foi adicionada ao New Technology File System também conhecido como NT File System (NTFS) para aumentar a comparabilidade com o Macintosh Hierarchical File System (HFS), em termos leigos é algo que facilitou a utilização dos seus ficheiros no seu Mac (Apple) e PC (Windows), ambos.
Como funciona e porque devo preocupar-me com isso ?
Usualmente quando está a guardar algo num ficheiro .txt, por exemplo, está a armazenar o conteúdo do seu ficheiro (texto ascii) num fluxo de dados que o windows reconhece como o fluxo por defeito, para que na próxima vez que abrir o seu ficheiro esteja a aceder ao mesmo fluxo para ver os seus dados.
Como exemplo
Se eu criar um ficheiro .txt usando o Bloco de Notas no meu sistema Windows e salvá-lo em um arquivo (secreto.txt) então toda vez que eu o abro eu veria meus dados.
Mas e se houver mais dados no arquivo que você não está ciente de ?
É aí que os fluxos de dados alternativos entram em jogo.
I estará usando cmd.exe (Command Prompt) para demonstrar os exemplos para facilitar a compreensão da CLI (Command Line Interface) mas os mesmos resultados podem ser alcançados usando Power Shell também.
Então quando eu uso o prompt de comando para ver o conteúdo do meu diretório eu posso ver o meu segredo.txt e o tamanho do arquivo sendo 33 bytes.
dir