下载此文档

ASP 安全编程一些注意事项.doc


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
[原创]ASP 安全编程一些注意事项
信息来源:邪恶八进制信息安全团队()
文章作者:乱雪(luanx.)
很多人抱怨ASP安全不高、速度不快,其实ASP也很优秀。用PHP一样可以写出
拉圾程序,用ASP依然可以写出很优秀的程序。安全高不高取决于编程者,PHP依然可以写出漏洞百出的程序,所以,别抱怨ASP这样那样的毛病,我写ASP已经三年多了,一直都认为它很方便,虽然有些地方写着很复杂,及不上PHP,因为这样,ASP写着感觉更爽。把多年总结的一些ASP常见的安全事项写出来。
一、古老的绕验证漏洞
虽然古老,依然存在于很多小程序之中,比如一些企业网站的后台,简单谈
谈。这个漏洞出现在没有对接受的变量进行过滤,带入数据库判断查询时,造成
SQL语句的逻辑问题。例如以下代码存在问题:
username=request("username")
password=request("password")
sql = "select * from user where username='" & username & "' and
password='" & password & "'"
很容易看出在没有对username、password进行过滤就带入SQL语句进行判断
了,提交'or''=',SQL语句就变成了select * from user where username=''or''=''
and password=''or''='',返回值为ture。
一般在登录处过滤字符,代码如下:
replace(("username"),"'","")
replace(("password"),"'","")
上面指定了POST方式接受提交过来的数据,指定接受方式很重要,下面谈谈。
二、指定接受数据提交方式
ASP 中的Request对象可以接受GET、POST、COOKIES请求。将其简化写成
**=Request("参数")的格式接受数据,此时WEB接受数据时先以GET方式接受,如
果不匹配再以POST方式接受,最后再以Cookies方式接受。也就是Cookies注射造
成的原因。
指定接受方式不仅可以避免Cookies注射,还可以提高WEB处理的速度。
一个存在问题的代码如下:
id=request("id")
sql="select * from Articles where id="&id&""
set rs=(sql)
这里不管id过滤没有过滤,关键是id接受时没有指定接受方式,造成了
Cookies注射。
这样写:
id=("id")
sql="select * from Articles where id="&id&""
set rs=(sql)
id使用了get方式接受数据。
三、HtmlEnCode
HtmlEnCode是ASP中Server的一个对象,可以直接格式化HTML不被执行在浏览
器上,比如以下代码:
<%
lx="<script>alert('test')</script>"
lx
%

ASP 安全编程一些注意事项 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zbfc1172
  • 文件大小42 KB
  • 时间2018-06-19