SQL注入——基础知识

SQL注入——基础知识

1.SQL的简介

  SQL (结构化查询语言) 是用于管理关系数据库管理系统(RDBMS)。 SQL 的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。

  虽然存在着不同版本的SQL语言,但是为了ANSI标准的兼容性,它们必须以相似的方式来支持一些主要的命令(SELECT、UPDATE、DELETE、INSERT、WHERE 等等),当然除了这些标准外,大部分SQL数据库都拥有它们自己的专有扩展。

2.SQL注入的定义

  SQL 注入是一种非常常见的数据库攻击手段,是一种通过操作输入来修改后台SQL语句达到代码执行进行攻击目的的技术。

3.SQL注入的原理

  web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句],在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。

  (简单来说就是利用查库的变量伪造出数据库的语句进行增删改查的操作,一般查的实现比较多,所以能够泄漏得到数据库的信息)

4.SQL注入的种类

  1. 注入手法分类:
    • 联合查询注入
    • 报错型注入
    • 布尔型注入
    • 延时注入
    • 堆叠注入
  2. 数据类型分类:
    • 字符型
    • 数值型
  3. 注入位置分类:
    • GET数据(地址栏)
    • POST数据(输入框)
    • HTTP头部
    • Cookie数据

5.SQL注入的危害

  1. 访问数据库数据,盗取信息
  2. 对数据库进行增删改查
  3. 如果网站目录存在写入权限,可以写入网页木马
  4. 提权
  5. 等等


SQL注入——基础知识
https://one-null-pointer.github.io/2022/08/04/SQL基础知识/
Author
liaoyue
Posted on
August 4, 2022
传送口