[发明专利]基于代理实现对MySQL协议认证过程中用户名和密码替换的方法有效
申请号: | 202110822908.0 | 申请日: | 2021-07-21 |
公开(公告)号: | CN113630387B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 熊鑫;庄恩贵;朱燚 | 申请(专利权)人: | 北京景安云信科技有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40 |
代理公司: | 北京翔石知识产权代理事务所(普通合伙) 11816 | 代理人: | 刘翔 |
地址: | 100000 北京市海淀区天*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 代理 实现 mysql 协议 认证 过程 中用 户名 密码 替换 方法 | ||
本发明公开了基于代理实现对MySQL协议认证过程中用户名和密码替换的方法,包括以下步骤:先抓取握手过程中的第一个数据包;再抓取客户端登录数据包;判断所述客户端登录数据包内是否包含密码加密串;若所述客户端登录数据包内包含密码加密串,则拦截服务端返回的认证结果数据包;若所述客户端登录数据包内不包含密码加密串,则拦截下一次服务端返回的数据包;拦截客户端发送的验证数据包,替换该数据包中的密码加密串;拦截服务端返回的认证结果数据包。可以在不创建大量数据库账户的情况下,对使用者进行身份区分和记录。可以对数据库连接账户进行保护,可以有效避免真实数据库账户泄漏的风险。
技术领域
本发明涉及数据库技术领域,具体领域为基于代理实现对MySQL协议认证过程中用户名和密码替换的方法。
背景技术
堡垒机,即在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段监控和记录运维人员对网络内的服务器、网络设备、安全设备、数据库等设备的操作行为,以便集中报警、及时处理及审计定责。但现有的堡垒机技术都是基于数据库本身实现的数据库账号发放,灵活性不足,对数据库用户的权限控制不到位,常常出现分配一个账号会被多人使用,发生问题时很难定位到操作人,也无法对使用的账户的用户名密码进行篡改,导致数据库账户和密码有泄漏的风险,为了效避免真实数据库账户泄漏,并且可以在不创建大量数据库账户的情况下,对使用者进行身份区分和记录,我们提供一种基于代理实现对MySQL协议认证过程中用户名和密码替换的方法。
发明内容
本发明的目的在于提供基于代理实现对MySQL协议认证过程中用户名和密码替换的方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:基于代理实现对MySQL协议认证过程中用户名和密码替换的方法,包括以下步骤:
步骤一、应用程序签发一个与真实数据库账户有隐射关系的假用户名和密码对;
步骤二、先抓取握手过程中的第一个数据包;
步骤三、再抓取客户端登录数据包;
步骤四、判断所述客户端登录数据包内是否包含密码加密串;
步骤五、若所述客户端登录数据包内包含密码加密串,则拦截服务端返回的认证结果数据包;
步骤六、基于所述步骤四,若所述客户端登录数据包内不包含密码加密串,则拦截下一次服务端返回的数据包;
步骤七、基于所述步骤六,拦截客户端发送的验证数据包,替换该数据包中的密码加密串;
步骤八、基于所述步骤七,拦截服务端返回的认证结果数据包。
优选的,所述步骤二中所述第一个数据包为服务端发送的问候包,所述第一个数据包的数据结构包括Packet Length、Packet Number、Protocol、Version、Thread ID、SaltPart1、Server Capabilities、Server Language、Extend Status、Extended ServerCapabilibies、Authentication Plugin Length、Payload、Salt Part2和AuthenticationPlugin。
优选的,所述Server Capabilities中第2个字节的第5位表示是否支持SSL认证,将Server Capabilities[1]与0xf7进行与操作后转发至客户端;
所述Salt Part1和所述Salt Part2合并作为加密Salt缓存,用于密码加密串的替换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京景安云信科技有限公司,未经北京景安云信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110822908.0/2.html,转载请声明来源钻瓜专利网。