Mail.ruメールセキュリティの問題

2年前、フィードバックフォーム用の簡単なPHPスクリプトを作成しました。 mail.ruに手紙が届きました。 後でわかったように、スクリプトにエラーがありました。 「差出人」に、クライアントのメールアドレスを挿入しました(実際、送信者を偽装しました)が、手紙は届きました。



ソースコード:



$email = $_POST['email']; $headers .= "From: " . $email . "\r\n";
      
      





そして、それほど前ではないのですが、アプリケーションが来なくなるのに気づきました...フォームをチェックしました-動作しません。 誰も何も触らなかったので、戸惑いました。そして2年間、すべてがうまくいきました。 実験中に、このコードを使用すると次のことがわかりました。



 $email = " <help@sberbank.ru"; $headers .= "From: " . $email . ">>\r\n";
      
      





その後送信者(この場合はSberbank)を完全に偽造できます。



画像



画像



受信トレイに手紙が届きます。 初めてではないスパムの判定方法。 Mail.ruインターフェースでは「送信者の信頼性を確認できません」と表示されますが、プログラム(Outlookなど)を使用してメールを収集する場合、当然のことながら碑文はありません。



重要な場所は、オプションの「>」文字です。 この記号がないと、送信者が偽造された手紙は予想どおりに届きません。 明らかに、Mail.ruにはヘッダーの処理中にエラーがあります。



Yandexでこのバグを確認しました。 Yandexにこのような問題はありません(偽の送信者とのメッセージを迷惑メールフォルダーに移動させません)。



PS Mail.ruの代表者は、「この状況を間違いだとは考えていません」(引用は正確です)なので、私はこの情報を明確な良心をもって投稿しています。



All Articles