105

查看在我自己的订单中嵌入 3D Secure 页面的选项,我遇到了以下问题:

“一些商业网站会将完整的浏览器页面用于身份验证,而不是使用框架(不一定是 iFrame,反正这是一个不太安全的对象)。”

来自http://en.wikipedia.org/wiki/3-D_Secure

有人可以告诉我为什么iframe 与普通框架相比不那么安全并导致问题吗?基本的区别是什么?

我看到iframe的方式,就是要走的路。

4

7 回答 7

73

不同之处在于 iframe 能够在页面内容中“浮动”,也就是说,您可以创建一个 html 页面并在其中放置一个 iframe。这允许您拥有一个页面并将另一个文档直接放入其中。Aframeset允许您将屏幕分成不同的页面(水平和垂直)并在每个部分显示不同的文档。

阅读IFrame 安全摘要

于 2009-07-03T12:32:17.773 回答
18

IFrame 只是一个“内部框架”。它被认为不太安全的原因(比根本不使用任何类型的框架)是因为您可以包含并非源自您的域的内容。

这意味着您应该信任 iFrame 或常规框架中包含的任何内容。

框架和 IFrame 同样安全(如果您包含来自不受信任来源的内容,则不安全)。

于 2009-07-03T12:33:02.047 回答
10

iframes 被大量用于包含完整的页面。当这些页面托管在另一个域上时,您会遇到跨端脚本和东西的问题。有办法解决这个问题。

框架用于将您的页面分成多个部分(例如,左侧的导航菜单)。不再推荐使用它们。

于 2009-07-03T12:57:56.603 回答
7

我能想到的唯一原因实际上是在你提到的维基文章中提到了几个......

““Visa 验证”系统受到了一些批评,因为用户很难区分合法的“Visa 验证”弹出窗口或内联框架与欺诈性钓鱼网站。”

“截至 2008 年,大多数 Web 浏览器不提供简单的方法来检查 iframe 内容的安全证书”

如果您阅读文章中的批评部分,它会详细说明所有潜在的安全漏洞。

否则,唯一的区别是IFrame是内联框架,而FrameFrameset的一部分。这意味着更多的布局问题!

于 2009-07-03T12:31:32.080 回答
5

内嵌框架只是一个“盒子”,您可以将其放置在您网站的任何位置。框架是一堆“盒子”,它们放在一起构成一个包含许多页面的网站。

于 2011-01-09T11:39:16.217 回答
4

<frame>基本上标签和标签之间的区别<iframe>是:

当我们使用<frame>标签时,网页的内容由仅使用<frame><frameset>标签创建的框架组成(<body>使用标签):

<html>
<head>
<title>HTML Frames</title>
</head>
<frameset rows="20%,70%,10%">
   <frame name="top" src="/html/top.html" />
   <frame name="main" src="/html/main.html" />
   <frame name="bottom" src="/html/bottom.html" />
</frameset>
</html>

当我们使用时<iframe>,网页内容不包含框架,网页内容是通过使用<body>标签(不使用and<frame><frameset>标签)创建的:

<html>
<head>
<title>HTML Iframes</title>
</head>
<body>
<p>See the video</p>
 <iframe width="854" height="480" src="https://www.youtube.com/embed/2eabXBvw4oI"
    frameborder="0"    allowfullscreen>
  </iframe>
</body>
</html>

因此<iframe>,只需将一些其他来源的文档带到网页。<iframe>用于指定内联浮动帧。万维网联盟 (W3C)<iframe>在 HTML 4.01 中包含了该功能。

<frameset>标签用于创建带有标签的框架,<frame>同时<iframe>实现<frame><frameset>标签的功能。与<frame>标签不同,<iframe>标签也可以放置在<body>标签内。

放置<iframe>很容易,编码人员可以轻松地将<iframe>标签放在其他网页标签中,<iframe>如果他/她愿意,还可以添加几个标签。另一方面,放置<frame>标签<frameset>有点复杂。

注意: <frame>标签和<frameset>标签在 HTML5 中已弃用

因此,现在不推荐使用<frame>and<frameset>标签,因此 Web 开发人员使用<body>标签来创建网页的内容,并将其他一些源文档嵌入到网页<iframe>标签中。但是,甚至<frame>标签也被用来在网页中嵌入其他来源的文档,甚至<iframe>标签也被用来创建框架。

于 2021-05-30T20:37:56.840 回答
-1

虽然安全性相同,但欺诈性应用程序使用 iframe 欺骗用户可能更容易,因为他们在框架放置位置方面具有更大的灵活性。

于 2013-08-19T23:59:37.940 回答