自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

設(shè)置PowerShell腳本塊日志以加強安全

譯文
安全 應(yīng)用安全
本文介紹如何設(shè)置系統(tǒng)以捕獲異常PowerShell行為,從而加強防御。

譯者 | 布加迪

審校 | 重樓

51CTO讀者成長計劃社群招募,咨詢小助手(微信號:TTalkxiaozhuli)

PowerShell是一種非常全面且易于使用的語言。但是管理員需要保護組織遠離不法分子,以免他們利用PowerShell搞破壞活動。

作為Windows中的一路原生工具,PowerShell的廣泛功能使得攻擊者很容易利用該語言做文章。越來越多的惡意軟件和不法分子使用PowerShell將不同的攻擊方法結(jié)合起來,或者完全通過PowerShell運行漏洞利用代碼。這種攻擊常常逃避檢測,是由于攻擊者利用了操作系統(tǒng)的原生組件。

有許多方法和最佳實踐可用于保護PowerShell。其中最有價值的是PowerShell腳本塊日志記錄。腳本塊是作為一個整體使用的一組語句或表達式。腳本塊是使用花括號{}定義一個代碼塊。

從Windows PowerShell版本4.0開始,腳本塊日志記錄會生成已執(zhí)行代碼的審計跟蹤,但在Windows PowerShell版本5.0中得到了顯著改進。Windows PowerShell版本5.0引入了一個日志引擎,可以自動解密使用XOR、Base64和ROT13等方法混淆處理的代碼。PowerShell包含原始的加密代碼,以供比較。

PowerShell腳本塊日志有助于在安全泄密后分析事件,以便提供額外的洞察力。它還可以幫助IT人員更主動地監(jiān)視惡意事件。比如說,如果您在Windows中設(shè)置了事件訂閱,可以將感興趣的事件發(fā)送到集中服務(wù)器,進行更仔細的觀察。

一、設(shè)置Windows系統(tǒng)以實現(xiàn)日志功能

在Windows系統(tǒng)上配置腳本塊日志的兩種主要方法是直接設(shè)置注冊表值,或在組策略對象中指定適當(dāng)?shù)脑O(shè)置。

要通過注冊表配置腳本塊日志記錄,請在以管理員的身份登錄時使用以下代碼。

New-Item -Path "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" -Force

Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" -Name "EnableScriptBlockLogging" -Value 1 -Force

您可以在組策略中設(shè)置PowerShell日志記錄設(shè)置,這可以在本地機器上設(shè)置,也可以通過面向全組織的策略來設(shè)置。

打開本地組策略編輯器,進入到“計算機配置>管理模板> Windows組件> Windows PowerShell >打開PowerShell腳本塊日志記錄”。

圖片

圖1. 從Windows中的本地組策略編輯器設(shè)置PowerShell腳本塊日志記錄

當(dāng)您啟用腳本塊日志記錄時,編輯器會開啟一個額外的選項:當(dāng)命令、腳本塊、函數(shù)或腳本啟動和停止時,通過“日志腳本塊調(diào)用啟動/停止事件”來記錄事件。這有助于跟蹤事件發(fā)生的時間,尤其是針對長時間運行的后臺腳本。這個選項在日志中生成大量的額外數(shù)據(jù)。

圖片

圖2. PowerShell腳本塊日志記錄跟蹤已執(zhí)行的腳本和命令行上運行的命令

二、如何在非Windows系統(tǒng)上配置腳本塊日志記錄?

PowerShell Core是PowerShell的跨平臺版本,適用于Windows、Linux和macOS。要在PowerShell Core上使用腳本塊日志,您就需要在$PSHome目錄下的PowerShell .config.json文件中定義配置,該文件對于安裝的每個PowerShell都是唯一的。

