2015-05-31 15 views
0

我很想知道如何在网页上添加水印,例如,互联网提供商的标志。我没有要求HTML或CSS的代码示例。我正在考虑代理服务器,它将为用户试图访问的任何网页添加水印。代理服务器在用户请求HTTPS网站时应如何处理?除了代理服务器之外,还有其他方法可以尝试吗?在网页上添加水印 - 体系结构

感谢所有的答案

+3

不这样做。 – SLaks

+0

嗯,我的问题不是“如果我在网页上添加水印是否可以?”,无论如何感谢您的回复。为什么你认为我不应该那样做? – user2305208

+0

这是让你的用户轻视你的好方法。自动安全地更改任意页面的布局也是不可能的。 – SLaks

回答

0

摘要:你真的不想这样做。

只有一种方法可以幸运地做到这一点,它很丑陋,不可靠和不安全。您必须将您的代理配置为充当HTTPS终结器,该终结器拦截从客户端创建的连接并创建到目标站点的新连接。现在您可以在将数据发送到客户端之前修改数据。

但是,客户端期望使用正确的证书签名的加密连接。您没有此证书,因此所有浏览器都会终止连接,或者如果您使用自己的证书重新签名,则会抱怨无效的证书。这将导致每个客户端上的巨大错误消息,所以这将是一个问题。

您可以通过在适用于所有站点的所有客户机上安装新的自签名根证书并使用此证书签署数据来避免此情况。现在,您的客户将接受连接,并将愉快地显示修改的网站。

但是,现在您打破了TLS隐含的信任链,您现在单独负责客户端和目标之间的安全性。当我连接到我的银行时,TLS的存在确保我能够:a)连接到我的银行的真实网站,以及b)没有人可以拦截我的登录信息。您已经破坏了A和B,因为我再也不能相信我已经连接到了我打算访问的真实网站,您或任何恶意的第三方可以拦截并阅读我与我的银行之间的流量,只是滥用/黑客您的代理服务器。

此外,像HTTP Public Key Pinning这样的技术,网站和浏览器都在针对防火墙供应商,AV公司和ISP这样的坏主意对抗自己。因为这就是这个,这是一个非常糟糕的主意。

请不要这样做。

+0

感谢亚历克斯的答案。我认为使用HTTPS会很困难,但现在我清楚地看到它不应该这样做。所以用HTTP不应该有任何(大)问题,对吧? – user2305208

+0

最有可能不是,但它取决于具体的实施和环境。说实话,我不明白你为什么要这么做。 – Alex

+0

我很感兴趣,如果有可能做到这一点,如果是我想尝试实施它。例如。任何使用家庭WiFi网络的人在访问任何网站时都会看到“Anon提供的互联网连接”。 – user2305208