WEB应用数据验证指南

简介:

WEB应用数据验证指南

 
1 .为什么要验证数据?
如果不验证数据,容易导致WEB应用出现多种漏洞,比如:SQL注入攻击,命令注入攻击,跨站点脚本攻击,编码攻击,文件系统攻击和缓冲区溢出。因此,为了保护WEB应用的安全,我们必须验证数据。
2 .什么地方需要验证数据?
 所有从用户或其它设备接受数据的代码部分。
3 .什么数据需要验证?
HTTP头部,cookies,session,查询字符串,表格字段,和隐藏字段等。
4 .怎样验证数据?
4.1  验证策略
按顺序选择使用下面的四种策略:
n  接受正确的数据:如果知道某个数据的所有特点,就可以只接受具有所有这些 特点的数据。比如对手机号码的验证就可以使用本方法。
n  拒绝错误的数据:如果知道具有某些特点的数据是错误的,就可以明确拒绝具 有这些特点的数据。
n  规范化数据:对数据进行分析,去掉有问题的部分,并进行适当的修改和 转换,从而将其转化为正确的数据。
n  不作验证数据:  万不得已才不验证数据。
4.2 验证方法
n  检查数据类型;
n  检查字符型数据的长度范围;
n  检查数值型数据的大小范围;
n  验证数据来源进行防止跨站攻击也可以在APACHE配置文件里面做);
n  过滤掉下面的特殊字符或为其编码:
Character
Encoding
<
&lt;   or &#60;
>
&gt;   or &#62;
&
&amp;  or &#38;
"
&quot; or &#34;
'
&#39;
(
&#40;
)
&#41;
#
&#35;
%
&#37;
 ;
&#59;
+
&#43;
-
&#45;
 
n  尽可能使用存储过程操作后台数据库;
n  在生成SQL语句的地方:
Ø  过滤掉输入变量中的双引号和单引号;
Ø  过滤常用sql 关键字;
Ø  对于数值型字段变量,验证其值确实是数字;
n  适当使用图片验证;
n  验证数据操作的权限;

本文转自zkjian517 51CTO博客,原文链接:http://blog.51cto.com/zoukejian/57966


相关文章
|
4天前
|
移动开发 开发者 HTML5
构建响应式Web界面:Flexbox与Grid的实战应用
【10月更文挑战第22天】随着互联网的普及,用户对Web界面的要求越来越高,不仅需要美观,还要具备良好的响应性和兼容性。为了满足这些需求,Web开发者需要掌握一些高级的布局技术。Flexbox和Grid是现代Web布局的两大法宝,它们分别由CSS3和HTML5引入,能够帮助开发者构建出更加灵活和易于维护的响应式Web界面。本文将深入探讨Flexbox和Grid的实战应用,并通过具体实例来展示它们在构建响应式Web界面中的强大能力。
15 3
|
20天前
|
存储 安全 关系型数据库
后端技术:构建高效稳定的现代Web应用
【10月更文挑战第5天】后端技术:构建高效稳定的现代Web应用
42 1
|
4天前
|
JavaScript 前端开发 持续交付
构建现代Web应用:Vue.js与Node.js的完美结合
【10月更文挑战第22天】随着互联网技术的快速发展,Web应用已经成为了人们日常生活和工作的重要组成部分。前端技术和后端技术的不断创新,为Web应用的构建提供了更多可能。在本篇文章中,我们将探讨Vue.js和Node.js这两大热门技术如何完美结合,构建现代Web应用。
13 4
|
10天前
|
前端开发 安全 关系型数据库
PHP在Web开发中的应用及其优势###
【10月更文挑战第16天】 — 本文探讨了PHP在现代Web开发中的广泛应用及其显著优势。通过分析PHP的核心特性,如灵活性、易用性和广泛的应用支持,阐述了为何PHP成为众多开发者和公司的首选技术。文章还介绍了PHP与其他编程语言的比较,并展望了其未来的发展趋势。 ###
28 2
|
14天前
|
机器学习/深度学习 人工智能 算法
未来已来:探索量子计算在Web开发中的应用
在这篇文章中,我们将穿越技术的迷雾,一窥未来。量子计算,这一曾经只存在于理论中的技术,正逐渐走近现实,它的革命性潜力正在被探索其在Web开发中的潜在应用。本文将带你了解量子计算的基本概念,以及它可能如何重塑我们构建和交互Web应用的方式。准备好,让我们的想象力随着量子比特一起跳跃。
|
25天前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
39 3
|
25天前
|
缓存 前端开发 JavaScript
构建高性能Web应用:优化前端性能的策略
构建高性能Web应用:优化前端性能的策略
|
25天前
|
存储 缓存 NoSQL
构建高性能Web应用:缓存的重要性及其实现
构建高性能Web应用:缓存的重要性及其实现
|
26天前
|
JSON API 开发者
深入解析Python网络编程与Web开发:urllib、requests和http模块的功能、用法及在构建现代网络应用中的关键作用
深入解析Python网络编程与Web开发:urllib、requests和http模块的功能、用法及在构建现代网络应用中的关键作用
14 0
|
2月前
|
JSON JavaScript 前端开发
构建高效Web应用:Node.js与Express框架的完美结合
【9月更文挑战第28天】在现代Web开发中,Node.js和Express框架的结合为创建高性能、易扩展的应用提供了强有力的支持。本文将深入探讨如何利用这两种技术构建一个简单但功能强大的Web服务,同时提供代码示例以加深理解。