webshell應急排查方案

zhcunique發表於2021-03-29

一、全面掃描,隔離webshell,但需先判斷webshell檔案的程式碼內容,以免誤刪業務檔案。

二、手動全面查詢 .jsp .asp等webshell,以及異常的程式埠情況,Linux下查詢方法如下:

必須先判斷webshell檔案的程式碼內容,以免誤刪業務檔案!

查詢命令:

php 檔案

find  網站目錄/* -type f -name "*.php"  |xargs grep "eval"

find 網站目錄/* -type f -name "*.php” |xargs grep "base64_decode"

find    網站目錄/* -type f -name "*.php" |xargs grep "@$"

jsp 檔案

find 網站目錄/* -type f -name "*.jsp" |xargs grep "getRuntime"

find 網站目錄/* -type f -name "*.jsp" |xargs grep "exec"

find 網站目錄/* -type f -name "*.jsp" |xargs grep "AES"

jspx 檔案

find 網站目錄/* -type f -name "*.jspx" |xargs grep "getRuntime"

find 網站目錄/* -type f -name "*.jspx" |xargs grep "exec"

find 網站目錄/* -type f -name "*.jspx" |xargs grep "AES"

查詢異常埠程式情況:

Linux :netstat -anltp|grep bash,

tcp 0     0 192.168.230.130:45530  遠端IP:埠 ESTABLISHED 2133/bash

bash 程式通常用於本地互動,現在與遠端地址建立連線,十分可疑。

Windows

netstat -ano 檢視目前的網路連線 ,定位可疑的 ESTABLISHED ,根據 netstat 定位出的 pid,再透過 tasklist 命令進行程式定位 tasklist | findstr “PID”

三、分析應用日誌、中介軟體日誌、系統操作

得到應用日誌與中介軟體日誌,查詢異常的檔案上傳,檔案寫入操作。

系統操作方面:

Linux

檢視歷史操作命令,history

檢視計劃任務,cat /etc/crontab

檢視登入行為

lastb # 登入失敗日誌或者是/var/log/faillog

who /var/log/wtmp # 登入日誌 另外可以 last -f /var/run/utmp

cat /var/log/lastlog  # 最後的登入日誌

cat /var/log/cron  # 計劃任務日誌

grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -nr | more  # 檢視root賬戶登入嘗試

 grep "Accepted" /var/log/auth.log | awk '{print $11}' | sort |uniq -c | sort -nr | more # 檢視登入成功日誌資訊

檢視異常賬戶:cat /etc/passwd

Windows

異常啟動項:單擊開始選單 >【執行】,輸入 msconfig,檢視是否存在命名異常的 啟動專案,是則取消勾選命名異常的啟動專案,併到命令中顯示的路徑刪除檔案。

計劃任務:單擊【開始】>【設定】>【控制皮膚】>【任務計劃】,檢視計劃任務屬 性,便可以發現木馬檔案的路徑。

服務: a、檢視使用者目錄,新建賬號會在這個目錄生成一個使用者目錄,檢視是否有新建使用者目錄。 Window 2003  C:\Documents and Settings Window 2008R2  C:\Users\ b、在伺服器各個目錄,可根據資料夾內檔案列表時間進行排序,查詢可疑檔案

四、檢視系統版本、應用、元件版本資訊

檢視應用系統所涉及的中介軟體、元件版本是否為安全版本,是否存在已知公開漏洞,是否存在控制檯外網暴露,且使用弱密碼情況。

五、使用流量裝置定位webshell

菜刀連線流量特徵:

JSP 類WebShell連結流量:該流量是WebShell連結流量的第一段連結流量,其中特徵主 要在i=A&z0=GB2312,菜刀連結JSP木馬時,第一個引數定義操作,其中引數值為A-Q, 如i=A,第二個引數指定編碼,其引數值為編碼,如z0=GB2312,有時候z0後面還會接著 又z1=引數用來加入攻擊載荷。注:其中引數名i、z0、z1這種引數名是會變的,但是其 引數值以及這種形式是不會變得,最主要就是第一個引數值在A-Q,這種是不變的。

ASP 類webshell流量特徵:

第一:“Execute”,Execute函式 用於執行傳遞的攻擊payload,這是 必不可少的,這個等同於php類中 eval函式;

  第二:OnError ResumeNext,這 部分是大部分ASP客戶端中必有的流量,能保證不管前面出任何錯,繼續執行以下程式碼。

第三:Response.Write和 Response.End是必有的,是來完善整個操作的。

菜刀的流量傳送資料包都明顯的包含caidao=……欄位(PHP與ASP特徵大致相同)。

蟻劍連線流量特徵:

_0x 開頭的引數名,後面為加密資料的資料包可識別為蟻劍的流量特徵。

流量中含有:@ini_set(“display_errors”,”0″);欄位。

冰蠍連線流量特徵:

1 、返回包中含有一段看不懂的密文,不是很長,一般就幾十位:


2、傳送流量為一大串看不懂的密文,很長

3、返回包中亂碼

4、connection欄位為keep-alive

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69994536/viewspace-2765422/,如需轉載,請註明出處,否則將追究法律責任。

相關文章