Fscmd应用教程Word文档格式.docx
- 文档编号:20312992
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:30
- 大小:1.29MB
Fscmd应用教程Word文档格式.docx
《Fscmd应用教程Word文档格式.docx》由会员分享,可在线阅读,更多相关《Fscmd应用教程Word文档格式.docx(30页珍藏版)》请在冰豆网上搜索。
\movie”,将会为您把大于50M(大概)的文件复制到“z:
\movie”目录去(必须存在)。
8、我的电脑有没有谁隐藏了分区呢?
“list”,您可以查看分区信息。
9、发现了一个隐藏分区,我该怎么查看?
它是硬盘0上的分区3。
“mount/d:
0/p:
3”,将会为您加载这个分区。
(Mount后,会切换到“?
:
\”,这表示是在windows不支持的操作模式下,这种模式不支持任何写操作。
)“dir”下,就可以浏览了。
10、“mount”后查看结束了,我该如何退出?
“c:
”,将会为您切换到C盘。
11、“reset”,这是干什么的?
重新启动?
不,这个是复位程序内部参数的,多次mount等操作后,可能出现内部参数混乱的情况,用reset把它们设置到一开始的值。
12、我想看看网络正常不正常,可以ping一下么?
可以,您可以调用任何cmd支持的外部命令,直接和cmd下一样输就可以了。
13、我想用cmd的内部命令,怎么办呢?
再启动一个cmd?
不用,您只需要在fscmd下执行cmd,所有操作将会为您转到系统cmd下,包括内部命令。
想回到fscmd,只需要exit。
14、黑白色太单调了……“color”将会为您切换到有颜色的世界。
15、我想看看当前目录及子目录下所有文件,看看到底有些什么。
。
“find/s/ne*”,可以为您列出当前目录及子目录的所有文件。
16、不是不支持通配符吗?
怎么又有*呢?
“find/s/ne*”中的*并不是通配符,而确实只是一个*号,/ne的意思是不包含,所以这个命令的意思是查找所有文件名中不含*的,因为*是不受支持的文件名,所以一般而言,所有文件名都是不含*的,也就可以列出所有文件了。
17、vdisk,这个命令好复杂啊,什么基础的都不明白。
您可以看下面的实战分析篇,有一部分就详细讲解了vdisk的用法。
18、我想在资源管理器里打开fscmd现在的这个目录,需要cd..,在输入目录名来打开吗?
不需要。
您只需要直接输入一个空格,然后回车就会为您打开当前目录。
19、批处理?
和windows下的批处理一样的吗?
该怎么使用呢?
不一样,fscmd的批处理是为了方便调用fscmd的功能而添加的,您可以通过批处理极大的扩展cmd原有的功能。
实战分析篇
一、查看伪加密的文件
什么是伪加密相信也不用我多说了,如下图
怎么样,是不是觉得这根本是一个空的文件夹呢?
让我们来看看xuetr的结果吧。
还是没有?
那么它是否是真的空的呢?
fscmd来看下
我们可以看到,有一个目录,名字是”.”,短文件名是e200~1,这就是一种伪加密的方法了,常规方法不可见,甚至有的ark也看不见(原因应该是过滤掉了),这种情况下,用fscmd就可以轻松发现,也可以对它们正常操作,所以,所有用伪加密的,可以和这种加密方法说BYEBYE了。
如何里面的内容,一个个找?
----不,当然不是,别忘了我们有find,如下
Find/ne*/s
什么意思呢?
/s的意思包含子目录,/ne*呢,就是说文件名不包含*,注意,这里的*不是通配符(对于直接磁盘分析来说,文件名中基本任何符号都是可能的,包含*),一般来说文件名中含*的情况不太会碰到,所以可以这么做,你也可以
“find/ne我就不用*”,试试看,结果是不是一样呢?
二、强行复制被锁定(保护)的文件
最简单的例子,注册表文件,如果你试着复制,它们,会提示
或者是其他类型的保护文件,如下图,虽然提示路径,但实际复制失败了。
fscmd
三、隐藏的rootkit
Rootkit的危害不用多说,要对付它们,首先就得找到它们,如下图的上半部分,我们看到了一个普通的文件夹。
可实际上,却隐藏了不为人知的秘密……
当然,这并不是一个真的rootkit,但它的隐藏能力一点不会次于一般的rootkit。
四、隐藏的流及目录
流?
NTFS流?
目录不是只要勾上显示隐藏的文件就可以了吗?
…你落伍了。
有些人看到这个题目可能这么想。
不过,你确定吗?
你确定只有NTFS才有流,你确定只有那么一种隐藏的目录?
好吧,让我们来看一下。
如图,很干净的一个盘,只有system.ini这一个文件,不过你确认没有其他东西了吗?
我们把这个文件复制到其他盘去,比如就桌面上吧。
?
怎么system.ini多了个流,刚才没有发现的啊?
….系统自己生成的?
让我们来看一看流的内容。
可以看到,其中明显是dir的结果,那么就不可能是系统自带的了,那么是…..对了,回想下本节的题目吧,这也是流,不过不是ntfs,而是udf。
让我们用fscmd来看下能不能有所发现吧。
看到了吗?
红色的Extra_Attr_Stream表示有流文件,名字是1。
让我们再来看看隐藏的目录吧。
没有目录,有人也许会说文件夹选项中的隐藏没开,不过大家不会认为xuetr会理系统的隐藏有没开吧?
再看它的镜像文件
怎么有两个qwe,而且一个目录一个文件?
再看看
有一个qwe目录,没有qwe文件,这是怎么回事呢?
其实这是一种很经典的隐藏方式,目录隐藏文件,就是把本来该是目录的,修改其属性成为文件,另外,设置其属性为隐藏,就成了上面这样,常规不可见,ark不可见,只有打包成了镜像,才能由压缩软件查看,但如果是光盘的话…
五、损坏的虚拟机系统及孤立的快照
目前常用的虚拟机有三种,virtualbox,virtualpc,vmware,我们可以用它们来做各种各样的事,有的人用来测试病毒、试验软件、体验新系统、玩游戏,也有人用来工作、开服务器---但不管做什么,偶尔可能出现…
怎么办呢?
用PE?
对,这是一个办法,但如果身边恰好没有合适的PE呢?
我们先去看下这个虚拟机对应的虚拟硬盘文件E:
\virtual\test1.vdi,然后看下有几个快照。
嗯,只有一个,那么只要三步就可以了
vdisk/b"
E:
\virtual\test1.vdi"
vdiskE:
\virtual\test\Snapshots\{eb57d3d8-698d-43bc-a5e3-dfa21638eac2}.vdi
vdiskopen
第一步是设定基础虚拟磁盘文件,就是创建虚拟机是最开始的那个文件
第二步是添加快照,有几个加几个,按时间顺序,越是旧的越先,最新的放最后,
第三步是开启这个功能,然后,有什么重要的,你就可以复制出来了
想要往里面放点东西?
抱歉,由于是自己解析的文件格式,写就不支持了。
真的想放东西,还得找个PE。
看到这,是不是觉得不是很方便,想修复下虚拟机系统都不行?
事实确实是如此,不过fscmd也有pe不能做到的事,比如:
“我在虚拟机里的一个文件丢了,我只知道以前肯定备份过(在某个快照里有),不过不知道是哪个快照了?
……”
一个个恢复然后再试?
可是我已经装了很多软件,有的已经没有安装程序了。
PE?
PE进去也只能看到最新的快照内容?
让我们来试下fscmd。
先看下基础的
可以看到,桌面上没有东西(0000-00-0000:
00:
00不是真的一个文件,NTFS空目录会这样显示)
加个快照吧
由上图,多了个软件,这就是快照里在桌面的内容了,我们继续?
这是第二个快照的内容,桌面上没有新的,不过其他目录多了很多,实际上呢,根目录多了个vc目录
而最新的快照是这样的
时间变了,还多了目录。
当然,fscmd不只针对自己的虚拟机,其他下载的虚拟机虚拟硬盘文件也可以,或者你是否想试下只有一个快照而丢了基础的虚拟磁盘文件?
呵呵,恐怕你要失望了,只有一个快照是很难正确浏览的,因为很多东西在基础的文件里,丢了的话,往往浏览的时候会出错,同样,李代桃僵这样的想法也只能是不得已而为之,别报太大希望。
六、丢失的分区
1、隐藏的分区
表面看上去没有什么,一般人也很少到磁盘管理里去看看
这种情况,只要分配一个盘符就可以了,不过有的时候是用软件隐藏的,在磁盘管理里可能不起作用,这时就可以用fscmd了。
2、真正丢失的分区。
EB52904E544653
“我的分区丢了。
我只想删除盘符的,谁知道一不小心。
还有什么办法吗?
Fscmd?
让我们试下。
也不行啊,只由一个分区,看不到删除的那个分区了。
别急,让我们来看看mount命令。
C:
\DocumentsandSettings\Administrator\桌面>
mount
加载文件或硬盘分区。
MOUNT[/D:
xx][/P:
xx][FILENAME][/pp:
xx][/AS:
[DISK]|[PARTITION]]
/D:
xx指定要加载的硬盘号,xx默认为0。
/P:
xx指定要加载的分区,xx默认为1。
FILENAME指定加载的文件名,含有此参数时忽略/D:
xx。
/AS:
[DISK]|[PARTITION]指定加载的文件状态(磁盘或分区),默认为DISK。
/PP:
xx指定要加载的分区位置,适用于分区表损坏但又知道分区开始位置的情况。
红色的/pp:
xx,这个是干什么的,难道…对了,就是针对这种情况的。
但是我们不知道开始位置啊?
没关系,我们可以找。
当然,不是用fscmd了,用winhex(效率原因,没有加入此功能,有需要的话可以考虑加一个)。
我们打开winhex,打开硬盘0,然后偏移量转到9615320064(list列举出来的分区一大小),然后查找16进制EB52904E544653,不一会,我们发现找到了。
位置是9615384576,试试吧。
耶,成功了。
快把你的东西转移出去吧。
备注:
以上查找步骤主要是定位丢失分区的dbr开始位置,16进制EB52904E544653是NTFS分区的开头标记,FAT分区是另外的标记的。
你也可以自己手工找,也就是第一个分区的大小9615320064+32256(第一个分区的开头)+32256(一般分区头的空余)=9615384576。
如果是像上面那样删除的话,差不多是在这个位置,如果你是重新分区的话,那么只能全盘查找了,需要记得分区的大概容量,这样才找得快点,不然,要有耐心了。
接上……
2011-3-12,fscmd加入了搜索丢失分区功能,我们来看下。
我们假设不知道分区信息,设定开始为0,结束为整个硬盘,硬盘号是0(用list可以看有几个硬盘),间隔什么的都默认。
那么就是Searchdisk/b:
0,看看速度吧,大概9:
30开始的,整个硬盘大小为10G。
下面搜索了26%
60%
100%
可以看到找到了上次说的丢失分区,开始位置9615384576。
至于搜索速度,快得时候有4G每分钟,慢的像上面这个1.7G左右。
接下来就可以mount/pp:
9615384576来加载这个分区察看是否正确了。
对于虚拟硬盘文件,目前采用的是先vdisk,然后再searchdisk,不需要指定硬盘号。
七、已删除的文件
我不小心把一个重要文件删了,回收站也没有了,怎么办呢?
有办法恢复吗?
用finaldata看下,已破坏的文件,再恢复到C盘(数据恢复基本概念,不对待恢复文件所在的分区进行任何写操作。
)
不行,提示已损坏……
我们用fscmd来看看
应该就是划红线的那个了,可是文件名都是乱码了,该怎么打呢?
让我们来看下rcopy这个命令。
d:
\>
helprcopy
将一个文件复制到另一个位置。
RCOPY[id64:
id32][destination]
id64:
id32文件的id属性,此属性可以从rdir获取。
destination为新文件指定目录和/或文件名,不支持默认名称。
SAMPLE:
rcopy0:
26c:
\1.txt--复制id属性为0:
26的文件到c:
\1.txt,如id对应的文件为已
删除文件,请勿和源文件在同一磁盘分区。
可以看到,rcopy命令并不需要打文件名,只需要id,而上面这个rar文件的id是ID_64:
9400320,ID_32:
832,所以应该是
Rcopy9400320:
832c:
\1.rar
恢复完成,打开看看。
从上图可以看到,虽然提示恢复完成了,但仍出现了错误,只能恢复一部分信息。
这是什么原因呢?
其实原因很简单,压缩文件不是连续储存的缘故。
删除后,簇链已丢失,这种情况下,一般免费软件是不能恢复的,因为其中含有碎片重组的技术,这样的技术通常都是各自保密的(原理倒是简单的,实际操作比较复杂),当然,fscmd也不会提供这样的功能。
那么怎么办呢?
如果您熟悉文件结构的话,可以尝试手工恢复,如果您不熟悉,那么找数据恢复公司是比较好的选择,或者,有可能,能够找到熟悉的人免费帮您恢复也说不定,最后,或者有某些数据恢复软件说不定提供了这样的功能,不过,需要您一个个试,但,别抱太大希望,这样的软件通常都是收费的。
如果都不是,那么建议您放弃。
另外,如果待恢复文件在系统盘,那么建议您立刻关机,然后用PE启动,在PE上尝试恢复。
八、初识批处理
从2011.4开始,fscmd添加了一个新的功能,批处理,其对应的文件格式为.yls,
您可以通过install命令来注册这个类型,也能通过uninstall来取消。
注册后,您可以发现,.yls扩展名的文件图标变成了
也就是fscmd程序的图标,这表示您已经成功注册了yls类型(某些系统可能需要重启来使图标改变。
那么,批处理能够实现哪些功能呢?
实际上,所有fscmd支持的命令您都可以用在批处理中,比如常用的dir、cd命令,以及不常用的searchdisk或者cmd外部命令甚至内部命令都可以支持。
当然,也有不支持的,比如for,goto这一类。
那么yls文件的格式是怎样的呢?
让我们以一个简单的例子来说明。
dir
cmddir
这不是批处理文件吗?
是的,这就是批处理,和cmd的批处理结构是一样的,每个命令一行。
下面我们看下运行结果。
可以看到,一个是fscmd的dir,另一个是cmd的dir,两个命令都可以正常运行。
上面所说的是一种执行方式,在fscmd里执行所有命令。
那么相对应的,还有一种,就是在cmd里执行所有fscmd的命令。
在使用前,先说明下,在cmd里执行fscmd命令时,fscmd最好不要再调用cmd的命令,包括pause,cls,否则很可能会出现不可知的错误。
为了方便扩展,在yls批处理中,加入了%0、%1…这样的参数,%0代表yls批处理本身,%1代表第一个参数…
如
2.bat内容:
1.yls"
\windows"
Pause
1.yls内容:
cd%1
那么我们执行2.bat时结果应该是怎样的呢?
,说明1.yls的参数是"
,也就是
Cd%1就是cd"
,然后再dir,那么我们来看下是否真的如分析呢?
从上图可以看到,确实是这样的。
我们继续扩展下,用fscmd列出批处理命令所在目录的文件,直接dir,好像不行,列出的是yls文件所在的目录。
那么,怎么做呢?
对了,%~dp0,意思是获得cmd批处理所在的路径(不含文件名),另外,由于fscmd处理参数时是按空格及双引号分割的,所以,在使用和文件路径有关的参数时,请加双引号,比如%~dp0写成”%~dp0”。
还能更复杂一点么?
好吧,试试这个。
上面的1.bat究竟是干什么的呢?
在这里不做回答,有兴趣的话可以建这样一个批处理试试。
注意:
1.yls和2.yls的位置应该是1.bat中指定的位置。
上面是考考大家的,下面这个不考了
显示fscmd可以发现而cmd无法发现的文件。
Bat文件在哪个目录,就查找那个目录。
限于个人对批处理理解有限,更多的功能可能需要大家自己发掘了。
教程基本到这结束,如果fscmd有新功能且比较复杂,将会继续更新。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Fscmd 应用 教程