從PowerShell會話進入到$PSHome,使用Get-ChildItem命令查看PowerShell.config.json文件是否存在。如果不存在,您需要創(chuàng)建該文件。這么做的方法因操作系統(tǒng)而異。雖然可以使用文本編輯器,但也可以從命令行創(chuàng)建所需的文件。比如在Linux機器上,您可以使用這個命令。

sudo touch powershell.config.json

使用Nano文本編輯器等工具修改文件,并粘貼以下配置。

{

"PowerShellPolicies": {

"ScriptBlockLogging": {

"EnableScriptBlockInvocationLogging": false,

"EnableScriptBlockLogging": true

}

},

"LogLevel": "verbose"

}

三、測試PowerShell腳本塊日志記錄

測試配置很容易。從命令行運行以下命令。

PS /> { "log me!" }

"log me!"

四、查看Windows操作系統(tǒng)上的日志

您如何知道要留意哪些條目?需要留意的主要事件ID是4104。這是ScriptBlockLogging條目,對應(yīng)含有用戶和域、記錄的日期和時間、計算機主機以及腳本塊文本的信息。

打開事件查看器,進入到以下日志位置:“Applications and Services Logs > Microsoft > Windows > PowerShell > Operational”。

點擊事件,直到從測試中找到標為事件ID 4104的條目。針對該事件過濾日志,以加快搜索速度。

圖片

圖3. Windows事件查看器中的事件4104詳細說明了Windows計算機上的PowerShell活動

在Windows操作系統(tǒng)上的PowerShell Core中,日志位置是:Applications and Services Logs > PowerShellCore > Operational。

五、非Windows系統(tǒng)上的日志位置

在Linux上,PowerShell腳本塊日志將記錄到syslog。其位置將因發(fā)行版而異。在本教程中,我們使用Ubuntu,其syslog在/var/log/syslog目錄下。

運行以下命令顯示日志條目。值得注意的是,該命令需要提升的權(quán)限,因此您將需要使用sudo命令。

sudo cat /var/log/syslog | grep "{ log me! }"

2019-08-20T19:40:08.070328-05:00 localhost powershell[9610]: (6.2.2:9:80) [ScriptBlock_Compile_Detail:ExecuteCommand.Create.Verbose] Creating Scriptblock text (1 of 1):#012{ "log me!" }#012#012ScriptBlock ID: 4d8d3cb4-a5ef-48aa-8339-38eea05c892b#012Path:

在Linux上設(shè)置集中式服務(wù)器不一樣,因為您默認使用syslog。您可以使用許多不同的工具將日志發(fā)送到日志聚合服務(wù),以便從中心位置跟蹤PowerShell活動。Rsyslog是一種流行的選擇,但其他選項包括Dynatrace、New Relic和Datadog。

原文鏈接:https://www.techtarget.com/searchwindowsserver/tutorial/Set-up-PowerShell-script-block-logging-for-added-security

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2023-09-05 07:04:51

PowerShell運維

2020-06-02 14:27:48

物聯(lián)網(wǎng)訪問控制網(wǎng)絡(luò)安全

2013-07-23 15:10:34

PowerShell

2014-09-03 11:26:11

2023-08-28 07:03:43

PowerShell腳本運行

2018-05-09 11:22:15

2014-03-11 11:10:10

PowerShell自動化腳本

2011-07-06 09:19:37

2014-02-17 09:06:39

2012-10-24 11:08:41

2013-07-19 09:12:54

2017-01-03 19:03:36

2023-05-18 09:26:04

CIO辦公環(huán)境員工

2023-05-14 23:38:30

微軟Linux安全

2013-11-05 10:44:29

PowerShellWindows Ser

2011-07-11 09:35:52

VMwarePowerCLI微軟

2011-07-12 09:12:54

PowerShellPowerCLI

2013-11-07 15:55:29

PowerShellVDI

2015-07-29 15:05:30

2014-08-12 09:47:04

開源軟件軟件安全OSS組件
點贊
收藏

51CTO技術(shù)棧公眾號