Microsoft IIS
TMA-IIS-2.3
Ensure 'forms authentication' require SSL
说明
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.
检查方式
审计方法: 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' }- 预期输出
compliant
修复方式
修复方法: 操作指南或基础设施补丁
Set-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST/<site>' -Filter system.web/authentication/forms -Name requireSSL -Value True
属性
- 操作系统
- 任意
- 标签
- iisauthentication
- 参考
- CIS Microsoft IIS 10 Benchmark v1.2.1 - 2.3 Ensure 'forms authentication' require SSL
检查本机
请在您有权审计的机器上运行此命令。扫描为只读操作。
tmaegis scan --target iis