zoukankan      html  css  js  c++  java
  • 服务器由于redis漏洞导致被挖矿怎么办?

    最近在使用阿里云的云服务器时,经常会收到下面这种信息。

    云盾态势感知系统检测到您的服务器:x.x.x.x出现了紧急安全事件:Redis蠕虫对外发起网络扫描 ,建议您立即登录云盾-态势感知控制台查看详情和处理。

    您的云服务器(x.x.x.x)由于被检测到对外攻击,已阻断该服务器对其它服务器端口(TCP:6379)的访问,阻断预计将在2018-08-06 16:01:23时间内结束,请及时进行安全自查。

    于是登录查看了监控,明明没起什么服务,但是cpu使用率却飙到%90多,网络消耗也一直有。查看了cpu的使用情况:

    可以看到有两个进程占用了几乎全部的cpu,我们把它kill掉,然后把tmp下的两个文件也rm掉,cpu使用率马上就下降了,但是不一会cpu使用率又上了,Xsheel又卡了。。。看了一下这两个进程居然还在这。

    我们先看一下服务器上运行了哪些定时任务:

    /etc/crontab

    /etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本,进入后发现除了有redis aof的数据恢复命令以外,还有两行代码,问题的根源就在这两行上,它会从一个美国的地址下载文件。我们需要把它删了。

     

    /var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的crontab任务对应的文件就是/var/spool/cron/tom。一般一个用户最多只有一个crontab文件。进入root用户的任务发现有以下任务,果然就是它。

    关于定时任务可以查看这篇博文:https://www.cnblogs.com/MrSong97/p/12626284.html

    现在已经知道问题了,因为redis没有设置密码或密码太过简单缘故,导致被写入密钥,在cron的文件里被写入了命令。

    解决方法:

    1,redis设置复杂一点的密码,更改默认的端口。

    2,服务器设置防火墙,禁用ip

    3,清除掉被写入的脚本,或直接停掉cron服务

  • 相关阅读:
    怎么判断是从微信浏览器打开还是手机自带的浏览器(其他浏览器)打开?
    h5移动端页面强制横屏
    苹果的正常显示,安卓的不知道写了什么白屏了
    截取地址栏的最后一个参数
    检测手机号码的正则表达式
    js判断是不是在微信浏览器打开?
    LArea插件选中城市,确定之后又很难再次选择城市?
    display: inline-block 布局
    调试
    时间
  • 原文地址:https://www.cnblogs.com/MrSong97/p/12626276.html
Copyright © 2011-2022 走看看