mirror of
https://github.com/Yamato-Security/WELA.git
synced 2025-12-06 17:22:50 +01:00
feat: enhance audit-settings gui
This commit is contained in:
14
WELA.ps1
14
WELA.ps1
@@ -5175,13 +5175,21 @@ function AuditLogSetting {
|
|||||||
Write-Output "Audit check result saved to: WELA-Audit-Result.csv"
|
Write-Output "Audit check result saved to: WELA-Audit-Result.csv"
|
||||||
} elseif ($outType -eq "gui") {
|
} elseif ($outType -eq "gui") {
|
||||||
$auditResult | Select-Object -Property Category, SubCategory, RuleCount, RuleCountByLevel, DefaultSetting, CurrentSetting, RecommendedSetting, Volume, Note | Out-GridView -Title "WELA Audit Result"
|
$auditResult | Select-Object -Property Category, SubCategory, RuleCount, RuleCountByLevel, DefaultSetting, CurrentSetting, RecommendedSetting, Volume, Note | Out-GridView -Title "WELA Audit Result"
|
||||||
|
Write-Output "Audit check result saved to: WELA-Audit-Result.csv"
|
||||||
} elseif ($outType -eq "table") {
|
} elseif ($outType -eq "table") {
|
||||||
$auditResult | Select-Object -Property Category, SubCategory, RuleCount, DefaultSetting, CurrentSetting, RecommendedSetting, Volume | Format-Table
|
$auditResult | Select-Object -Property Category, SubCategory, RuleCount, DefaultSetting, CurrentSetting, RecommendedSetting, Volume | Format-Table
|
||||||
}
|
}
|
||||||
|
|
||||||
$usableRules = $auditResult | Select-Object -ExpandProperty Rules | Where-Object { $_.applicable -eq $true }
|
$usableRules = $auditResult | Select-Object -ExpandProperty Rules | Where-Object { $_.applicable -eq $true }
|
||||||
$unUsableRules = $auditResult | Select-Object -ExpandProperty Rules | Where-Object { $_.applicable -eq $false }
|
$unUsableRules = $auditResult | Select-Object -ExpandProperty Rules | Where-Object { $_.applicable -eq $false }
|
||||||
$usableRules | Select-Object title, level, service, category, description, id | Export-Csv -Path "UsableRules.csv" -NoTypeInformation
|
$usableRules | Select-Object title, level, service, category, description, id | Export-Csv -Path "UsableRules.csv" -NoTypeInformation
|
||||||
$unusableRules | Select-Object title, level, service, category, description, id | Export-Csv -Path "UnusableRules.csv" -NoTypeInformation
|
$unusableRules | Select-Object title, level, service, category, description, id | Export-Csv -Path "UnusableRules.csv" -NoTypeInformation
|
||||||
|
|
||||||
|
if ($outType -eq "gui") {
|
||||||
|
$usableRules | Select-Object title, level, service, category, description, id | Out-GridView -Title "Usable Detection Rules"
|
||||||
|
$unUsableRules | Select-Object title, level, service, category, description, id | Out-GridView -Title "Unusable Detection Rules"
|
||||||
|
}
|
||||||
|
|
||||||
Write-Output "Usable detection rules list saved to: UsableRules.csv"
|
Write-Output "Usable detection rules list saved to: UsableRules.csv"
|
||||||
Write-Output "Unusable detection rules list saved to: UnusableRules.csv"
|
Write-Output "Unusable detection rules list saved to: UnusableRules.csv"
|
||||||
|
|
||||||
@@ -5191,7 +5199,6 @@ function AuditLogSetting {
|
|||||||
Export-MitreHeatmap -sigmaRules $sigma_rules -OutputPath "mitre-ttp-navigator-ideal.json" -UseIdealCount $true
|
Export-MitreHeatmap -sigmaRules $sigma_rules -OutputPath "mitre-ttp-navigator-ideal.json" -UseIdealCount $true
|
||||||
Write-Output "MITRE ATT&CK Navigator data(based on ideal settings) saved to: mitre-ttp-navigator-ideal.json"
|
Write-Output "MITRE ATT&CK Navigator data(based on ideal settings) saved to: mitre-ttp-navigator-ideal.json"
|
||||||
|
|
||||||
|
|
||||||
$totalRulesCount = $auditResult | Select-Object -ExpandProperty Rules | Measure-Object | Select-Object -ExpandProperty Count
|
$totalRulesCount = $auditResult | Select-Object -ExpandProperty Rules | Measure-Object | Select-Object -ExpandProperty Count
|
||||||
$usableRulesCount = $usableRules | Measure-Object | Select-Object -ExpandProperty Count
|
$usableRulesCount = $usableRules | Measure-Object | Select-Object -ExpandProperty Count
|
||||||
$utilizationPercentage = "{0:N2}" -f (($usableRulesCount / $totalRulesCount) * 100)
|
$utilizationPercentage = "{0:N2}" -f (($usableRulesCount / $totalRulesCount) * 100)
|
||||||
@@ -5499,6 +5506,7 @@ function ConfigureAuditSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# PowerShell ロギングの設定
|
# PowerShell ロギングの設定
|
||||||
|
Write-Host ""
|
||||||
Write-Host "Configuring PowerShell Logging..."
|
Write-Host "Configuring PowerShell Logging..."
|
||||||
$regPaths = @(
|
$regPaths = @(
|
||||||
@{Path = "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\PowerShell\ModuleLogging"; Name = "EnableModuleLogging"; Value = 1},
|
@{Path = "HKLM:\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\PowerShell\ModuleLogging"; Name = "EnableModuleLogging"; Value = 1},
|
||||||
@@ -5528,6 +5536,7 @@ function ConfigureAuditSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# コマンドライン監査の有効化
|
# コマンドライン監査の有効化
|
||||||
|
Write-Host ""
|
||||||
Write-Host "Enabling Command Line Auditing..."
|
Write-Host "Enabling Command Line Auditing..."
|
||||||
$regPath = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit"
|
$regPath = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit"
|
||||||
$arguments = "add $regPath /v ProcessCreationIncludeCmdLine_Enabled /f /t REG_DWORD /d 1"
|
$arguments = "add $regPath /v ProcessCreationIncludeCmdLine_Enabled /f /t REG_DWORD /d 1"
|
||||||
@@ -5541,6 +5550,7 @@ function ConfigureAuditSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# 監査ポリシーの設定
|
# 監査ポリシーの設定
|
||||||
|
Write-Host ""
|
||||||
Write-Host "Configuring Audit Policies..."
|
Write-Host "Configuring Audit Policies..."
|
||||||
$auditPolicies = @(
|
$auditPolicies = @(
|
||||||
@{Category = "Account Logon"; Name = "Credential Validation"; GUID = "{0CCE923F-69AE-11D9-BED3-505054503030}"},
|
@{Category = "Account Logon"; Name = "Credential Validation"; GUID = "{0CCE923F-69AE-11D9-BED3-505054503030}"},
|
||||||
@@ -5590,7 +5600,7 @@ function ConfigureAuditSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Write-Host ""
|
Write-Host ""
|
||||||
Write-Host "Configuration completed successfully"
|
Write-Host "Configuration completed successfully" -ForegroundColor Green
|
||||||
}
|
}
|
||||||
|
|
||||||
$logo = @"
|
$logo = @"
|
||||||
|
|||||||
Reference in New Issue
Block a user