Home » Program » バージョン隠蔽 (sendmail) (Tag: )

インターネット上にサービスを公開しているサーバは、そのバージョン情報を表示しないことが 1 つの安全策として語られています。

最近の DoS の傾向を見ているとそれ程有用性が高いとも感じませんが、1 つのポリシーとしては依然有効と見ています。ここでは、sendmail の対応方法について説明します。

SmtpGreetingMessage (sendmail.cf)

変更前:

O SmtpGreetingMessage=$j Sendmail $v/$Z; $b

変更後:

O SmtpGreetingMessage=$j Drive Network SMTP Server Ready

マクロ $v と $Z がバージョン情報を展開するため、削除するか好みのメッセージに変更します。$v は sendmail バイナリバージョンで、$Z は sendmail.cf 内の DZ の値が展開されます。

Received: (sendmail.cf)

変更前:

HReceived: $?sfrom $s $.$?_($?s$|from $.$_)
        $.$?{auth_type}(authenticated$?{auth_ssf} bits=${auth_ssf}$.)
        $.by $j ($v/$Z)$?r with $r$. id $i$?{tls_version}
        (version=${tls_version} cipher=${cipher} bits=${cipher_bits} verify=${verify})$.$?u
        for $u; $|;
        $.$b$?g
        (envelope-from $g)$.

変更後:

HReceived: $?sfrom $s $.$?_($?s$|from $.$_)
        $.by $j$?r with $r$. id $i$?{tls_version}
        (version=${tls_version} cipher=${cipher} bits=${cipher_bits}); $|;$.
        $b

上記の例では、$v, $Z 以外に smtp auth に関する行や envelope-from の行をすべて削除しています。アカウント情報の漏洩につながりかねないので、削除した方が無難と考えます。

helpfile

diff:

16c16
< #smtp This is sendmail version $v
---
> smtp  This is sendmail version $v
23,24c23,24
< #smtp To report bugs in the implementation see
< #smtp         http://www.sendmail.org/email-addresses.html
---
> smtp  To report bugs in the implementation see
> smtp          http://www.sendmail.org/email-addresses.html
63c63
< quit          Exit SMTP.
---
> quit          Exit sendmail (SMTP).
71c71
< verb          by humans and other implementations.
---
> verb          by humans and other sendmail implementations.
133,136c133,136
< control       restart         Restart.
< control       shutdown        Shutdown.
< control       status          Show Status.
< control       mstat           Show Status (machine readable format).
---
> control       restart         Restart sendmail.
> control       shutdown        Shutdown sendmail.
> control       status          Show sendmail status.
> control       mstat           Show sendmail status (machine readable format).

$v 以外にも sendmail に関する文字も消すことで、バージョンだけでなくプログラム名も隠蔽することが出来ます。

helpfile は変更後ただちに反映しますが、sendmail.cf は変更後 sendmail の再起動が必要です。

Random Select

一番搾り FROZEN GARDEN
一番搾り フローズン <生> の続きです。8/13 – 8/17 はお盆期間ということで、12:00 – 22:00 での営業時間とのこと。8/14 はお盆期間だか
WS-C2960S-48TS-L (1)
先日、Drive Network サービスで提供する基本環境の大半を FreeBSD 7.1-RELEASE i386 -> FreeBSD 9.1-RELEASE amd64 に移行しましたが
ボンディ 通信販売 パッケージ (2)
欧風カレー ボンディ (チキンカレー レシピ) で東京出張に来たスタッフが、ボンディを恋しがっている話を小耳に挟みました。一方、ホームページ 欧風カレー ボンディ で通信販売をしていることも気が付いて
FreeBSD Logo
PHP 4.4.9 + OpenSSL 0.9.8 系の環境を OpenSSL 1.0.1j にアップデートした際に躓いた点を整理します。configure は通りますが make で以下の様にストッ
与那国島 (4)
与那国島 (No. 1 – 出発) の続きです。さて、到着しました。予想していたより湿気もなく、日射しは強いけど涼しい感じです。手荷物受取場のゲートがあるすぐ右側に、見慣れたポスター。20
ぶっかけ (冷)
実は 1 人で食べに行って、自分のお金でうどんを食べることは今までありませんでした。小さい頃のトラウマなのでしょうか、どうもうどんが好きになれず、断然そば派。つけ麺もうどんの面影があるので挑戦に二の足
W ステーキ
松屋の 牛焼肉各種定食 増量キャンペーン開催 ! が気になって入ってからスイッチが入り、先週はすっかり肉食ウィークでした。少し前から、丸香やエチオピアに行く手前の靖国通り沿いに見掛ける看板 BISTR
日替り (縞ほっけ)
久しぶりに 日本一美味しいサバの塩焼き でご紹介した いさば を訪れました。ここ最近はとなりの 元祖 博多チャンポン ハカタノチカラ が続いていたので、久しぶりの焼き魚です。当然の様にサバを目当てに訪
丸焼きチキン (2)
久高島 (No. 6 – ふたたび) の続きです。以前から 沖縄県産やんばる若鶏の丸焼き専門店ブエノチキン浦添 を試してみたいと思いつつも機会がなく、去年予約まで入れたものの 沖縄本島 (
Drive Network Core (WS-C3750E-48TD-E)
現在 Drive Network では L2, L3 スイッチが 20 台以上が稼働しています。過去 10 年程 Cisco Catalyst シリーズを使用して来て物理障害は一度もありませんが、設定
Valid HTML5 Valid CSS3 Another HTML Lint