The reconstructed evaluation script behind this rule's OVAL check(s) — every module a compound check combines, with this rule's own concrete values and DISA's SCC tool's real per-module mechanism curated from static teardown of SCC releases.
# Windows PowerShell
# Reconstructed from oval:mil.disa.fso.windows:def:564
# Users must be notified if the logon server was inaccessible and cached credentials were used.
# Per-module read mechanism curated from static teardown of DISA's SCC tool
# (SCAP Compliance Checker) -- see the SCC Automation Reference above.
# registry_object (registry_test)
function test_1 {
return (((Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'ReportControllerMissing' -ErrorAction SilentlyContinue) | Select-Object -ExpandProperty 'ReportControllerMissing') -eq 1)
}
# registry_object (registry_test)
function test_2 {
return (-not ($null -ne (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'ReportControllerMissing')))
}
# registry_object (registry_test)
function test_3 {
return ($null -ne (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'ReportControllerMissing'))
}
# registry_object (registry_test)
function test_4 {
return ((@{String='reg_sz';ExpandString='reg_expand_sz';Binary='reg_binary';DWord='reg_dword';MultiString='reg_multi_sz';QWord='reg_qword';None='reg_none'}[(Get-Item -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System').GetValueKind('ReportControllerMissing').ToString()]) -eq 'reg_dword')
}
# registry_object (registry_test)
function test_5 {
return (-not ($null -ne (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'ReportControllerMissing')))
}
# System is not a member of a domain
# registry_object (registry_test)
function test_6 {
return (((@{String='reg_sz';ExpandString='reg_expand_sz';Binary='reg_binary';DWord='reg_dword';MultiString='reg_multi_sz';QWord='reg_qword';None='reg_none'}[(Get-Item -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters').GetValueKind('Domain').ToString()]) -eq 'reg_sz') -and (((Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters' -Name 'Domain' -ErrorAction SilentlyContinue) | Select-Object -ExpandProperty 'Domain') -eq ''))
}
if ((((test_1 -or test_2) -and test_3 -and (test_4 -or test_5)) -or test_6)) {
Write-Output "PASS"
} else {
Write-Output "FAIL"
} Assessment Script Powered by AISyntax-verified
A standalone PowerShell script to assess this control automatically. Review before running it in your environment.
Syntax-checked as valid PowerShell. Not executed here — running it for real needs the actual windows_vista target this check assesses.
# oval:mil.disa.fso.windows:def:564
if (!(Get-CimInstance -ClassName Win32_ComputerSystem).DomainName.Length -or (Get-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Policies\System" -ErrorAction SilentlyContinue -Name "ReportControllerMissing") -eq $null) {exit 1} else {exit 0}