您所在的位置: 首页>>读书频道>>安全>>网络安全>>

6.5 小结

http://book.51cto.com  2008-06-22 13:00  (美)(Scambray,J.),(Shema,M.),(Sima,C.)著王炜/文苗.  电子工业出版社  我要评论(0)

6.5  小结

恶意输入攻击的目标是程序中没有充分解析的参数值。不充分的解析可能由以下几方面导致:不加选择地接受用户的输入,依赖客户端的验证过滤,或者认为非表单的数据不会被篡改。一旦攻击者找到了攻击载体,就可能进行更严重的攻击。基于不完善的输入验证攻击包括缓冲区溢出攻击、任意文件访问、社会工程攻击、SQL注入和命令攻击。所以,输入验证流程绝不是小问题,其对应用程序的威胁也绝对不能忽视。
下面是一些可能会寻找到不完善输入验证的地方:

GET请求的每个参数

POST请求的每个参数

表单(电子邮件地址,家庭地址,姓名,注释)

搜索字段

Cookie的值

浏览器环境变量(用户代理,IP地址,操作系统等)


另外,表6-2列出了一些字符和对应的URL编码,这些编码常常代表恶意内容,或者代表着产生错误信息或执行命令的企图,虽然单独使用这些字符并不一定就能攻击应用程序,而且它们并非总是非法的,但是,如果它们不是应用程序所需的数据,不费多少气力就可以把它们转化为一次攻击。


表6-2  常见的输入验证测试字符

   

URL编码

   

'

%27

一个在SQL注入中绝对需要的字符,会产生错误信息

;

%3b

命令分隔符,脚本终止符号

[NULL]

%00

文件访问中的字符串终止符号,命令分隔符

[回车]

%0a

命令分隔符

+

%2b

URL中表示空格,用于SQL注入攻击

< 

%3c

HTML开始标记

> 

%3e

HTML结束标记

%

%25

在两次解码,搜索字段攻击中经常使用,表示ASPPHP标记

?

%3f

表示PHP标记

=

%3d

在一个URL参数中放置多个等号

%28

用于SQL注入攻击

%29

用于SQL注入攻击

[空格]

%20

长脚本中必须使用的字符

.

%2e

用于目录遍历攻击,文件访问

/

%2f

用于目录遍历攻击

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
如何有效提升企业安全审计应用水平
如何有效防御SQL注入攻击
Web安全云时代
NAC安全访问控制
微软Forefront企业安全解决方案
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有