世上只有一種英雄主義,就是在認(rèn)清生活真相之后,依然熱愛生活。by羅曼羅蘭
在橫向移動過程,攻擊者可能會利用抓取到的明文密碼,或者通過其他途徑獲取的憑證,使用RDP登錄其他主機(jī)進(jìn)行橫向移動。此外,攻擊者也可能通過暴力破解RDP登錄口令的方式,登錄目標(biāo)主機(jī)。
下面先對使用RDP登錄產(chǎn)生的事件ID進(jìn)行簡單介紹。
4624— 成功登錄
4625 —失敗的登錄
4634/4647 — 成功注銷
4648— 使用顯式(explicit)憑證登錄(RunAs)
4672 — 用戶使用超級用戶權(quán)限的登錄 (Administrator)
4720 — 賬戶創(chuàng)建
我們經(jīng)常在登錄事件里面看到登錄類型,不同的登錄類型含義如下:
登錄類型代碼 | 說明 |
2 | 通過控制臺(console)登錄(鍵盤,KVM服務(wù),或virtual客戶端) |
3 | 網(wǎng)絡(luò)登錄(net use,powershell等) |
4 | Batch Logon—通常由計(jì)劃任務(wù)使用 |
5 | Windows Service Logon |
7 | 使用憑證鎖屏或者解鎖屏幕;RDP會話重連接 |
8 | 網(wǎng)絡(luò)登錄時(shí)以明文方式發(fā)送憑證 |
9 | 使用不同于登錄用戶的憑證— RunAs /netonly |
10 | 遠(yuǎn)程交互登錄(Remote Desktop Protocol) |
11 | 使用緩存的憑證登錄 |
12 | Cached Remote Interactive(類似類型10) |
13 | Cached unlock(類似類型7) |
在使用Windows自帶的RDP客戶端登錄時(shí),在源主機(jī)側(cè)和目的主機(jī)側(cè)都會產(chǎn)生相關(guān)的記錄,在對RDP登錄事件進(jìn)行分析時(shí),我們一般需要關(guān)注下面3個(gè)方面:
1、錯(cuò)誤的人: 即登錄的用戶本來不應(yīng)該登錄這臺主機(jī)或沒有登錄需求。
2、錯(cuò)誤的時(shí)間:即正常的管理員不會在這個(gè)時(shí)間登錄。
3、錯(cuò)誤的源IP:即登錄的用戶正常情況下不應(yīng)該使用這個(gè)源IP登錄。
下面分別介紹如何從事件日志,注冊表,文件系統(tǒng)3個(gè)維度,對源主機(jī)側(cè)和目的主機(jī)側(cè)的相關(guān)取證數(shù)據(jù)進(jìn)行分析。
security.evtx
4648 - 試圖使用顯式憑據(jù)登錄。記錄信息有:
- 當(dāng)前登錄的用戶名
- 使用的憑據(jù)
- 目的主機(jī)名/IP
- 進(jìn)程名
如下圖:
Microsoft-WindowsTerminalServicesRDPClient%4Operational.evtx
1024- 目的主機(jī)名
1102- 目的IP地址
NTUSER\Software\Microsoft\Terminal Server Client\Servers
針對每個(gè)用戶,會記錄遠(yuǎn)程桌面目的地址及登錄時(shí)使用的用戶名:
對NTUSER.dat分析也能獲得相同的信息,首先使用kape提取NTUSER.dat文件:
kape.exe --tsource c: --target RegistryHives --tdest .\RegistryHives
使用Registry Explorer可以看到登錄的目標(biāo)主機(jī),使用的用戶名,最后一次登錄的時(shí)間(注意這個(gè)工具的時(shí)間需要加8小時(shí)):
Prefetch - C:\Windows\Prefetch\
在文件系統(tǒng)維度,prefetch會記錄mstsc.exe的執(zhí)行。prefetch文件位于c:\windows\Prefetch\mstsc.exe-{hash}.pf,可用PECmd.exe進(jìn)行分析:
PECmd.exe -f 'c:\windows\prefetch\MSTSC.EXE-2A83B7D7.pf'
在上圖中,可以看到rdp客戶端總共執(zhí)行了21次,最近執(zhí)行的時(shí)間,及之前7次執(zhí)行時(shí)間(時(shí)間需加8小時(shí))。
Security Event Log - secrity.evtx
4624- 登錄類型10,賬戶成功登錄,類型7為重連接,記錄源IP/登錄用戶名。
但測試過程發(fā)現(xiàn)windows 10有時(shí)不會記錄登錄類型為10的日志,使用RDP登錄時(shí),會產(chǎn)生登錄類型3的日志,如下圖:
4778(A session was reconnected to a Windows Station)/4779(A session was disconnected from a Windows Station) - 記錄源IP,源主機(jī)名,登錄用戶名(不是總會存在):
Microsoft-Windows-RemoteDesktopServices-RdpCoreTS%4Operational.evtx
131- 連接嘗試,記錄源IP(登錄用戶名有時(shí)會記錄,有時(shí)不會):
98 - 成功連接
Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx
1149 - User authentication succeeded),記錄源IP/登錄的用戶名,空白的用戶名可能表明使用粘貼鍵。
“An Event ID 1149 DOES NOT indicate successful authentication to a target, simply a successful RDP network connection”.
Microsoft-Windows-TerminalServices-LocalSessionManager%4Operational.evtx
21(Remote Desktop Services:Session logon succeeded),22(Remote Desktop Services:Shell start notification received),25(Remote Desktop Services:Session reconncetion succeeded),記錄源IP/登錄的用戶名。
21:
22:
41- 記錄登錄的用戶名:
Prefetch – C:\Windows\Prefetch\
由于注冊表里面的信息其實(shí)作用不是很大,這里就不做介紹。
當(dāng)使用rdp連接到目的主機(jī)時(shí),目的主機(jī)會執(zhí)行rdpclip.exe和tstheme.exe這2個(gè)程序,通過對這2個(gè)程序的prefetch文件進(jìn)行分析,可以得出用戶使用rdp登錄主機(jī)的時(shí)間。
使用PECmd.exe對prefetch文件進(jìn)行分析:
.\PECmd.exe -d 'c:\windows\prefetch' --csv .
查看結(jié)果:
也可用工具WinPrefetchView查看prefetch文件:
在實(shí)際對window事件日志分析過程,會發(fā)現(xiàn)使用eventvwr.exe分析會很慢,而且過濾器也比較簡單,無法滿足快速對關(guān)鍵事件過濾的需求。下面介紹利用幾個(gè)第三方的工具對windows事件日志進(jìn)行處理和分析。
分析事件日志可使用EvtxEcmd.exe這個(gè)工具。我們可以直接在目標(biāo)主機(jī)對事件日志進(jìn)行處理,然后把結(jié)果復(fù)制出來,也可以將日志文件提取后,離線進(jìn)行分析。提取可使用kape.exe工具。
提取事件日志:
kape.exe --tsource C: --target EventLogs --tdest . --zip oa_192.168.159.134
將文件復(fù)制下來,離線分析:
EvtxECmd.exe -d '2020-12-06T121754_oa_192.168.159.134\C\Windows\system32\winevt\logs' --csv
使用TimelineExplorer.exe對處理結(jié)果進(jìn)行查看和分析,TimelineExplorer.exe有著強(qiáng)大的過濾器,可幫助我們快速過濾出有效事件,關(guān)于該程序的更多詳細(xì)使用方法,大家可以參考程序的幫助文檔:
上面介紹了通過事件日志,注冊表,文件系統(tǒng)3個(gè)維度,對RDP登錄事件進(jìn)行取證分析,及介紹了可高效處理分析事件日志的幾個(gè)工具。在實(shí)際應(yīng)急響應(yīng)過程,主要還是關(guān)注事件日志維度,其他幾個(gè)方面可作為一個(gè)參考。
聯(lián)系客服