gpt4 book ai didi

Azure WebApp 删除错误请求的 'Server' header

转载 作者:行者123 更新时间:2023-12-03 00:09:02 26 4
gpt4 key购买 nike

网址如:yourDomain.com/%

抛出错误:400 错误请求

a)-这不会进入应用程序请求周期,而是由 HTTP.SYS 处理并显示服务器 header 如下:Microsoft-HTTPAPI/2.0

b)-此外,如果您使用 burp 拦截器更改主机地址,则会抛出带有服务器 header 的 404 错误,如下所示:Microsoft-IIS/10.0

我已经检查过以下网址: Removing Server and X-Powered-By HTTP Headers on Azure Web Site Preview

但以下 Azure 票证显示 AG 允许从响应中删除 header : https://feedback.azure.com/forums/217313-networking/suggestions/16487725-remove-server-framework-headers-from-application-g

但没有显示如何实现它,以便当请求不属于应用程序请求周期时可以删除“服务器” header 。

门票的情况也是如此: Remove sensitive Headers from Azure PaaS hosted Websites

请注意,该应用程序托管在 Azure WebApp(而不是 VM)中。

简而言之,我想在上述 2 个场景中隐藏/更改 Azure WebApp 中托管的应用程序的“服务器” header 。

最佳答案

要在基于 Windows/IIS 的 Azure Web 应用程序中删除服务器 header 或由 header 提供支持,您需要添加包含以下内容的 web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<remove name="X-Powered-By" />
</customHeaders>
</httpProtocol>
<security>
<requestFiltering removeServerHeader="true" />
</security>
</system.webServer>
</configuration>

如果您使用的是基于 Linux/Kestrel 的系统,则需要将 Program.cs 文件中的 CreateHostBuilder 更改为如下所示:

        public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder
.UseKestrel(options => options.AddServerHeader = false)
.UseStartup<Startup>();
});

关于Azure WebApp 删除错误请求的 'Server' header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51941449/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com