MySQL约束攻击的原理和复现方式

 更新时间:2023年11月13日 08:37:22   作者:bouIevard  
这篇文章主要介绍了MySQL约束攻击的原理和复现方式,具有很好的参考价值,希望对大家有所帮助,

MySQL约束攻击的原理和复现

在MySQL数据库中,数据是有字符长度限制的。

对于下面这个数据库:

 username和password的限制都是设置为15个字符。

当尝试注册一个超过15字的字符串时,系统就会报错。

这是由于在MySQL环境变量sql_mode中添加了STRICT_TRANS_TABLES字样,规定了严格模式。

但如果有些数据库没有设置严格模式,系统就会对输入的非法字符串进行转换,

出现了SQL约束攻击

在SQL注册的时候,是不能够注册已经存在的用户名的(即使在后面加空格也不可以),但是可以考虑创建一个名字叫‘admin 1’的超长字符串用户,在SQL比对时,它显然是和admin不同的(因为末尾有一个1,所以空格是有效的),但是在非严格模式下,SQL会去掉后面多余的字符,将“admin ”注册到用户中,

数据库就变成了这样:

发现数据库中出现了两个admin,然后再使用admin、mypass登陆,由于比对的时候,末尾的空格是被忽略掉的,所以就成功登入了admin。

总结

如有错误或未考虑完全的地方,望不吝赐教

相关文章

  • 使用canal监控mysql数据库实现elasticsearch索引实时更新问题

    使用canal监控mysql数据库实现elasticsearch索引实时更新问题

    这篇文章主要介绍了使用canal监控mysql数据库实现elasticsearch索引实时更新,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • MySQL表级锁使用说明

    MySQL表级锁使用说明

    这篇文章主要为大家介绍了MySQL表级锁使用说明,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • MYSQL SET类型字段的SQL操作知识介绍

    MYSQL SET类型字段的SQL操作知识介绍

    本篇文章是对MYSQL中SET类型字段的SQL操作知识进行了详细的分析介绍,需要的朋友参考下
    2013-07-07
  • MySQL数据库所在服务器磁盘满了的故障分析和解决方法

    MySQL数据库所在服务器磁盘满了的故障分析和解决方法

    这篇文章主要给大家介绍了MySQL数据库所在服务器磁盘满了的故障分析和解决方法,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-02-02
  • 关于mysql查询字符集不匹配问题的解决方法

    关于mysql查询字符集不匹配问题的解决方法

    这篇文章主要给大家介绍了关于mysql查询字符集不匹配问题的解决方法,文中通过示例代码给大家介绍的非常详细,对同样遇到这个问题的朋友们具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-08-08
  • Windows 10系统下彻底删除卸载MySQL的方法教程

    Windows 10系统下彻底删除卸载MySQL的方法教程

    mysql数据库的重新安装是一个麻烦的问题,很难卸除干净,下面这篇文章主要给大家介绍了关于在Windows 10系统下彻底删除卸载MySQL的方法教程,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • Window下如何恢复被删除的Mysql8.0.17 Root账户及密码

    Window下如何恢复被删除的Mysql8.0.17 Root账户及密码

    这篇文章主要介绍了Window下如何恢复被删除的Mysql8.0.17 Root账户及密码,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • MySQL数据库修复方法(MyISAM/InnoDB)

    MySQL数据库修复方法(MyISAM/InnoDB)

    这篇文章主要为大家整理了7条修复MySQL数据库的方法,当简单的重启对数据库不起作用,或者有表崩溃时,需要的朋友可以参考下
    2014-06-06
  • SQL INSERT及批量的几种方式总结

    SQL INSERT及批量的几种方式总结

    SQL提供了INSERT语句,用于将一行或多行插入表中,下面这篇文章主要给大家介绍了关于SQL INSERT及批量的几种方式,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • 详细讲述MySQL中的子查询操作

    详细讲述MySQL中的子查询操作

    这篇文章主要介绍了详细讲述MySQL中的子查询操作,文中也给出了具体的代码实例讲解,需要的朋友可以参考下
    2015-04-04

最新评论