« パッチパネルを使って配線しよう | Main | bind 製品情報隠蔽 »

October 18, 2004

HTTPヘッダー研究その1: apache製品情報隠蔽しよう

HTTPヘッダーって見たことありますか? 見てみると製品情報がバレバレです。

---------------------------------------------------
% telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
HEAD / HTTP/1.0

HTTP/1.1 200 OK
Date: Mon, 18 Oct 2004 11:23:39 GMT
Server: Apache/1.3.31 (Unix)
Last-Modified: Fri, 10 Oct 2003 11:39:51 GMT
ETag: "b7d74-64-3f869a87"
Accept-Ranges: bytes
Content-Length: 100
Connection: close
Content-Type: text/html
---------------------------------------------------

こんな製品情報を出しておく合理的な理由は特にないです。悪意を持ったユーザが
こんな情報をこんな簡単な方法で入手できるのも問題です。そこで今回は
apacheでの製品情報隠蔽方法をご紹介します。


【apacheでの製品情報隠蔽方法】

以下の要領でファイルを書き換え、通常の方法でコンパイルすればOKです。
既にインストールされているapacheの場合でも再コンパイルが必要となります。


※apache1.3系の場合
include/httpd.h
 #define SERVER_BASEPRODUCT "Apache"
 #define SERVER_BASEREVISION "1.3.31"

 #define SERVER_BASEPRODUCT "HogeHoge"
 #define SERVER_BASEREVISION ""

※apache2.0系 の場合
include/ap_release.h
#define AP_SERVER_BASEPRODUCT "Apache"
#define AP_SERVER_BASEREVISION AP_SERVER_MINORREVISION "." AP_SERVER_PATCHLEVEL
 ↓
#define AP_SERVER_BASEPRODUCT "HogeHoge"
#define AP_SERVER_BASEREVISION ""


すると以下のようになります。

---------------------------------------------------
HTTP/1.1 200 OK
Date: Mon, 18 Oct 2004 11:23:39 GMT
Server: HogeHoge/ (Unix)
Last-Modified: Fri, 10 Oct 2003 11:39:51 GMT
ETag: "b7d74-64-3f869a87"
Accept-Ranges: bytes
Content-Length: 100
Connection: close
Content-Type: text/html
---------------------------------------------------

※ただしapacheの世界シェアは7割以上ということもあり、こんな隠蔽をしてもapacheであることはバレバレだと思ったほうがよいです。今回の対応は、まあやらないよりはやっておいたほうがよいくらいに思ったほうがよいでしょう。

|

« パッチパネルを使って配線しよう | Main | bind 製品情報隠蔽 »

WEBサーバ 【人気】」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/32004/1710099

Listed below are links to weblogs that reference HTTPヘッダー研究その1: apache製品情報隠蔽しよう:

« パッチパネルを使って配線しよう | Main | bind 製品情報隠蔽 »