sql注入漏洞

发布时间 2023-09-09 23:53:54作者: 折翼的小鸟先生

1.0 什么是sql注入

sql注入第一次是在1998年著名黑客杂志phack第54期上提出的

sql注入是服务器端未严格校验客户端发送的数据,导致服务器端sql语句被恶意修改并成功执行

的行为

1.1 sql的分类

sql注入按请求方法分为get型和post型。

按照sq;数据类型分类可分为整型注入,和字符注入。

其他的数据类型:

报错注入:后台的sql语句执行了错误的内容,反回到了前台,叫做爆破注入

双注入:用到了两个select被称作双注入

盲注:盲注是在sql语句破坏后台时,不显示具体的错误,无法看见数据库的报错信息,这

种注入叫做盲注。盲注分为布尔盲注和时间盲注,布尔盲注是后台返回true或者false判断注入

是否成功,时间盲注是在注入语句中运行sleep程序,通过sleep函数是否执行成功来判断是否注入成功

cookie注入:就是在cookie中进行注入

user-Agent注入:就是在user-Agent中进行注入

1.2 整形注入的流程

1 判断是否有注入,半段是否未严格校验

具体方式 (1)检测可控参数的改变是否会改变显示结果

​ (2)是否能顺利报错,在报错中显示局部代码,根据局部代码判断注入类型

​ (3) 查看sql语句是否可以不报错

2 什么类型的注入

3 语句是否能够被恶意修改

4 是否能成功执行

具体的注入过程

在查询结果后用uion拼接select查询语句,注意,这里必须要用uion连接,如果直接使用;;

连接,则会只显示第一个返回集或者直接报错。

对具体拼接见[此文](SQL注入:#和--的作用 - 不解风情的帅帅男 - 博客园 (cnblogs.com))