MySQL语法中有哪些可以利用的漏洞?

本文阅读 3 分钟
首页 代码,Java 正文

<font color="orange">「作者主页」:</font>士别三日wyx
<font color="orange">「作者简介」:</font>CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
<font color="orange">「专栏简介」:</font>此文章已录入专栏《MySQL数据库快速入门》

img

下面这条SQL的作用是查询数据库的所有用户

select user from mysql.user;

在SQL结尾处添加分号可以正常执行: img 不添加分号则不能被执行: img 利用分号,可以同时执行多条SQL语句: img SQL注入中经常利用这一特性进行渗透,比如堆叠注入,就是利用分号来同时执行多条语句,来获取网站不想给用户看的那些数据。

还是上面那条SQL,当我们将SQL中的内容全部或部分换成大写时,执行结果不会发生变化: img SQL注入中常常利用这一特性来绕过,即大小写绕过。 比如有些网站过滤了 select 关键字,我们可以使用 SELECT 或 Select等不同的大小写形式来绕过这些过滤条件。

MySQL允许程序员在SQL语句中标注内容,也就是注释。

如果你想让别人看懂这条SQL语句的作用,可以在SQL中添加注释。

MySQL对注释的使用做了一些规范:

3.1 单行注释

单行注释只能在一行的范围内使用。

MySQL提供了两种单行注释的规范:-- 注释内容 和 # 注释内容

我们还是拿上边的SQL来举例,注释的内容不会被执行: img SQL注入中经常利用注释来对网站进行渗透,比如万能账号: img

3.2 多行注释

除了单行注释,MySQL还提供了一种多行注释:/注释内容/

与单行注释不同的是,多行注释可以穿插在SQL语句中使用,而单行注释则会报错,比如下面这样: img SQL注入常使用多行注入来绕过空格。

比如,某网站过滤了参数中的空格,我们就可以使用注释来替代空格: img 感谢你的点赞、收藏、评论,我是三日,祝你幸福!

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/wangyuxiang946/article/details/123127374
-- 展开阅读全文 --
BUUCTF Web [极客大挑战 2019]Knife
« 上一篇 06-24
安全面试之XSS(跨站脚本攻击)
下一篇 » 07-24

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复