Microsoft IIS
TMA-IIS-4.4
Ensure non-ASCII characters in URLs are not allowed
低级别 2自动化iis
说明
This feature is used to allow or reject all requests to IIS that contain non-ASCII characters. When using this feature, Request Filtering will deny the request if high-bit characters are present in the URL. The UrlScan equivalent is AllowHighBitCharacters. It is recommended that requests containing non-ASCII characters be rejected, where possible. requestFiltering allowHighBitCharacters must be false at server level and for every site. PowerShell 5.1 with the WebAdministration module; run elevated.
检查方式
审计方法: Shell 命令
shell
Import-Module WebAdministration -ErrorAction Stop; $paths = @('MACHINE/WEBROOT/APPHOST') + @(Get-Website | ForEach-Object { "IIS:\Sites\$($_.Name)" }); $bad = @($paths | Where-Object { $c = Get-WebConfiguration -Filter 'system.webServer/security/requestFiltering' -PSPath $_; $c.allowHighBitCharacters -ne $false }); if ($bad.Count -eq 0) { 'compliant' } else { 'noncompliant' }- 预期输出
compliant
修复方式
修复方法: 操作指南或基础设施补丁
Set-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST' -Filter system.webServer/security/requestFiltering -Name allowHighBitCharacters -Value False
属性
- 操作系统
- 任意
- 标签
- iisrequest-filtering
- 参考
- CIS Microsoft IIS 10 Benchmark v1.2.1 - 4.4 Ensure non-ASCII characters in URLs are not allowed
检查本机
请在您有权审计的机器上运行此命令。扫描为只读操作。
shell
tmaegis scan --target iis --level 2