博客
关于我
复现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/

    你可能感兴趣的文章
    Netty 高性能架构设计
    查看>>
    Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
    查看>>
    Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
    查看>>
    netty--helloword程序
    查看>>
    netty2---服务端和客户端
    查看>>
    【Flink】Flink 2023 Flink易用性和稳定性在Shopee的优化-视频笔记
    查看>>
    Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
    查看>>
    netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
    查看>>
    netty——Channl的常用方法、ChannelFuture、CloseFuture
    查看>>
    netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
    查看>>
    netty——Future和Promise的使用 线程间的通信
    查看>>
    netty——Handler和pipeline
    查看>>
    Vue输出HTML
    查看>>
    netty——黏包半包的解决方案、滑动窗口的概念
    查看>>
    Netty中Http客户端、服务端的编解码器
    查看>>
    Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
    查看>>
    Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
    查看>>
    Netty中的组件是怎么交互的?
    查看>>
    Netty中集成Protobuf实现Java对象数据传递
    查看>>
    netty之 定长数据流处理数据粘包问题
    查看>>