Windows文件系统漏洞-小漏洞,大用处

[复制链接]
查看252 | 回复0 | 2012-4-1 19:19:56 | 显示全部楼层 |阅读模式
1.Windows中很有用的文件替换命令,绕过文件保护

用来替换文件的replace,连正在使用的文件也能替换。非常无敌。

比如:在C:下建一个目录,c:aaa

然后复制一首mp3到c:aaa并命名为c:aaaa.mp3

然后再复制另一首歌到C:a.mp3

然后用mediaplayer播放c:aaaa.mp3

在命令提示符下输入:replacec:a.mp3c:aaa

过一会,是不是播放的歌已变为另一首。

用这个命令来替换系统文件真是太爽了,并且XP的系统文件保护也对它无效。

再也不用到漏洞-小漏洞,大用处

大家都知道在Windows中“”符号是路径的分隔符号,比如“C:Windows”的意思就是C分区中的Windows文件夹,“C:WindowsSystem.exe”的意思就是C分区中的Windows文件夹中的System.exe文件,好继续我们假设一下:

如果文件名中有“”符号会怎么样呢?假如“S”是一个文件夹的名字,这个文件夹位于:“F:”,他的路径就是“F:S”,当我们试图访问的时候Windows会错误的认为我们要打开的文件是C分区的S文件夹,这样Windows就无法打开并且会返回一个错误,因为以上的路径并不存在。
也许你现在正在尝试创建“S”文件,但是Windows会提示你:“”符号是不能作为文件、文件夹的名字的。看来Windows还是早已想到这一点了的。OK我们继续进行,就不信不能建立包含“”符号的文件。
现在打开你的电脑,我们要做一些很有趣的尝试。进入Windows后点击:开始>运行然后输入“cmd”并会车(如果是Win98请输入“COMMAND”),这时你会看到Windows的命令控制台,我们就是要利用它完成我们剩下的测试,以下包含了很多命令其中{}中的字符是我的注释:
F:Test>mkdirs{我们的第一次尝试,结果Windows只创建了S文件夹""被忽略掉了}
F:Test>mkdirss1{还是失败,Windows先创建了S文件夹,然后在S内创建s1文件夹}
F:Test>mkdirs.{"s."被解析成S"."又被忽略了}

子目录或文件s.已经存在。
F:Test>mkdirs..{终于成功了,现在你可以在资源管理器看到"s."但却无法打开/删除}
F:Test>mkdirs...{又成功了,在资源浏览器能看到"s.."可以打开但是无法删除}

 


为什么会这样?我们先说你看到的这个“S.”文件夹,他即不能打开也不能删除,不能打开是因为他的实际路径是“F:Tests..”(我们自己创建的所以可以确定他的实际路径)但是在Windows资源管理器中名字变成了“S.”也就是说当你试图打开它的时候Windows实际上尝试打开“F:Tests.”当然是不能打开的,文件并不存在,所以Windows会报错。不能删除也是因为这个,Windows把一个实际存在的文件路径错误的解析为一个不存在的路径,并进行操作当然是无法完成的。
该说“S..”这个文件了,这个文件可以打开,但是却无法删除。等等……打开?你以为Windows真的是打开了我们创建的“s...”文件了吗?我们做下面的试验你就明白了。还是老规矩{}是我的注释方便大家理解:

 
F:Test>echo1>Txt1.txt{创建“F:TestTxt1.txt”文件}
F:Test>copyTxt1.txts..{复制刚刚创建的文件到“s..”,就是资源管理器的“S.”}

已复制1个文件。
F:Test>echo2>Txt2.txt{创建“F:TestTxt2.txt”文件}
F:Test>copyTxt2.txts..{复制刚刚创建的文件到“s...”,资源管理器的“S..”}

已复制1个文件。
F:Test>
 


现在回到你的资源管理器打开“S..”文件夹,你看到了什么?“Txt1.txt”文件怎么会在这里?我们刚刚的确复制到了“S.”呀?难道我们打开“S..”文件夹实际上就是打开了“S.”?不错事实就是这样。其实如果你再创建一个“S”文件夹的话“S.”就能打开了,但是实际上打开的是“S”。
“我该怎么删除它呢?”,删除它也不算很难,但是常规的方法是绝对删不掉的。有两种方法可供选择:1;进入DOS删除(不推荐)。2;还是进入命令提示符然后输入“rmdir目录名”,目录名就是你创建的时候的名字,如果忘记了可以先在资源管理器查看,然后加上“.”。如果提示“文件夹不是空的”应该加上“/s”参数。删除实例:
F:Test>dir

驱动器F中的卷是BGTING

卷的序列号是2C8E-FE1C
F:Test的目录
2003-09-1117:50<DIR>.

2003-09-1117:50<DIR>..

2003-09-1118:35<DIR>s.

2003-09-1118:37<DIR>s..

1个文件9字节

5个目录3,390,029,824可用字节
F:Test>rmdirs..目录不是空的。
F:Test>rmdirs../s

s..,是否确认(Y/N)?y
F:Test>rmdirs.../s


s...,是否确认(Y/N)?y

 


利用这个漏洞我们可以做很多事情,比如想访问&ldquo;S&rdquo;文件夹,但是没有权限的时候我们可以创建&ldquo;S..&rdquo;来指向&ldquo;S&rdquo;这样就可以跨权限浏览。而且新一代的木马程序很可能利用此漏洞把自身藏在某个&ldquo;X..&rdquo;目录下这样用户根本不可能发现他,就算专业级的杀毒软件也只会去杀&ldquo;X&rdquo;而跳过&ldquo;X..&rdquo;。如果恶意程序在机的计算机上创建很多&ldquo;..&rdquo;文件夹的话,哈哈~那个时候Fotmat也许是最好的选择了。现在微软官方好像还没有发布任何防范措施。


怎么样是不是有点晕了?不要怕&ldquo;晕&rdquo;是很正常的,我已经晕了很多次了。:)


好了,说了这么多可能有点乱了。下面我总结一下:

1;在Windows中创建&ldquo;X..&rdquo;文件夹后该文件夹将无法通过常规方法删除,但是却可以Copy文件进去,在资源管理器显示为&ldquo;X.&rdquo;,错误的指向&ldquo;X&rdquo;文件夹。(嘿嘿,怎么有点像快捷方式?)
2;创建&ldquo;X..&rdquo;的方法是在命令行输入&ldquo;mkdirX..&rdquo;。
3;删除它的方法是在命令行输入&ldquo;rmdir目录名&rdquo;,目录名就是你创建的时候的名字,如果忘记了可以先在资源管理器查看,然后加上&ldquo;.&rdquo;。如果提示&ldquo;文件夹不是空的&rdquo;应该加上&ldquo;/s&rdquo;参数。
4;暂无防范方法。

*
发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则