博客
关于我
复现goby——CVE-2012-2122(Mysql 身份认证绕过)
阅读量:477 次
发布时间:2019-03-06

本文共 616 字,大约阅读时间需要 2 分钟。

漏洞介绍

当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较。由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。根据公告,大约256次尝试就能成功猜测密码。这意味着,只要知道用户名,攻击者就可以通过不断尝试直接登录SQL数据库。


影响版本

此漏洞影响了MariaDB和MySQL的多个版本,具体包括:

  • MariaDB版本:5.1.61及更低版本
  • MySQL版本:5.1.63及更低版本

修复后的版本包括:

  • MariaDB 5.1.62及更高版本
  • MySQL 5.1.63及更高版本

漏洞复现

要利用这个漏洞,首先需要了解如何利用goby工具进行攻击。以下是复现步骤:

(一)利用goby自带的漏洞EXP进行

  • 首先,确保已经获取了目标数据库的用户名和密码信息。
  • 使用goby工具进行漏洞利用,通过发送特定的SQL语句来绕过认证机制。
  • 由于goby自带了针对这个漏洞的EXP脚本,可以直接运行goby check命令来检测漏洞是否存在。
  • 如果漏洞存在,goby将返回成功的认证结果,从而允许攻击者访问目标数据库。

  • 总结

    这个漏洞的关键在于密码比较逻辑的实现方式。由于memcmp()函数返回的值被错误地解释为认证成功的标志,导致即使密码不正确也能通过认证。攻击者只需知道用户名,就可以利用这个漏洞进行SQL注入攻击。因此,建议及时升级到已修复的版本,并启用强密码策略。

    转载地址:http://tkabz.baihongyu.com/

    你可能感兴趣的文章
    mysql列转行函数是什么
    查看>>
    mysql创建函数报错_mysql在创建存储函数时报错
    查看>>
    mysql创建数据库和用户 并授权
    查看>>
    mysql创建数据库指定字符集
    查看>>
    MySql创建数据表
    查看>>
    MySQL创建新用户以及ERROR 1396 (HY000)问题解决
    查看>>
    MySQL创建用户与授权
    查看>>
    MySQL创建用户报错:ERROR 1396 (HY000): Operation CREATE USER failed for 'slave'@'%'
    查看>>
    MySQL创建索引时提示“Specified key was too long; max key length is 767 bytes”
    查看>>
    mysql初始密码错误问题
    查看>>
    mysql判断某一张表是否存在的sql语句以及方法
    查看>>
    mysql加入安装策略_一键安装mysql5.7及密码策略修改方法
    查看>>
    mysql加强(1)~用户权限介绍、分别使用客户端工具和命令来创建用户和分配权限
    查看>>
    mysql加强(3)~分组(统计)查询
    查看>>
    mysql加强(4)~多表查询:笛卡尔积、消除笛卡尔积操作(等值、非等值连接),内连接(隐式连接、显示连接)、外连接、自连接
    查看>>
    mysql加强(5)~DML 增删改操作和 DQL 查询操作
    查看>>
    mysql加强(6)~子查询简单介绍、子查询分类
    查看>>
    mysql加强(7)~事务、事务并发、解决事务并发的方法
    查看>>
    mysql千万级大数据SQL查询优化
    查看>>
    MySQL千万级大表优化策略
    查看>>