背景:我有一个主要通过 HTTP 提供服务的 Web 应用程序 example.com、example.com/faq 等都通过 HTTP 提供服务。这些页面提供有关应用程序的公共信息,然后当用户登录时,他们会转到https://example.com/account。/account 页面始终通过 SSL (HTTPS) 提供。注意:我可以通过 HTTPS 提供所有服务,但延迟较慢并且会损害用户体验。
IFRAME:这就是 iframe 的用武之地。/account 页面使用安全 cookie 来存储用户数据(会话 ID、用户名、用户分数、最新用户操作),我希望这些 cookie 始终保持最新状态(即使当用户在 HTTP 页面上时)。因此,我在所有指向https://example.com/account/update的 HTTP 页面上嵌入了一个 1px 隐藏 iframe,其中包含以下内容:
<html>
<head>
<title>
KEEP APP UPDATED
</title>
<script>
(Include jQuery)
setInterval(function(){$ajax('https://example.com/account/update/latest-user-data')}, 5000);
<script>
</head>
<body>
</body>
</html>
我应该注意,为了允许这个 iframe,我需要在我的服务器上为这个页面禁用 X-FRAME-OPTIONS。
问题:这有任何安全问题吗?点击劫持是主要威胁吗?更重要的是,攻击者能否访问那些安全的 cookie 或访问 iframe 中运行的 iframe Javascript 变量等?