Postfix での表示名のなりすましに対抗するための第一歩

Postfix での表示名のなりすましに対抗するための第一歩

最近、当社では顧客やサプライヤーになりすました表示名を偽装したメールを多数受信しています。残念ながら同僚はセキュリティ警告などにあまり注意を払っていないため、脅威を認識しているとは期待できませんでした。何時間も Google で検索しましたが、満足のいく解決策は見つかりませんでした。少なくとも、有料のサードパーティ ツールなどを使用しない簡単な解決策はありませんでした。

そこで、私はエレガントかつシンプルな解決策を見つけました。それは、header_checks ファイルに次の行を追加するというものです。

/^From: (.*@.*) (.*@.*)$/ REPLACE From: "PHISHING!!!" $2
/^Reply-To: (.*@.*) (.*@.*)$/ REPLACE Reply-To: "PHISHING!!!" $2

これらの 2 行は、基本的に From ヘッダーに 2 つの電子メール アドレスがあるかどうかを確認します。存在する場合、最初のアドレスが偽装されたものであると見なされます。次に、From ヘッダーを単純に書き換え、偽装された送信者を PHISHING に置き換え、実際の送信者アドレスを維持します。

その後は、変更した header_checks ファイルを Postfix にマップするだけです。

postmap -r header_checks

設定をリロードします:

postfix reload

header_check が正しく適用されているかどうかをテストします。

postmap -q "From: Fake Sender <[email protected]> <[email protected]>" regexp:/etc/postfix/header_checks

このコマンドは次のような結果を返します:

REPLACE From: "PHISHING!!!" <[email protected]>

ヒットが正の場合、出力はありません。負の場合、出力はありません。

これが同じ問題を抱えている誰かの役に立つことを願っています。

よろしく

答え1

会社のメールサーバーでこの問題が発生していました。独自のメールドメインを検証しているため、ログインユーザーのみが送信元として送信できます。そのため、構文を少し変更しました。

/^From: (.*@.*) <(.*@.*)>$/ REPLACE From: "[POSSIBLE PHISHING] $2" <$2>
/^Reply-To: (.*@.*) <(.*@.*)>$/ REPLACE Reply-To: "[POSSIBLE PHISHING] $2" <$2>

こうすることで、メールの受信者は送信者が誰であるかを知ることができます。会社の怠惰なユーザーが送信者名を自分のメール名に設定した場合、あなたのコードは誤検知を引き起こす可能性があります。お役に立てば幸いです

*もう一つはドメイン名を表示名として偽装することですが、これを修正するには次のコードを使用できます。

/^From: (.*)\.(.*) <(.*@.*)>$/ REPLACE From: $3 <$3>
/^Reply-To: (.*)\.(.*) <(.*@.*)>$/ REPLACE Reply-To: $3 <$3>

関連情報