ASP网页设计Request言之无物
SQLServer是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。request Request工具切磋Request是ASP里的一个外部工具,用于猎取HTTP哀求中传送的恣意信息(如头信息、表双数据、cookies等等)。以是这是在ASP内里最经常使用的外部工具,经常使用来取得GET体例提交的数据(Request.QueryString)、表单POST提交的数据(Request.Form)和CookiesRequest.Cookies)。
我们用Request工具能够指定猎取某个特定体例提交的数据。好比我们用这段代码取得经由过程POST提交的数据lake2的值:request.Form("lake2");而request.queryString("CSDN")取得GET体例提交的CSDN的值。
关于猎取HTTP数据,ASP还给了我们一个更复杂的办法:request(key),即间接利用request而不指定命据汇合。此时ASP会顺次在QueryString、From、Cookies、ServerVariables、ClientCertificate、Browser中反省婚配的数据,若发明则前往数据。
下面6个汇合中,ServerVariables、ClientCertificate和Browser的变量是流动了的;而QueryString、From、Cookies的变量能够恣意指定。想不到Cookies能够拿来传送恣意数据,之前倒没有注重。
OK,test一下先。在当地web目次新建test.asp文件,内容为:<%=request("b")%>
Step1:间接会见k</b>e2">http://127.0.0.1/test.asp?b=la<b>k</b>e2,扫瞄器显现lake2
Step2:机关表单提交了局也如step1
Step3:机关表单,GET传送b值为“He”,同时POST的b为“She”,扫瞄器显现为“He”。呵呵,按后面的排序有个优先级的
Step4:Telnet到当地80端口,机关HTTP哀求以下(注重Cookies哦):
GET/test.aspHTTP/1.1
Accept:*/*
Accept-Language:zh-cn
Accept-Encoding:gzip,deflate
User-Agent:Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1;TencentTraveler;.NETCLR1.1.4322)
Host:127.0.0.1
Connection:Keep-Alive
Cookie:b=lake2,Success!
在一堆服务器呼应数据以后,我们看到了“lake2,Success!”(Q:为何空格不见了?A:由于未对提交的空格举行URL编码)。
到此,我们已实际和实践相分离的证实了Cookies能够拿来传送数据。
Request工具与SQL打针
如今把话题转一下,我们来讲说SQLInjection。
SQL打针打击是因为Web使用程序没有过滤用户所提交的无害数据而招致伤害服务器的一种打击伎俩。注重咯,这里触及到提交数据,天然要跟方才说了一年夜堆的request接洽上啊。
归根结柢,ASP上面的SQL打针都是因为request的参数没有过滤大概过滤不严。固然,程序员不是平安专家,他们大概不晓得怎样过滤。
因而,收集上就呈现了通用的防打针ASP程序――“SQL通用防注进体系”。经由一段工夫和几个作者的改善,该程序已对照完美了,基础上能够拦阻SQL打针(可是,团体以为它的过滤体例太严,形成很多方便)。“SQL通用防注进体系”是个asp文件,只需在有参数提交的文件中include它就是了。程序过滤的道理是遍历GET和POST参数的值,发明SQL打针关头字(如and、select)就中断一般文件实行。
嘿嘿,它遍历GET和POST,也就是Request工具的QueryString和From汇合,疏忽了Cookies。
如今,我们假定有一个SQLInjection毛病百出的ASP程序,具有收集平安常识的办理员同砚在网高低载并利用了传说中的“SQL通用防注进体系”,可是很不幸,ASP程序中一切猎取参数都是利用的request(key)……(呵呵,眼看着一个个封闭被冲破,那是很enjoy的事变^_^)
这里仅仅是假定罢了,至于实践中究竟有几ASP程序员喜好用request(key)来猎取数据就不得而知咯。
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习 先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
页:
[1]