Apache を実行しているという事実をどうやって隠すことができますか?

Apache を実行しているという事実をどうやって隠すことができますか?

Apache を実行していないように見せるにはどうしたらよいでしょうか。最善の方法は、lighthttpd や iis のような別の種類の httpd であるように見せることだと思います。mod_security を使用すると、サーバー署名を任意のものに変更できることはわかっています。

SecServerSignature "Microsoft IIS"

使用されている HTTPD を隠すための他のトリックを知っている人はいますか?

答え1

なぜこれを試みるのですか?

Apache httpd が自身を明らかにする明白な方法と明白でない方法が数多くあります。その代わりに、本当のセキュリティに時間を費やしてください。バージョン識別子、ストック ページ、HTTP ヘッダー、ロードされたモジュールは、Apache httpd が自身を明らかにする方法のほんの一部です。

可能な限りいくつかのモジュールをロードして Apache を実行します。ログを別のホストに送信し、リアルタイムのログ分析を実行します。

Apache の侵害によって保護対象に直接アクセスされることがないようにシステムを設計します。

答え2

方法は 2 つあります。最も簡単な方法は、Apache の設定ファイルに以下を追加することです。

ServerSignature Off
ServerTokens Prod

もう 1 つは、Apache ソース内のこのファイル /src/include/httpd.h を変更することです。変更内容:

#define SERVER_BASEVENDOR “Apache Group”
#define SERVER_BASEPRODUCT “Apache”
#define SERVER_BASEREVISION “”

define SERVER_BASEVENDOR: Microsoft
define SERVER_BASEPRODUCT: Microsoft-IIS
define SERVER_BASEREVISION: 5.0

次にApacheを再コンパイルします。

他の解決策が存在する可能性があります。Google で「Apache バナー偽造」を検索してください。

答え3

標準のエラー ページ (404、500 など) のスタイルと内容から、Apache が実行されていることがわかります。独自のエラー ページを指定します。

答え4

ホルストが述べたように、あなたは本当に疑問に思うべきですなぜあなたはホストを隠そうとしているのです。隠蔽とは1つセキュリティのためのメカニズムですが、最も弱いと想定されるので、より堅牢なセキュリティ アーキテクチャの 1 つのレイヤーのみにする必要があります。

ぜひレビューすることをお勧めしますApache の CIS ベンチマーク環境内で使用できるものはすべて実装します。NIST とともに、インターネット セキュリティ センターのベンチマークが標準構成のベースとしてよく使用されます。これは素晴らしいことです。Nessus のプロフェッショナル フィードには、CIS ベンチマークと比較するための監査ファイルが含まれているからです。さらに、これにより、簡単に監査できる標準構成への道が開かれ、多数の異なるシステムを適切に管理しようとすることに伴うリスクが大幅に軽減されます。

元の質問に戻ると、CIS Apache Benchmark v2.2では、情報漏洩防止のために以下の設定を推奨しています。

ServerTokens Prod
ServerSignature Off 

関連情報