v2.2.1: Critical multi-run session bugfix, .Count property fix, ASR prompt improvement, code quality review

This commit is contained in:
NexusOne23 2025-12-20 23:08:01 +01:00
parent c6f8291d50
commit b3efcf35fd
68 changed files with 307 additions and 159 deletions

View file

@ -8,7 +8,7 @@
.NOTES
Author: NexusOne23
Version: 2.2.0
Version: 2.2.1
Requires: PowerShell 5.1+
#>
@ -79,7 +79,7 @@ function New-DefaultConfig {
)
$defaultConfig = @{
version = "2.2.0"
version = "2.2.1"
modules = @{
SecurityBaseline = @{
enabled = $true
@ -114,7 +114,7 @@ function New-DefaultConfig {
priority = 6
status = "IMPLEMENTED"
description = "Microsoft Edge v139 Security Baseline: 20 security policies including SmartScreen enforcement, site isolation, SSL/TLS hardening, extension blocklist, IE Mode restrictions, and Spectre mitigations. No LGPO.exe dependency."
version = "2.2.0"
version = "2.2.1"
baseline = "Edge v139"
policies = 20
features = @{
@ -133,7 +133,7 @@ function New-DefaultConfig {
priority = 7
status = "IMPLEMENTED"
description = "Advanced Security hardening beyond MS Baseline: RDP NLA/Disable, WDigest protection, Admin Shares disable, Risky ports/services, Legacy TLS disable, WPAD disable, PowerShell v2 removal, SRP .lnk protection, Windows Update (3 GUI settings), Finger Protocol block. Opt-in by design (use -SecurityProfile Balanced/Enterprise/Maximum)"
version = "2.2.0"
version = "2.2.1"
policies = 36
features = @{
rdp_hardening = $true

View file

@ -8,7 +8,7 @@
.NOTES
Author: NexusOne23
Version: 2.2.0
Version: 2.2.1
Requires: PowerShell 5.1+
.EXAMPLE
@ -24,7 +24,7 @@
# All configuration comes from config.json via Initialize-Config.
# Script-level variables
$script:FrameworkVersion = "2.2.0"
$script:FrameworkVersion = "2.2.1"
$script:FrameworkRoot = Split-Path -Parent $PSScriptRoot
$script:ExecutionStartTime = Get-Date
@ -301,7 +301,7 @@ function Start-HardeningProcess {
# Correct calculation from ModuleResults
$totalModules = $hardeningResult.ModulesExecuted
$successCount = ($hardeningResult.ModuleResults | Where-Object { $_.Success }).Count
$successCount = @($hardeningResult.ModuleResults | Where-Object { $_.Success }).Count
$failureCount = $totalModules - $successCount
Write-Host "Total modules executed: $totalModules" -ForegroundColor White

View file

@ -8,7 +8,7 @@
.NOTES
Author: NexusOne23
Version: 2.2.0
Version: 2.2.1
Requires: PowerShell 5.1+
#>

View file

@ -12,7 +12,7 @@
.NOTES
Author: NexusOne23
Version: 2.2.0
Version: 2.2.1
Usage in modules:
1. Call Test-NonInteractiveMode to check if prompts should be skipped

View file

@ -8,7 +8,7 @@
.NOTES
Author: NexusOne23
Version: 2.2.0
Version: 2.2.1
Requires: PowerShell 5.1+
#>
@ -64,7 +64,7 @@ function Initialize-BackupSystem {
displayName = "" # Auto-generated based on modules
sessionType = "unknown" # wizard | advanced | manual
timestamp = Get-Date -Format "o"
frameworkVersion = "2.2.0"
frameworkVersion = "2.2.1"
modules = @()
totalItems = 0
restorable = $true
@ -2246,7 +2246,7 @@ function Restore-Session {
"HKCU:\Software\Microsoft\Windows\CurrentVersion\SystemSettings\AccountNotifications",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\UserProfileEngagement",
"HKCU:\SOFTWARE\Microsoft\Personalization\Settings",
# NEW: Input Personalization Settings (v2.2.0 - FIX missing HKCU restore)
# NEW: Input Personalization Settings (v2.2.1 - FIX missing HKCU restore)
"HKCU:\SOFTWARE\Microsoft\InputPersonalization",
"HKCU:\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\appDiagnostics"

View file

@ -8,7 +8,7 @@
.NOTES
Author: NexusOne23
Version: 2.2.0
Version: 2.2.1
Requires: PowerShell 5.1+
#>