精彩专题推荐:建站之入门课 建站之必修课 建站之关键课 网站价值所在 流量提高专题 css+div 标准 个人网站打造全过程
返回建站学首页
导航:
建站首页 | 网站设计 | 网站开发 | 网站运营 | 网页软件 | 建站指南 | 搜索优化 | 图像处理 | 视频教程 | 书籍教程 | 建站专题
当前位置:首页>网站开发>ASP教程>正文

表单的漏洞


来源:我要学习网 时间:06-11-13 点击: 点击这里收藏本文

1 表单的漏洞

(1) 没有 HTML语法屏蔽

与留言原理一样,如果你的表单处理程序没有屏蔽掉HTML语法,他们就可以用类似</font> 之类的代码来攻击你的表单程序,这类攻击的原理和防御的方法你可以参照<<留言系统的漏洞和对策>>.

(2)单长度没有限制

某些表单域因为没有限制输入文字的长度,他就会成为垃圾的攻击目标.如果几兆或更多的垃圾放到你的表单里会怎样?死啦死啦的有!!

(3)CGI程序里没有检验发送来的实际数据长度

有些表单定义了表单项的最长长度,但由于没有在 cgi 程序里判断真实的长度,造成那个表单限制名存实亡,行同虚设.比如:

(a) 你可以不从表单里直接输入,而从其它地方剪切过来.

(b) 你可以把它的表单程序代码另存为一个新文件,然后修改其中的限制代码!然后...你知道了!!!





---------------------

2 防御方法

(1)屏蔽掉 HTML 语法.

(2)你的表单域一定要定义最长字符数.方法是:在你的表单的属性里设置最长选项.html的语法为: maxlength="XX";

(3)你的gi程序里一定要判断真实的文字长度,其代码为:

$FORM{"name"} = substr($FORM{"name"},0,16)."0" if( length($FORM{"name"})>16);

如果name长度大于16个,则去掉多余的部分.





---------------------

3 总结

这类错误我已经在许多的网站上发现,包括一些较大的网站和一些非常精彩的个人网站.希望广大程序员注意这类安全问题,保护你的劳动成果!

  把此文章收藏到:          
广而告之
文章搜索
  • Google JZxue.Com

关于我们 | 联系我们 | 友情链接 | 网站地图
Copyright © 2005 - 2006 建站学 All rights reserved.