mysql修改版本号

处理扫描器扫出的漏洞,基本有四种方法:一是升级软件包到新版本(包括打补丁和整个替换升级),二是修改banner配置项(包括禁用banner和修改banner内容),三是添加白名单(包括主机防火墙和软件白名单),四是强制替换版本字符串。

具体到mysql,升级是比较麻烦的各种配置选项可能不兼容,多次探究基本没有确认没有banner配置项,添加白名单要整理比较费劲,今天试了强制替换版本字符串发现可行。

 

1.使用telnet确认当前banner中显示的版本号

 

2.使用strings查看/usr/sbin/mysqld中包含版本号的字符串(可选)

strings /usr/sbin/mysqld | grep 5.5.55

在第一步中查到的版本号为5.5.55所以我们这里grep 5.5.55,具体改为自己的版本号即可

 

3.使用sed强制替换版本号

sed -i 's/5.5.55/5.8.55/' /usr/sbin/mysqld

这里我们只需要替最开头查到的那个5.5.55后边/export开头的那些都不用管

 

4.重新启动msyql再次查看banner中的版本号

service mysql restart
telnet 192.168.220.128 3306

可以看到banner中的版本号已成功修改由5.5.55变为5.8.55。使用nmap确认如下图

 

5.说明

①在mysql5.5中启停使用的是server mysql start/stop而在之后的版本中使用的是service mysqld start/stop,由于我这里是5.5版本,开始没注意一直去改/usr/bin/mysql而不成功

后来查看rpm安装包有释放mysqld时,才想起service后接的其本质是/etc/init.d下的脚本而不是程序名--虽然一般来说这两者名称一般一样--这才去找/usr/sbin/mysqld修改

②还是一样要强调,初步看来这样强制修改后程序运行正常,但没经长久验证对功能和软件升级是否有影响,所以仅供参考

posted @ 2022-02-23 15:40  caibutou  阅读(617)  评论(0编辑  收藏  举报