php项目防止sql注入的方法
2017-07-16 23:21
477 查看
Sql注入:通过在表单中添加特殊的字符或url中增加特殊的字符,然后向数据库发起请求,拼凑出sql语句,达到攻击的目的
有两种:
1、Post
2、Get
Post的万能密码:xxx’or
‘1
如何防范万能密码:
最简单的方式,就是密码加密:md5, sha1
万能用户名:xxxx' OR 1#
如何防范万能用户名:
让单引号失去本身的含义,利用addslashes函数进行转义,以下为转义的函数:
function deepslashes($data){
//判断$data的表现形式,并且需要处理空的情况
if(empty($data)){
return $data;
}
//中高级程序员写法
return is_array($data) ? array_map('deepslashes', $data) : addslashes($data);
}
在接受get传参的时候,也需要处理一下,通常就是传递id的时候。
处理方法很简单,只需要将参数 转成 整型即可。
如 1 or 1 -----> 1
有哪些方式:
1、强制转换,使用函数intval 或者 数据类型的 关键字 int
2、隐式转换,通过运算, 只需要 +0 即可
有两种:
1、Post
2、Get
Post的万能密码:xxx’or
‘1
如何防范万能密码:
最简单的方式,就是密码加密:md5, sha1
万能用户名:xxxx' OR 1#
如何防范万能用户名:
让单引号失去本身的含义,利用addslashes函数进行转义,以下为转义的函数:
function deepslashes($data){
//判断$data的表现形式,并且需要处理空的情况
if(empty($data)){
return $data;
}
//中高级程序员写法
return is_array($data) ? array_map('deepslashes', $data) : addslashes($data);
}
在接受get传参的时候,也需要处理一下,通常就是传递id的时候。
处理方法很简单,只需要将参数 转成 整型即可。
如 1 or 1 -----> 1
有哪些方式:
1、强制转换,使用函数intval 或者 数据类型的 关键字 int
2、隐式转换,通过运算, 只需要 +0 即可
相关文章推荐
- php 防止sql注入的简单方法
- php中防止SQL注入的方法
- php中防止SQL注入的最佳解决方法(预备义语句和参数化查询)
- PHP中防止SQL注入方法详解
- php防止sql注入的方法详解
- php:输入值/表单提交参数过滤,防止sql注入或非法攻击的方法
- PHP最全防止sql注入方法
- CI框架全局防止SQL注入(防止XSS攻击)的方法 分类: php CI框架 防SQL注入 防XSS攻击 2014-02-10 17:04 918人阅读 评论(0) 收藏
- php中防止SQL注入的方法
- php中防止SQL注入的方法
- 浅析php过滤html字符串,防止SQL注入的方法
- php中防止SQL注入的最佳解决方法
- PHP简单实现防止SQL注入的方法
- PHP防止SQL注入的方法
- 转:php中防止SQL注入的方法
- PHP中防止SQL注入方法详解
- php中防止SQL注入的方法
- php 防止sql注入的简单方法
- PHP防止SQL注入的方法(1)
- php中防止SQL注入的方法