TMA-IIS-2.3
Ensure 'forms authentication' require SSL
Descripción
Forms-based authentication can pass credentials across the network in clear text. It is therefore imperative that the traffic between client and server be encrypted using SSL, especially in cases where the site is publicly accessible. It is recommended that communications with any portion of a site using Forms Authentication be encrypted using SSL. Wherever forms authentication is the mode (root web.config and each site), forms requireSSL must be true. Compliant when forms authentication is not used. PowerShell 5.1 with the WebAdministration module; run elevated.
Cómo se verifica
Método de auditoría: Comando de shell
Import-Module WebAdministration -ErrorAction Stop; $paths = @('MACHINE/WEBROOT') + @(Get-Website | ForEach-Object { "IIS:\Sites\$($_.Name)" }); $bad = @($paths | Where-Object { $a = Get-WebConfiguration -Filter 'system.web/authentication' -PSPath $_; $f = Get-WebConfiguration -Filter 'system.web/authentication/forms' -PSPath $_; [string]$a.mode -eq 'Forms' -and ($f.requireSSL -ne $true) }); if ($bad.Count -eq 0) { 'compliant' } else { 'noncompliant' }- Salida esperada
compliant
Cómo se corrige
Método de corrección: Guía o parche de infraestructura
Set-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST/<site>' -Filter system.web/authentication/forms -Name requireSSL -Value True
Propiedades
- Sistemas operativos
- Cualquiera
- Etiquetas
- iisauthentication
- Referencia
- CIS Microsoft IIS 10 Benchmark v1.2.1 - 2.3 Ensure 'forms authentication' require SSL
Verificar este host
Ejecute esto en un equipo que tenga permiso para auditar. El escaneo es de solo lectura.
tmaegis scan --target iis