概述
原理分析:
1.Mysql5之后支持触发器,并且在创建触发器后会自动在/var/lib/mysql目录下生成TRG以及TRN文件(Linux下)。
例如,创建如下触发器:
在/var/lib/mysql目录下回生成t.TRG以及t_trigger.TRN文件,内容如下
可以看到t.TRG文件中通过DEFINER来将触发器“绑定”到该触发器的创建用户上,并在执行时拥有该用户的权限。
2.利用mysql用户的file权限(文件读写权限),直接添加触发器TRG以及TRN文件,使其“绑定”到mysql默认管理员root@localhost用户上,触发器文件内容为提升mysql用户权限SQL语句。
3.利用之前发现的栈溢出漏洞来刷新服务器配置使得触发器文件可以被识别,并且在触发器执行时具有root@localhost的权限,以此来提升mysql用户权限。
预防措施:
1.由于该提权方式可以被远程利用,所以管理员应当关闭Mysql远程管理方式,只允许本地用户连接。
2.本着最小权限原则,应当为连接用户配置最小权限,不要分配all,file等高危权限。
以下为exp部分关键代码,经测试5.5版本受影响:
最后
以上就是温暖冰淇淋为你收集整理的mysql提权原理_防范Mysql利用触发器权限漏洞提权原理的全部内容,希望文章能够帮你解决mysql提权原理_防范Mysql利用触发器权限漏洞提权原理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复