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

CPU ファン側 シリコングリス付着
ここ最近、沖縄出張前に必ず身近な機器がグズります。前々回は携帯電話の機器交換で前回はノート PC の OS 再インストールでしたが、今回は My DeskTop が再び CPU Temperature
乱切りカットステーキ 300g (1)
今日は 29 日で肉の日ですので、前回 いきなり ! ステーキ (アンガス CAB 肩ロースステーキ 300g) をチョイスした時から気になっていた乱切りカットステーキを求めて、再び訪れました。ランチ
Facebook, WordPress Logo
twitter や facebook のいいね ! ボタンを埋め込みたい場合、それぞれから提供されるタグでそのまま Valid とされることは経験上ほぼありません。(特に Another HTML L
白身 3 品盛 (真鯛・小庄鯛・天然ヒラメ)
築地食堂 源ちゃん (夜会 Part 1) に続いて、いよいよメインとなるおつまみの登場です。黒板メニューからチョイス。最近やけにカツオが食べたいと思っていた矢先に見つけたので、飛びつきました。オレン
2013 年産ダイヤモンド麦芽の恵み 初仕込 (12)
2013 年産ダイヤモンド麦芽の恵み 初仕込 ザ・プレミアム・モルツ (Part 1) の続きです。2013/12/09 に終了した "絶対もらえるキャンペーン" で、2014/0
日本最西端の碑
与那国島 (No. 4 – 久部良港) の続きです。西崎灯台に向かう道も当然の様に坂道です。途中まで自転車を押し上げて移動しましたが、小さな駐車場があり、そこからは遊歩道を歩いて登ります。
hamburger with fries
サービス向上を勘違いしているマクドナルド (Part 1) の続きです。完成品の未完成さここ は半分パロディも含んでいるでしょうが、パロディとは思えない写真も含まれています。すでに "質を選
浜比嘉島 (11)
浜比嘉島 (No. 1 – 浜比嘉大橋) の続きです。浜比嘉大橋を渡り切ったほぼ正面に、なんと浜行き・比嘉行きと書かれているではありませんか。3, 4 回は来ているはずですが、初めて知りま
ロース豚丼 十勝仕立て 大盛
ここ最近、手速く食事を済ます場合は松屋が多く、行動半径内には 2 店舗あるにも関わらず、久しく吉野家に入った記憶がありませんでした。ふと思い出したかの様に、ある日最寄り駅そばの吉野家の前を通ると、以前
瀬底大橋 (5)
沖縄本島 (No. 23 – Cafe やぶさち) の続きです。ゴールデンウィーク後半は、沖縄本島 (No. 8 – 渡久地港) で NG だった水納島に今度こそ行こうと計画し
Valid HTML5 Valid CSS3 Another HTML Lint