sendmail セキュリティ

sendmailセキュリティ (Security Professional Series)

sendmailセキュリティ (Security Professional Series)

この本を読んで復習のはずが、知らないことがいっぱい。まだまだ...

  • (P38)
  • Apparently-To, Apparently-From
  • (P42)
  • In-Reply-To
    • どのメッセージに対する返答であるかを示している
    • MUA がこのヘッダと Referenceヘッダを組み合わせてツリー構造でやりとりを表示
  • Reference
    • このメッセージ以前に交換された関連のメッセージを並べる
    • In-Reply-To の補助として利用
  • (P46)
  • X-UIDL
    • POP デーモンがメッセージごとに一意の識別子をつける
  • (P109)
  • 3.4.2 メールの転送
  • (1) alias
    • sendmail.cf の AliasFile= で指定されるファイルに書き込む
    • define(`confPRIVACY_FLAGS', `goaway')としておくと expn されても表示しない
    • alias ファイルに "xx: :include:/var/include/users" と書くとMLとなる
    • すべてのエラーメールのコピーをあるメールアドレスに集める
    • define(`confCOPY_ERRORS_TO',`postmaster,securitymaster')dnl
    • securitymaster を alias で誰かに設定する
    • プログラムの起動は 「| "/usr/local/fml/fml.pl arg"」「"| /usr/local/fml/fml.pl arg"」
    • プログラムの起動を禁止するには sendmail.cf の
  • (2) .forward ファイルの場所
    • define(`confFORWARD_PATH',`/usr/local/etc/forwards/$u:$z/.forward')dnl
    • /usr/local/etc/forwards/[ログイン名]、[ホームディレクトリ]/.forward に置く
    • 先に書いた方 *だけ* を見る
    • .forward ファイル
      • \user1,user2@example.jp でローカルに残しつつ転送
      • \user1,/home/user1/mail.backup はローカルに残しつつファイルにも保存
      • 書き込むファイルのディレクトリを制限する define(`confSAFE_FILE_ENV',`/archi')dnl
  • 3.4.4 起動プログラムの制限 smrsh
    • smrsh (SendMail Restricted SHell)
    • 管理者が許可した特定のコマンドやプログラム以外は実行できない、CERTで推奨
    • .forward に | "/tmp/bin/x.sh"
    • 何もしてないと smrsh: x.sh not available for sendmail programs
    • 対策 ln -s /home/usr1/bin/ml.pl /usr/adm/sm.bin
    • sendmail.cf の Mprog の P で指定
  • 3.4.5 sendmail を利用したアタック
  • (1)キューを使用したメッセージの偽装
    • mqueue(Queuedirectory=)にあるファイルは sendmail が信用するのでここにうそのデータを置くとそのメールが送信される
    • 対策は define(confTEMP_FILE_MODE',`0600')dnl でデフォルトのパーミッションを 0600 にする
  • (2)個人情報の流出を防ぐ
    • expn の抑制
    • define(`confPRIVACY_FLAGS',`フラグ')dnl
  • (3)DoS攻撃に対する対策
    • 同時プロセス数の制限
    • define(`confMAX_DAEMON_CHILDREN',`20')dnl
    • コネクション数の制限
    • define(`confCONNECTION_RATE_THROTTLE',`20')dnl
    • メッセージの大きさ
    • define(`confMAX_MESSAGE_SIZE',`1048576')dnl
    • ヘッダの大きさ
    • define(`confMAX_HEADERS_LENGTH',`16384')dnl
    • define(`confMAX_MIME_HEADERS_LENGTH',`32768')dnl

P130まで