mysql在查数据时在字段名处用逻辑运算符连接多个字符串的回显特征

<1>逻辑运算符与查询关键字

[1]逻辑运算符与查询关键字执行规律

1.探索的前提逻辑与思路

举个例子来说,将sql语句

select 【查询关键字】 from 【库、表名】

中的【库、表名】赋值为users。语句变成如下样子。

select 【查询关键字】 from users

查询关键字与逻辑运算符(and、or)联合使用,那么此时有以下几种情况:

  1. 逻辑运算符是or还是and
  2. 逻辑运算符左右两边的真值是什么
  3. 逻辑运算符左右两边的语句是字符还是数值

从以上三点可以推断出有32种情况,下面举例说明几种代表性的情况,最后总结其中的规律


值得一提的是&&、||与and、or都可以在这些情况中一样的作用,同时还要明白一点使用联合查询之后sql返回的结构要理解为一个二维数组。


2.与逻辑运算符在左右不同真值情况下的探索
  • 1.左真右真

在这里插入图片描述

  • 2.左真右假

在这里插入图片描述

  • 3.左假右真

在这里插入图片描述

  • 4.左假右假

在这里插入图片描述


由此可见与逻辑运算符左右两边都是“真”时,逻辑运算表达式可以带到sql语句中用“真”理解,否则用“否”理解。


3.或逻辑运算符在左右不同真值情况下的探索
  • 1.左真右真

在这里插入图片描述

  • 2.左真右假

在这里插入图片描述

  • 3.左假右真

在这里插入图片描述

  • 4.左假右假

在这里插入图片描述


由此可见或逻辑运算左右两边只要一方为真时,逻辑运算表达式可以被理解为“真”带入到sql语句中理解,否则按照“否”带入sql语句理解。


4.运算符判断语句是字符时字符不同的情况下真值理解
  • 1.当字符是语句后面表或库中的关键字时

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 2.当字符不是语句后面表或库的关键字时
    在这里插入图片描述

!!!!同样是字符串,为什么不是后面库表中的关键字时,语句直接报错,而有的关键字的作用和非零数字相同,而有些则和数字零的作用相同?!!!!带着问题往下看吧。。。


5.逻辑运算符与查询关键字规律总结

【1】.由上面对与运算符或运算符的探索可以总结出的是,在查询关键字处用逻辑运算符的理解可以根据逻辑运算符的一般规律理解。


example:“假”or“假”返回对应行数个“0”,“真”or“假”返回对应行数个“1”。


【2】上面对(运算符左右两边是字符)的探索可以总结出

      1.字符如果是后面表或库中的关键字,且搜索关键字在库或表中对应的值是数字则可以被当作带入到逻辑语句的理解之中。
      2.如果字符是表或库中的关键字,但对应的值是字符,则可以被当作带入执行
      3.如果搜索关键字不是表或库中的关键字的,则不能被当作,应当作错误,执行之后会直接报错。


example:举例说明什么是对应的值,如下图字符id是users里的关键字,且对应的值是数字,而username和password也是users里的关键字但是对应的值是字符。


在这里插入图片描述

[2]在ctf中举例应用(逻辑运算符与查询关键字)

队逻辑运算符在结合查询关键字执行规律的应用可以看我另一篇博客,看easysql那道题(逻辑运算符与查询关键字组合规律的应用)

<2>逻辑运算符与order by

在这种情况下逻辑运算符的理解就不像之前的那么麻烦,始终记住的一点时当语句的形式如以下形式时

select * from users order by 2 and (or) 1=1;

order by都会被忽略不执行


example:在这里插入图片描述

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SuperForming

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值