通过mailto注入Javascript:

时间:2014-09-26 01:36:40

标签: javascript forms code-injection

我们假设我的HTML中有一个表单字段,其name属性为message。在这种形式中,用户将(应该)输入电子邮件的正文。然后,此电子邮件将通过Javascript从浏览器发送。我完成此操作的方法是在window.open()字符串上使用mailto:

function validateAndSend(form) {
    var body = form.message.value;

    window.open("mailto:email@example.com?body=" + body);
}

这种方法对我有用,但我担心它的安全性。我听说过SQL-Injection,,我想知道同样的事情是否适用于我的情况。

恶意用户是否有可能在表单字段中输入会造成伤害的内容,例如

  • 盗窃任何类型的信息
  • 执行自己的Javascript代码

我尝试了什么

  • 我在发送电子邮件之前添加了检查,以查看文本字段 包含至少一个字符,以避免高容量的垃圾邮件 电子邮件。
  • 我在输入文本中添加各种<script>标记以尝试通过输入运行我自己的代码的几个测试用例。这些恶意脚本只显示在电子邮件正文中,不会影响任何内容。

通过使用mailto:

,我是否容易受到Javascript注入攻击

1 个答案:

答案 0 :(得分:0)

mailto:将简单地加载该协议的默认处理程序,该处理程序由指定了主体的OS /浏览器定义。这最终与他们直接向您发送包含内容的电子邮件没有什么不同。

由于您谈到的是仍然出现在您试图清理的电子邮件正文中的恶意脚本,我认为您更关心的是直接向您发送该邮件并将其深入到您当前的问题中您忘了任何人都可以随时向您发送相同的电子邮件......: - )