SQL注入如何做预防措施

小编给大家分享一下sql注入如何做预防措施,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1 .什么是sql注入(sql injection)?

sql注入是一种将sql代码添加到输入参数中,传递到sql服务器解析并执行的一种攻击手法

2. 怎么产生的?

Web开发人员无法保证所有的输入都已经过滤

攻击者利用发送给sql服务器的输入数据构造可执行的sql代码

数据库未做相应的安全配置

3.如何寻找sql漏洞?

识别web应用中所有输入点

了解哪些类型的请求会触发异常?(特殊字符”或')

检测服务器响应中的异常

4. 如何进行sql注入攻击?

数字注入:

Select * from tablename where id=1 or 1=1;

字符串注入:

Mysql的注释特性:

SQL注入如何做预防措施

#与--号后面的被注释掉,无论密码输入的是什么,都能正确查询。请点击此处输入图片描述

5. 如何预防sql注入?

严格检查输入格式:is_numeric(var),tp5的validate验证,字符串的注入采用正则看是否在[A-Za-z]之间

转义:addslashes(str)、

MysqLi_escape_string()函数进行转义

6.MysqLi的预编译机制

SQL注入如何做预防措施

参数化绑定

参数化绑定,防止 sql 注入的又一道屏障。PHP MysqLi 和 PDO 均提供这样的功能。比如 MysqLi 可以这样去查询

SQL注入如何做预防措施

PDO 的更是方便,比如:

SQL注入如何做预防措施

以上是“sql注入如何做预防措施”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程之家行业资讯频道!

相关文章

这篇文章主要介绍“hive和mysql的区别是什么”,在日常操作中...
这篇“MySQL数据库如何改名”文章的知识点大部分人都不太理解...
这篇文章主要介绍“mysql版本查询命令是什么”的相关知识,小...
本篇内容介绍了“mysql怎么修改字段的内容”的有关知识,在实...
这篇文章主要讲解了“mysql怎么删除unique约束”,文中的讲解...
今天小编给大家分享一下mysql怎么查询不为空的字段的相关知识...