SQL注入

一、原理

WEB应用程序对用户输入的数据没有过滤或者过滤的不严谨,把用户输入的数据当作SQL语句带入到数据库中去执行,导致恶意SQL语句被执行

二、分类

1、从反馈结果来分

回显型、盲注

2、从攻击手法上来分

联合查询注入、堆叠注入、报错注入、盲注(布尔盲注、时间盲注)

三、防御

1、对用户输入的内容进行转义(PHP中addslashes()、mysql_real_escape()函数)
2、限制关键字的输入(PHP中preg_replace()函数正则替换关键字),限制输入的长度
3、使用SQL语句预处理,对SQL语句首先进行预编译,然后进行参数绑定,最后传入参数
4、部署WAF

posted @ 2022-04-01 22:55  xiugo  阅读(58)  评论(0)    收藏  举报