NFTS数据流

NTFS交换数据流(alternate data streams,简称ADS)是NTFS磁盘格式的一个特性,在NTFS文件系统下,每一个文件都能够存在多个数据流,就是说除了主文件流之外还能够有很多非主文件流寄宿在主文件流中。它使用资源派生来维持与文件相关的信息,尽管我们无法看到数据流文件。可是它却是真实存在于我们的系统中的。创建一个数据交换流文件的方法非常easy,命令为“宿主文件:准备与宿主文件关联的数据流文件”。

用NFTS数据流隐藏文件

1.请如今c盘下创建一个目录,MyTest。

(最好是新建一个目录。否则后面就比較麻烦,详细解释见后面)

进入这个文件夹,新建一个txt文件,test.txt.写入数据 “this is test for ntfs.” 。

右击属性,能够查看一下其大小22字节,占用空间为4KB。

2.按 win + r,打开执行,输入cmd。进入c:\MyTest

输入:echo  这是数据流数据 > test.txt:shujuliuwenjian.txt

这样我们就创建了一个名为shujuliuwenjian.txt的文件,内容为“这是数据流数据”的数据流文件,并与宿主文件test.txt进行了关联。

3.接着在窗体输入dir命令,咦,看不到创建的数据流文件shujuliuwenjian.txt。

在资源管理器中查看文件夹c:\MyTest,也看不到shujuliuwenjian.txt。

那么再右击查看test.txt的属性,大小没有改变。

是不是非常奇妙?shujuliuwenjian.txt隐藏了。

那么怎么让shujuliuwenjian.txt现出原形呢?

4.follow me...

在cmd中输入:notepad  test.txt:shujuliuwenjian.txt

在打开的notepad中能够看到写入数据流的数据 “这是数据流数据”。

5.接下来,问题来了。。。

怎么删除shujuliuwenjian.txt呢?

假设前面你听从了我的建议新建了目录MyTest,那么直接删除目录即可了。

什么?。你直接在根文件夹下或者系统文件夹下创建的数据流文件?

好吧。那你仅仅能借助工具来删除它。猛戳这里 下载工具

这个工具须要在cmd下执行

输入stream.exe 能够看到执行參数

删除数据流文件命令 stream.exe -d  数据流文件所在文件夹

6.另外,还能够创建不依赖文件的流。

如echo "这是数据流数据" > :shujuliuwenjian2.txt.

查看内容使用 notepad :shujuliuwenjian2.txt

这样就实现了用NFTS数据流隐藏文件。

数据流文件是不局限于文本文档的,不论什么文件都能够作为数据流文件。包含可运行程序,图片。声音等等。

msdn上对file streams的介绍:

http://msdn.microsoft.com/library/aa364404.aspx

版权声明:本文博客原创文章。博客,未经同意,不得转载。

NFTS数据流的更多相关文章

  1. angular2系列教程(九)Jsonp、URLSearchParams、中断选择数据流

    大家好,今天我们要讲的是http模块的第二部分,主要学习ng2中Jsonp.URLSearchParams.observable中断选择数据流的用法. 例子

  2. 《连载 | 物联网框架ServerSuperIO教程》- 10.持续传输大块数据流的两种方式(如:文件)

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  3. [LeetCode] Data Stream as Disjoint Intervals 分离区间的数据流

    Given a data stream input of non-negative integers a1, a2, ..., an, ..., summarize the numbers seen ...

  4. [LeetCode] Find Median from Data Stream 找出数据流的中位数

    Median is the middle value in an ordered integer list. If the size of the list is even, there is no ...

  5. React数据流和组件间的沟通总结

    今天来给大家总结下React的单向数据流与组件间的沟通. 首先,我认为使用React的最大好处在于:功能组件化,遵守前端可维护的原则. 先介绍单向数据流吧. React单向数据流: React是单向数 ...

  6. NTFS交换数据流隐写的应用

    by Chesky ##目录 ####一.NTFS交换数据流(ADS)简介 ####二.ADS应用 写入隐藏文件(文本\图像\可执行文件) ADS在Windows平台下的利用--写入后门 ADS在We ...

  7. SSIS Design6:利用数据流

    数据流利用内存来缓冲数据,并在内存中处理数据转换,由于内存的访问速度是非常快的,所以SSIS数据流转换性能是非常高效的.SSIS Engine将数据分批加载到内存中,当Data Flow将一批新的数据 ...

  8. Java基础知识笔记(三:文件与数据流)

    一.输入流与输出流 输入流将数据从文件.标准输入或其他外部输入设备中加载到内存.输出流的作用则刚好相反,即将在内存中的数据保存到文件中,或传输给输出设备.输入流在Java语言中对应于抽象类java.i ...

  9. C++系统预定义4个用于标准数据流对象

    C++系统预定义4个用于标准数据流对象 cin   cout   cerr   clog C++里关于cerr,clog,cout三者的区别: cerr(无缓冲标准错误)-----没有缓冲,发送给它的 ...

随机推荐

  1. HDU 1074 Doing Homework(像缩进DP)

    Problem Description Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lot of h ...

  2. 【代码优化】当许多构造函数的参数,请考虑使用builder模式

    静态工厂和构造具有共同的局限性:我们不能扩展到大量的非常好的可选参数. 1.对于多个可选參数的构造器.我们都习惯採用重叠构造器模式.比方一个參数的构造器调用2个參数的构造器.     2个參数的构造器 ...

  3. Rational Rose 2007使用小结

    1.Rose怎样隐藏类的属性和操作? 右击类,选Options->Suppress Attributes/Suppress Operations 2.Rose怎样表示类的约束? 在工具箱中选AB ...

  4. Oracle 11g+oracle客户端(32位)+PL/SQL develepment的安装配置

    之前一直想学Oracle,可是就是安装配置Oracle一直未成功,让人很苦恼,特别是什么监听器什么的,一直没搞明白,弄了整整一天都没弄出来,上网查资料后发现资料上大多数都是参差不齐,不太详细明了,尝试 ...

  5. IntelliJ Idea中一个编译报错引发的

    package verify; public class Verifier { private String name; public Verifier() { this.name = getClas ...

  6. Git合并多个Commit

    当前有四个commit,现在要将四个commit合并为一个,可以使用git rebase -i HEAD~{这里是要合并的commit数量} 如 git rebase -i HEAD~4 ,即为合并最 ...

  7. OpenWrt arp 命令发布

    arp命令是用来查看mac与ip在消息路由器缓存表.这是一个基本的介绍了一下我就不说了. 但今天我的同事通过arp.可是在shell脚本就回显示没有此命令,我当时也感到非常费解. 于是乎.做了例如以下 ...

  8. LeetCode——Linked List Cycle II

    Given a linked list, return the node where the cycle begins. If there is no cycle, return null. Foll ...

  9. directory not found for option

    directory not found for option '-LS60' 选择项目名称----->Targets----->Build Settings----->Search ...

  10. 至Android虚拟机发送短信和拨打电话

    Android的emulator是已经包括了gsm 模块,能够模拟电话与短信进行调试(就不用花太多冤枉钱) 首先,肯定是打开虚拟机: emulator -avd XXXXXX -scale 0.8&a ...