Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Rövid leírás
A PowerShell a motor, a szolgáltatók és a parancsmagok belső műveleteit naplózza a Windows eseménynaplóba.
Hosszú leírás
A PowerShell naplózza a PowerShell-műveletek részleteit, például a motor és a szolgáltatók indítását és leállítását, valamint a PowerShell-parancsok végrehajtását.
A Windows PowerShell 5.1-ben való naplózásról további információt about_Logging.
A PowerShell két naplózási kategória konfigurálását támogatja:
Modulnaplózás – A megadott modulok tagjainak folyamatvégrehajtási eseményeinek rögzítése. A modulnaplózást engedélyezni kell a munkamenethez és az adott modulokhoz is. A naplózás konfigurálásával kapcsolatos további információkért lásd: about_PowerShell_Config.
Ha a modulnaplózás konfigurációval van engedélyezve, engedélyezheti és letilthatja a naplózást egy munkamenet adott moduljaihoz a modul LogPipelineExecutionDetails tulajdonságának beállításával.
Például a PSReadLine modul modulnaplózásának engedélyezéséhez:
$psrl = Get-Module PSReadLine $psrl.LogPipelineExecutionDetails = $true Get-Module PSReadLine | Select-Object Name, LogPipelineExecutionDetailsName LogPipelineExecutionDetails ---- --------------------------- PSReadLine TrueSzkriptblokk naplózása – A parancsok, szkriptblokkok, függvények és szkriptek feldolgozásának rögzítése interaktívan vagy automatizálással.
A szkriptblokkok naplózásának engedélyezésekor a PowerShell rögzíti az összes szkriptblokk tartalmát, amelyet feldolgoz. Ha engedélyezve van, minden új PowerShell-munkamenet naplózza ezeket az információkat. További információ: Szkriptblokk naplózásának engedélyezése.
A PowerShell-eseményszolgáltató regisztrálása Windows rendszeren
A Linuxtól vagy a macOS-től eltérően a Windows megköveteli az eseményszolgáltató regisztrációját, mielőtt az eseményeket meg lehetne írni az eseménynaplóba. A PowerShell-eseményszolgáltató engedélyezéséhez futtassa a következő parancsot egy emelt szintű PowerShell-parancssorból.
$PSHOME\RegisterManifest.ps1
A PowerShell eseménynapló-bejegyzéseinek megtekintése Windows rendszeren
A PowerShell-naplók a Windows Eseménynapló használatával tekinthetők meg. Az eseménynapló az Alkalmazás- és szolgáltatásnaplók csoportban található, és a neve PowerShellCore. A társított ETW-szolgáltató GUID azonosítója {f90714a8-5509-434a-bf6d-b1624c8a19a2}.
Ha engedélyezve van a szkriptblokk-naplózás, a PowerShell a következő eseményeket naplózza a PowerShellCore/Operational naplóba:
| Mező | Érték |
|---|---|
| EventId | 4104 / 0x1008 |
| Csatorna | Operational |
| Szint | Verbose |
| Opcode | Create |
| Feladat | CommandStart |
| Kulcsszó | Runspace |
A PowerShell-eseményszolgáltató regisztrációjának törlése Windows rendszeren
Az eseményszolgáltató regisztrálása zárolja az események dekódolásához használt bináris kódtárat. A kódtár frissítéséhez a szolgáltatónak nem kell regisztrálnia a zárolás feloldásához.
A PowerShell-szolgáltató regisztrációjának megszüntetéséhez futtassa a következő parancsot egy emelt szintű PowerShell-parancssorból.
$PSHOME\RegisterManifest.ps1 -Unregister
A PowerShell frissítése után futtassa a $PSHOME\RegisterManifest.ps1 a frissített eseményszolgáltató regisztrálásához.
Szkriptblokk naplózásának engedélyezése
A szkriptblokkok naplózásának engedélyezésekor a PowerShell rögzíti az összes szkriptblokk tartalmát, amelyet feldolgoz. Ha engedélyezve van, minden új PowerShell-munkamenet naplózza ezeket az információkat.
Jegyzet
Javasoljuk, hogy engedélyezze a védett eseménynaplózást az alábbiak szerint, ha a szkriptblokk-naplózást nem diagnosztikai célokra használja.
A szkriptblokk-naplózás csoportházirenddel vagy beállításjegyzék-beállítással engedélyezhető.
Csoportházirend használata
Az automatikus átírás engedélyezéséhez engedélyezze a A PowerShell-szkriptnaplózási funkció bekapcsolása a csoportházirendben felügyeleti sablonokon keresztül –>PowerShell Core.
A beállításjegyzék használata
Futtassa a következő függvényt:
function Enable-PSScriptBlockLogging {
$basePath = @(
'HKLM:\Software\Policies\Microsoft'
'PowerShellCore\ScriptBlockLogging'
) -join '\'
if (-not (Test-Path $basePath)) {
$null = New-Item $basePath -Force
}
Set-ItemProperty $basePath -Name EnableScriptBlockLogging -Value "1"
}
A PowerShell konfigurációs fájljának használata
A PowerShell működését vezérlő ScriptBlockLogging fájlban beállíthatja a powershell.config.json beállítást. További információ: about_PowerShell_Config.
Védett eseménynaplózás
A rendszer naplózási szintjének növelése növeli annak lehetőségét, hogy a naplózott tartalom bizalmas adatokat tartalmazhat. Ha például engedélyezve van a szkriptnaplózás, a szkript által használt hitelesítő adatok vagy egyéb bizalmas adatok írhatók az eseménynaplóba. Ha egy bizalmas adatokat naplózott gép sérül, a naplók a támadók számára olyan információkat biztosíthatnak, amelyek az elérésük kiterjesztéséhez szükségesek.
Ezen információk védelme érdekében a Windows 10 védett eseménynaplózást vezet be. A védett eseménynaplózás lehetővé teszi, hogy a részt vevő alkalmazások titkosítják az eseménynaplóba írt bizalmas adatokat. Később visszafejtheti és feldolgozhatja ezeket a naplókat egy biztonságosabb és központosított naplógyűjtőn.
Az eseménynapló tartalma az IETF titkosítási üzenet szintaxisa (CMS) szabványával van védve. A CMS nyilvános kulcsú titkosítást használ. A tartalom titkosításához és a tartalom visszafejtéséhez használt kulcsok külön maradnak.
A nyilvános kulcs széles körben megosztható, és nem bizalmas adatok. Az ezzel a nyilvános kulccsal titkosított tartalmakat csak a titkos kulcs tudja visszafejteni. A nyilvános kulcsok titkosításával kapcsolatos további információkért lásd: Wikipedia – Nyilvános kulcsú titkosítási.
A védett eseménynaplózási szabályzat engedélyezéséhez helyezzen üzembe egy nyilvános kulcsot minden olyan gépen, amely rendelkezik eseménynapló-adatokkal a védelem érdekében. A megfelelő titkos kulcs az eseménynaplók biztonságosabb helyen, például központi eseménynapló-gyűjtőn vagy SIEM- összesítőn történő feldolgozására szolgál. A SIEM-et az Azure-ban is beállíthatja. További információ: Általános SIEM integrációs.
Védett eseménynaplózás engedélyezése csoportházirenddel
A védett eseménynaplózás engedélyezéséhez engedélyezze a Enable Protected Event Logging funkciót a csoportházirendben Administrative Templates -> Windows Components -> Event Loggingkeresztül. Ehhez a beállításhoz titkosítási tanúsítvány szükséges, amelyet több űrlap egyikében is megadhat:
- Egy base-64 kódolású X.509-tanúsítvány tartalma (például a Tanúsítványkezelő
Exportlehetőségének megfelelően). - A helyi gép tanúsítványtárolójában található tanúsítvány ujjlenyomata (A PKI-infrastruktúra üzembe helyezhető).
- A tanúsítvány teljes elérési útja (lehet helyi vagy távoli megosztás).
- Egy tanúsítványt vagy tanúsítványt tartalmazó könyvtár elérési útja (lehet helyi vagy távoli megosztás).
- A helyi gép tanúsítványtárolójában található tanúsítvány tulajdonosneve (a PKI-infrastruktúra üzembe helyezhető).
Az eredményül kapott tanúsítványnak bővített kulcshasználatként (Document Encryption) 1.3.6.1.4.1.311.80.1 kell rendelkeznie, és engedélyezve kell lennie Data Encipherment vagy Key Encipherment kulcshasználatnak.
Figyelmeztetés
A titkos kulcsot nem szabad üzembe helyezni a gépek naplózási eseményein. Biztonságos helyen kell tartani, ahol visszafejtheti az üzeneteket.
Védett eseménynaplózási üzenetek visszafejtése
A következő szkript lekéri és visszafejti az eseményeket, feltéve, hogy rendelkezik a titkos kulccsal:
Get-WinEvent Microsoft-Windows-PowerShell/Operational |
Where-Object Id -EQ 4104 | Unprotect-CmsMessage