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

東急ハンズ 宜野湾コンベンションシティ店
沖縄で多店舗展開しているサンエーの新店が 宜野湾コンベンションシティ で、7/5 にオープンします。# "サンエーはイトーヨーカドーみたいな感じ" と言うと、ないちゃーは大抵理解し
辛つけ麺 (大盛 500g)
東京オフィスから神保町方面に 4, 5 分靖国通り沿いを歩くと、つけ麺さとう があります。ランチ時に限りませんが、入口手前の慣れないと見落とすところにトッピング無料券があります。味玉温野菜ネギ中に入っ
ミニストップ 沖縄フェア (7)
ミニストップ (沖縄フェア Part 1) の続きです。出社前にオフィスに近い神田美土代町店を訪れた後、お昼休みを利用して神田錦町 1 丁目店を訪れました。神田錦町 1 丁目店の方が、店内飲食スペース
ガーリックチャーハン + コンビーフハッシュ (9)
ガーリックチャーハン + コンビーフハッシュ (Part 1) の続きです。銀座わしたショップ 2014/07/03 (コンビーフハッシュ) でも、沖縄ホーメルのコンビーフハッシュ (大 135g)
Firefox Logo
明け方散歩から帰って来て、開きっぱなしの facebook (Windows PC, Firefox) の見映えが変わっていました。等幅フォントに変わったというか、ビットマップフォントが無理矢理伸び縮
カツカレー
"3500 円のカレー" で賑やかな世間を尻目に、庶民のカレーを食べに行きました。有名な キッチン南海 の神保町店です。小川町のオフィスそばにもありますが、本当かどうかは別にして店
ごぼう天うどん
靖国通りを小川町方面によく行き来しますが、スターバックス (神田小川町 2 丁目店) のそばに見掛ける立て看板が気になっていました。豊前うどん 武膳 といううどん店の様ですが、何度か見掛けて気になって
山形水ラーメン
久しぶりに訪れた Pour~cafe’ (ロコモコ テリヤキソース) から 3 ヶ月程空きましたが、再び Pour~cafe’ (プルーカフェ) を訪れました。夏真っ盛りで暑い気候でしたし
FreeBSD Logo
Migrate 32bit to 64bit (FreeBSD, PostgreSQL) に続いて、単なるデータコピーで移行が完了しないケースに 1 つに GDBM (GNU dbm) があります。現
2013 年産ダイヤモンド麦芽の恵み 初仕込 (4)
うまい ! がすごい。クリーミー生サーバー (Part 2) の "絶対もらえるキャンペーン" が終わると、シリアルナンバーの登録画面がすぐに次のキャンペーンの告知に切り替わりまし
Valid HTML5 Valid CSS3 Another HTML Lint