您如何掩盖您正在运行 Apache 的事实?

Roo*_*ook 2 security httpd apache-2.2

我怎样才能让它看起来好像我没有运行 Apache?我认为最好的方法是看起来好像它是另一种类型的 httpd,如 lighthttpd 或 iis。我知道通过使用 mod_security 您可以将服务器签名更改为任何内容:

SecServerSignature "Microsoft IIS"
Run Code Online (Sandbox Code Playgroud)

有没有人知道隐藏正在使用的 HTTPD 的其他技巧?

Ale*_*lst 7

你为什么要尝试这个?

apache httpd 有很多明显和不明显的方式来展示自己。把时间花在真正的安全上。版本标识符、库存页面、HTTP 标头和加载的模块只是 Apache httpd 显示自身的一些方式。

运行 apache 并尽可能加载几个模块。将日志发送到另一台主机并进行实时日志分析。

设计您的系统,使 apache 的妥协不会导致直接访问您试图保护的任何内容。

  • 此外,大多数自动攻击根本不检查服务器指纹,正如我在 Apache 日志中看到的许多基于 iis+asp 的攻击尝试所证明的(反之亦然)。如果机器人不关心任何尝试,隐藏您的服务器运行的内容没有任何区别。 (2认同)

小智 5

有2种方式。最简单的方法是将其添加到您的 apache 配置文件中:

ServerSignature Off
ServerTokens Prod
Run Code Online (Sandbox Code Playgroud)

另一种是修改apache源码中的这个文件/src/include/httpd.h。改变 :

#define SERVER_BASEVENDOR “Apache Group”
#define SERVER_BASEPRODUCT “Apache”
#define SERVER_BASEREVISION “”
Run Code Online (Sandbox Code Playgroud)

define SERVER_BASEVENDOR: Microsoft
define SERVER_BASEPRODUCT: Microsoft-IIS
define SERVER_BASEREVISION: 5.0
Run Code Online (Sandbox Code Playgroud)

然后重新编译apache。

其他解决方案可能会退出,请在谷歌上尝试“Apache banner faking”。