web-dev-qa-db-ja.com

mailtoリンクの活用

ユーザーにmailto:スニペットの後にコンテンツを含める権限があるとすると、セキュリティの脆弱性はありますか?

例:

ユーザーは自分のメールアドレスはfooであると言っています。ページ上のリンク(全員に表示されます)は<a href="mailto:foo">foo</a>になります。

このことを悪用する方法があるかどうか知りたいです。

3
Ionică Bizău

メールを次のように入力した場合

_"></a><script>alert("XSS")</script><a href="
_

アプリケーションによって次のようにレンダリングされる場合があります

<a href="mailto:"></a><script>alert("XSS")</script><a href="">"></a><script>alert("XSS")</script><a href="</a>

Stored XSS脆弱性 が発生します。

これを防ぐには、アプリケーションで電子メールの値をURLパーセントエンコードしてからHTMLエンコードする必要があります。

4
SilverlightFox