« パッチパネルを使って配線しよう | Main | 404エラー用ページを用意しよう(apache編) »

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 | 404エラー用ページを用意しよう(apache編) »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack


Listed below are links to weblogs that reference HTTPヘッダー研究その1: apacheソフトウェア情報隠蔽しよう:

« パッチパネルを使って配線しよう | Main | 404エラー用ページを用意しよう(apache編) »