是否有一个可以加载远程内容的HTML标签和CSS样式的封闭列表



在我们公司的后端,我们正在编程一个页面来查看收到的电子邮件。

我们希望保护我们的用户不被电子邮件发送者跟踪,因此显示的HTML不应该加载图像、javascript、远程CSS等

调查

最初的想法是通过设置某种"窗口/沙盒"查看器来保护远程内容(我们所有的代理都在受控版本中使用Thunderbird,所以我们不需要为所有浏览器通用代码(。

然而,这似乎是不可能的。根据这个问题,我如何防止iframe显示用于加载图像和其他电子邮件跟踪器的电子邮件?我们不能阻止浏览器加载它,所以我们必须预先解析HTML。

问题

我应该剥去什么标签?

我想知道是否有一个HTML标签的"封闭列表"可以强制加载远程内容。

例如,很明显,电子邮件中的任何javascript都将被删除。同样,我们将删除阻止src=属性进行远程调用的所有<IMG>标记。是的,我们知道,如果没有花哨的图像,电子邮件看起来会很难看,但我们需要防止"做一个很酷的展示"。

已探索

我们知道我们可以放弃HTML版本的电子邮件,而坚持使用文本版本。

但也有一些发件人只发送HTML,而不是文本+HTML。我们希望保留"一点格式"(字体大小、颜色、表格、粗体、斜体等(,并同意"取消"一些东西,如远程样式(只允许本地样式(、远程图像等。

我们想知道…

a(我们需要自己对要删除的标签和要留在HTML 中的标签进行调查

或者b(有任何已知的封闭列表告诉"可以导致远程加载的HTML元素是这个和那个"。

编辑

正如@NevNein所指出的,有一些非标记的东西可能会触发远程调用,例如<div style="background-image: url('https://some.tracking.link')"></div>

因此,问题扩大到:

有没有可以在浏览器中触发远程调用的html标签和css样式的封闭列表?

好消息是,您不必担心iframejavaScript,因为大多数电子邮件客户端都会禁用它们。

禁用图像的问题是,有些电子邮件的内容只在图像中。

要剥离的几个标签将包括linkimgbackground-imagebackground。有关电子邮件客户端支持哪些标签的良好指南,请访问:https://www.campaignmonitor.com/css/

最新更新