首页 > 数据库 >SQL注入基础

SQL注入基础

时间:2023-03-13 19:34:08浏览次数:30  
标签:数据库 表名 基础 SQL .-- id select 注入

sql常见语句:

1.select(查) * from 表名:select * from 表名

2.insert into(增) :insert into 表名 values(value1, value2…)

3.delete(删除):delete from 表名 where 字段名=value;

                            drop database 库名;

4.update(改):update 表名 set 字段名1=value1, 字段名2=value2;

5.--查询当前操作的数据库

show database;

同上:

SELECT * FROM information_schema.SCHEMATA;

6.--查询当前mysql版本

   select version();

7.--查询当前mysql登录的用户

  select user();

8.--当前时间

  select now()

9.-- 查看数据路径

  SELECT @@datadir;

10.--  安装路径

  SELECT @@basedir;

系统库释意:

一、information_ schema库:是信息数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息,比如数据库名,数据库表,表字段的数据类型与访问权限等。Web渗透过程中用途很大。

       1.SCHEMATA表:提供了当前MySQL实例中所有的数据库信息,show databases 结果取之此表

       2.TABLES表:提供了关于数据中表的信息

       3.COLUMNS表:提供了表中的列信息,详细描述了某张表的所有列以及每个列的信息。

二、mysql库: MySQL的核心数据库,主要负责存储数据库的用户、权限设置、关键字等mysq|自己需要使用的控制和管理信息。

三、performance_ schema 库:内存数据库,数据放在内存中直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级,

  将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能。

四、sys库:通过这个数据库数据库,可以查询谁使用了最多的资源基于IP或是用户。哪张表被访问过最多等等信息。

 

sql注入步骤:

  1. 判断是否可以注入

    例如:在后面加个 ' 单引号看是否报错,或者 ‘ and 1=2 --+ 主要是看有没有报错,有报错就说明存在sql注入

  1. 判断数据库的类型-数据库的指纹
  2. 获取库名
  3. 获取表名
  4. 获取列名
  5. 获取数据

sql注入的分类

根据注入位置数据类型可将SQL注入分为两类:数字型和字符型

例如:

       数字型:select * from table where id = 用户输入id

例如:
       字符型:select * from table where id = '用户输入id'

       通过url中修改对应的ID值,为正常数字,大数字,字符(单引号、双引号、双单引号、括号)、反斜杠\来探测URL中是否存在注入点

 

标签:数据库,表名,基础,SQL,.--,id,select,注入
From: https://www.cnblogs.com/Wesuiliye/p/17212541.html

相关文章

  • java基础-总结案例
    利用java基础,实现如图所示的功能案例涉及要点:#程序基本概念变量数据类型#流程控制顺序选择循环......
  • java基础-一维数组
    1、什么是数组:数组是一个变量,存储是相同数据类型的一组数据,声明数组,就是在内存中划分一串连续的空间注意:数组一经定义,大小就确定了,不可以在此基础上再增加......
  • java基础-排序算法&&二维数组
    1、冒泡排序--升序原理:每次比较相邻两数小的交换到前面每轮结束后最大的数交换到最后口诀:冒泡排序速记口诀(升序)n个数字来排队......
  • Docker搭建MySQL集群
    采用MySQL架构PerconaXtraDBCluster1.安装PXC集群#用pull拉PXC5.7.20版本[root@localhost~]#dockerpullpercona/percona-xtradb-cluster:5.7.205.7.20:Pulli......
  • SQL优化
    mysql中百万级数据查询sql优化https://www.likecs.com/show-306178654.html本次的优化在于mysql的SQL_CALC_FOUND_ROWS函数,这个是什么可以自行查阅下相关资料,......
  • CSS 基础
    cascadingstylesheets层叠样式表导入方式优先级高到低↓1.行内样式<div**style**="color:red;margin:100px100px">2.内部样式<**style**>......
  • SQL SERVER PROFILER监听指定数据库
    SQLSERVERPROFILER监听指定数据库SQLServerProfiler监听指定数据库查询数据库IDSQLServerProfiler工具启动监听指定id的数据库 SQLSERVERPROFILER......
  • 【数字化运营】PagerDuty平台与上海道宁帮助您的数字基础设施中自动化、编排和加速响
     PagerDutyOperationsCloud是您在关键时刻的行动平台在您的数字基础设施中自动化、编排和加速响应  PagerDuty从可观察性到云基础设施再到客户服......
  • mark:通过实现从mysqldump全量导出中导出某个库的所有行
    环境python3 mysqldump_export_one_db.py#encoding=utf-8'''用于mysqldump--all-databases...全库导出数据后,需要从SQL文件中抽取某个库的信息生成新SQL文件,如果......
  • mysql查询所有表+表结构
    selecttable_nametableName,engine,table_commenttableComment,table_collationtableCollation,create_timecreateTimefrominformation_schem......