frameworks/pci-dss-4.0.1.psd1
|
# PCI DSS v4.0.1: 22 requirements. # This catalog lists only the requirements that a Windows endpoint can show evidence for, with # titles written for this project; the standard itself has the authoritative text and # the full list. Complete = $false makes every report say so. # The standard is published by the PCI Security Standards Council, https://www.pcisecuritystandards.org. # Field meanings are in frameworks/README.md. @{ Id = 'PCI-DSS-4.0.1' Name = 'PCI DSS v4.0.1 (endpoint requirements)' Source = 'https://www.pcisecuritystandards.org/document_library/' Levels = @('PCI') Complete = $false Thresholds = @{ LockoutThresholdMax = 10 LockoutDurationMinMinutes = 30 MinPasswordLength = 12 MinPasswordHistory = 4 MaxDaysSinceUpdate = 30 InactivityLockMaxSeconds = 900 RdpIdleMaxMinutes = 15 } Requirements = @( @{ Id = '1.5.1' Family = 'R01' Level = 'PCI' Title = 'Firewall on devices that connect to both untrusted networks and the CDE' Checks = @('SC-FirewallEnabled') } @{ Id = '2.2.4' Family = 'R02' Level = 'PCI' Title = 'Only necessary services, protocols and functions are enabled' Checks = @('CM-NonessentialServices', 'CM-Smb1Disabled', 'CM-AutoplayDisabled') } @{ Id = '2.2.7' Family = 'R02' Level = 'PCI' Title = 'Non-console administrative access is encrypted' Checks = @('AC-RdpProtected', 'SC-LegacyTlsDisabled') } @{ Id = '4.2.1' Family = 'R04' Level = 'PCI' Title = 'Strong cryptography protects account data in transit' Checks = @('SC-LegacyTlsDisabled') Note = 'Shows the endpoint protocol configuration; certificates and the flows that carry account data are reviewed separately.' } @{ Id = '5.2.1'; Family = 'R05'; Level = 'PCI'; Title = 'Anti-malware is deployed'; Checks = @('SI-AntivirusActive') } @{ Id = '5.3.1'; Family = 'R05'; Level = 'PCI'; Title = 'Anti-malware is kept current'; Checks = @('SI-SignatureAge') } @{ Id = '5.3.2' Family = 'R05' Level = 'PCI' Title = 'Anti-malware scans periodically or analyzes continuously' Checks = @('SI-AntivirusActive', 'SI-ScanRecency') } @{ Id = '6.3.3' Family = 'R06' Level = 'PCI' Title = 'Security patches are installed promptly' Checks = @('SI-UpdateRecency') Note = 'PCI DSS sets one month for critical patches; the threshold uses that for the newest update.' } @{ Id = '7.2.2'; Family = 'R07'; Level = 'PCI'; Title = 'Access follows job duties and least privilege'; Checks = @('AC-LocalAdminCount') } @{ Id = '8.2.1'; Family = 'R08'; Level = 'PCI'; Title = 'Every user has a unique ID'; Checks = @('AC-GuestDisabled') } @{ Id = '8.2.8' Family = 'R08' Level = 'PCI' Title = 'Idle sessions over 15 minutes need re-authentication' Checks = @('AC-InactivityLock', 'AC-RdpIdleTimeout') } @{ Id = '8.3.1' Family = 'R08' Level = 'PCI' Title = 'User access is authenticated' Checks = @('AC-NoPasswordNotRequired', 'IA-BlankPasswordConsoleOnly') } @{ Id = '8.3.2' Family = 'R08' Level = 'PCI' Title = 'Authentication factors are unreadable in storage and transit' Checks = @('IA-StoredPasswordProtection', 'IA-NtlmV2Only') } @{ Id = '8.3.4'; Family = 'R08'; Level = 'PCI'; Title = 'Accounts lock after repeated failed logons'; Checks = @('AC-AccountLockout') } @{ Id = '8.3.6'; Family = 'R08'; Level = 'PCI'; Title = 'Passwords meet minimum length and complexity'; Checks = @('IA-PasswordComplexity') } @{ Id = '8.3.7'; Family = 'R08'; Level = 'PCI'; Title = 'New passwords differ from recent ones'; Checks = @('IA-PasswordHistory') } @{ Id = '10.2.1'; Family = 'R10'; Level = 'PCI'; Title = 'Audit logs are enabled'; Checks = @('AU-AuditPolicy') } @{ Id = '10.2.1.2'; Family = 'R10'; Level = 'PCI'; Title = 'Administrative actions are logged'; Checks = @('AU-SensitivePrivilegeUse') } @{ Id = '10.2.1.4' Family = 'R10' Level = 'PCI' Title = 'Invalid logon attempts are logged' Checks = @() Expect = @( @{ Source = 'Audit'; Subcategory = 'Logon'; Setting = 'Failure' } @{ Source = 'Audit'; Subcategory = 'Credential Validation'; Setting = 'Failure' } ) } @{ Id = '10.2.1.5' Family = 'R10' Level = 'PCI' Title = 'Changes to accounts and credentials are logged' Checks = @() Expect = @( @{ Source = 'Audit'; Subcategory = 'User Account Management'; Setting = 'Success' } ) } @{ Id = '10.5.1' Family = 'R10' Level = 'PCI' Title = 'Audit log history is retained' Checks = @('AU-SecurityLogSize') Note = 'PCI DSS asks for 12 months, 3 immediately available; that is usually met by central log storage, which is reviewed separately.' } @{ Id = '10.6.1'; Family = 'R10'; Level = 'PCI'; Title = 'Clocks are synchronized'; Checks = @('AU-TimeSync') } ) } |