记住ActiveX控件,这是Web的最大错误

什么是ActiveX控件

ActiveX控件是一种可以嵌入到其他应用程序中的程序。Microsoft将它们用于各种目的-例如,您可以将ActiveX控件嵌入到Microsoft Office文档中。但是,在这里,我们专注于Web上的ActiveX。从1996年的Internet Explorer 3.0开始,Microsoft允许Web开发人员在其网页中嵌入ActiveX控件。

那时,当您访问网页时,Internet Explorer会提示您下载并运行该网页指定的任何ActiveX控件。

流行的Internet Explorer插件(如Adobe Flash,Adobe Shockwave,RealPlayer,Apple QuickTime和Windows Media Player)是使用ActiveX控件实现的。

038600d13c5ffdf

安全从一开始就是一个问题

90年代是不同的时期,这也给我们带来 了Office文档中危险的宏。最初,ActiveX控件与计算机上的任何其他程序一样。启动ActiveX控件时,它具有对计算机上所有内容的完全访问权限。

换句话说,您可能会在Internet Explorer中访问网页并看到提示,指出该网页要运行游戏或其他程序。如果您同意,ActiveX控件将能够对计算机上的所有文件和程序执行其所需的任何操作。很容易看出这对于恶意软件是多么理想。

这与Sun的Java技术形成了鲜明的对比。当时,Java还用于在Web浏览器中的Web页面上运行程序。但是,Java试图通过使用沙箱来限制这些程序可以做什么。Web浏览器中的Java最终具有悠久的安全漏洞历史-但至少Java试图限制应用程序可以做什么。

文章继续说明Microsoft包含了一个名为Authenticode的“问责制”系统。软件开发人员可以选择给他们的ActiveX控件加上数字签名,但这不是强制性的。如果创建签名的控件,则可以更轻松地跟踪创建恶意ActiveX控件的开发人员。

由于Microsoft最初依赖荣誉系统,因此很容易看出ActiveX如何成为向Internet Explorer用户提供恶意软件和间谍软件的流行方式。

ActiveX是为旧网络设计的

曾经有一段时间,网络技术不是很强大。如果您需要比文本和图像更高级的功能(即使您只是想将视频嵌入网页中),则需要某种浏览器插件。

ActiveX专为当今世界而设计,您无法使用HTML,JavaScript和其他现代技术来创建复杂的功能齐全的应用程序。

许多组织转向ActiveX控件向其网站添加功能。许多企业也在内部使用ActiveX控件将程序快速交付到其商用PC。当您使用Internet Explorer访问这些网页之一时,它将提示您下载ActiveX控件,并且您将在运行该程序。

很好,很容易-太容易了。也许那会在一切都值得信赖的公司内部网络(Intranet)上实现。但是在不受限制的网络上,这引起了很多问题。

ActiveX是一个安全问题

从概念上讲,ActiveX有两个大的安全性问题。首先,恶意网站可能会提示您安装恶意ActiveX控件,Internet Explorer用户非常容易同意该提示并进行安装。

其次,合法的ActiveX控件中的错误可能是一个问题。例如,如果您安装了过时的Adobe Flash版本,则恶意网站可能会利用该漏洞并获得对整个计算机的访问权限,因为Flash之类的ActiveX控件可以访问整个计算机。

实际上,这很重要,因为ActiveX控件通常没有自动更新系统。

随着时间的推移,Microsoft不断加强安全设置,并增加了诸如“保护模式”和“增强保护模式”之类的额外保护。例如,Internet Explorer有一个内置的过期ActiveX控件列表 ,它拒绝加载。Internet Explorer在下载和加载ActiveX控件之前会提供其他警告。例如,引入了其他安全设置,这些设置使ActiveX控件的创建者可以将ActiveX控件限制为仅在某些网站上运行。

例子:微软的网站曾经需要一个Akamai的“下载管理器” ActiveX控件来下载某些文件。此下载管理器需要完全访问您的整个计算机,当然,它只能在Internet Explorer中运行。毫不奇怪,此Download Manager程序具有其自身的安全漏洞。这听起来真的是一个不错的下载文件的解决方案,而不仅仅是依靠您的Web浏览器的内置文件下载器吗?

b22432b590878e4

ActiveX控件不是跨平台的

ActiveX是一项Microsoft技术,在Windows的Internet Explorer中运行得最好。有一些插件增加了对竞争浏览器的支持,例如Netscape Navigator(Mozilla Firefox的始祖),但实际上所有这些都是关于Internet Explorer的。

从技术上讲,ActiveX是跨平台的。Microsoft向Mac的Internet Explorer添加了ActiveX支持。但是,与Java(跨平台)不同,为Windows编写的ActiveX控件在Mac上不起作用。开发人员必须为Mac创建ActiveX控件。

例如,韩国对ActiveX控件进行了标准化,该控件是90年代访问安全的金融和政府网站所必需的。它直到2020年才完全关闭,并且对ActiveX的依赖迫使人们长时间使用该古老的过时技术。正如华盛顿邮报曾经写道,“韩国[是]坚持与Internet Explorer网上购物”在2013年的文章介绍了Mac用户如何不得不依靠在他们的办公室台式电脑,网吧,旧电脑,或新兵训练营,以在线购买。

这种情况在其他地方也以类似的方式出现:在ActiveX上进行标准化以交付内部应用程序的公司不得不依赖Windows上的Internet Explorer,直到他们将ActiveX抛在后面。

现代网络如何变得更好

从安全角度来看,现代网络要好得多。加载网页时,您的Web浏览器会在其自己的隔离沙箱中加载并运行该网页。网络浏览器不依赖ActiveX,Java,Flash或运行部分网页的任何其他类型的第三方程序。

网站无法提供完全访问您计算机上所有内容的代码,例如,如果不下载完全在Windows浏览器外部运行的EXE文件,则无法实现。

您的Web浏览器会自动进行自我更新,因此不会像ActiveX那样存在遗留古老代码的情况,并且无需获取安全补丁即可保持网页的可访问性。

2020年底完全废除Web技术之前,甚至Flash内容也比ActiveX更安全。例如,谷歌浏览器在沙盒中运行Flash。恶意的Flash小程序必须使用一个漏洞来逃脱Adobe Flash本身中的沙箱,然后使用另一个漏洞来逃避Google Chrome中的插件沙箱才能完全访问计算机。

当然,现代网络是跨平台的。您可以在任何喜欢的平台上使用选择的任何浏览器。您不会在Windows上使用Internet Explorer,因为您使用的网站需要仅在该浏览器中的Windows上才能使用的ActiveX控件。

并且可以肯定,您安装的大多数浏览器扩展程序都可以访问您在Web浏览器中执行的所有操作-但至少它们不能访问您的整个计算机。

Windows 10上的ActiveX控件

到2021年,Windows 10的现代版本仍支持ActiveX控件。但是,您必须使用旧版Internet Explorer 11浏览器,但Microsoft Edge不支持ActiveX控件。

今天,一些企业和其他组织仍在使用ActiveX控件,因此Microsoft尚未删除对它的支持。

未经允许不得转载:表盘吧 » 记住ActiveX控件,这是Web的最大错误