博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WEB应用数据验证指南
阅读量:6404 次
发布时间:2019-06-23

本文共 882 字,大约阅读时间需要 2 分钟。

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

转载地址:http://dfiea.baihongyu.com/

你可能感兴趣的文章
Hadoop 公平调度器算法调度解析
查看>>
Linux Foundation(笔记)
查看>>
Java学习第二十五天
查看>>
vim配置
查看>>
ubuntu 把软件源修改为国内源和更新
查看>>
随机产生四则运算,导入导出文件
查看>>
位运算符
查看>>
winform自定义控件
查看>>
C#编码好习惯
查看>>
避其锋芒,侧翼出击。——司马亮创业回忆录(一)
查看>>
scope
查看>>
一起谈.NET技术,晚绑定场景下对象属性赋值和取值可以不需要PropertyInfo
查看>>
一起谈.NET技术,.Net Framework源代码中的模式之Prototype(原型模式)
查看>>
[shell 命令] find 查找文件
查看>>
windows下启动mysql服务的命令行启动和手动启动方法
查看>>
VTK三维点集轮廓凸包提取
查看>>
【概率论与数理统计】小结9-3 - 区间估计
查看>>
Golang性能调优入门
查看>>
sqlloader外部表
查看>>
golang笔记——数组与切片
查看>>