Открыть сервис

ActiveX

ActiveX — это устаревшая программная технология, разработанная корпорацией Microsoft в середине 1990-х годов, предназначенная для создания интерактивных компонентов и элементов управления, которые могут встраиваться в веб-страницы или выполняться в среде операционной системы Windows. Технология основана на модели COM (Component Object Model) и позволяет приложениям и веб-браузерам (прежде всего Internet Explorer) загружать и выполнять код, написанный на различных языках программирования, таких как C++, Visual Basic или Delphi. ActiveX-компоненты могут выполнять широкий спектр задач: от отображения мультимедийного контента до полноценного доступа к файловой системе и реестру компьютера. Из-за серьёзных уязвимостей в системе безопасности и появления более безопасных альтернатив (например, HTML5, JavaScript, Flash), технология ActiveX была признана устаревшей и в современных версиях браузеров (включая Microsoft Edge) не поддерживается.

История

Разработка и появление

Технология ActiveX была анонсирована Microsoft в 1996 году как эволюция более ранних технологий OLE (Object Linking and Embedding) и COM. Первоначально она позиционировалась как средство для создания «активного контента» в вебе — динамических элементов, которые могли бы конкурировать с Java-апплетами и технологией Netscape Plugins. В 1997 году ActiveX стал ключевым компонентом браузера Internet Explorer 3.0 и был интегрирован в операционную систему Windows 95 OSR2.

Пик популярности и проблемы

В конце 1990-х — начале 2000-х годов ActiveX широко применялся для создания веб-приложений, требующих высокого уровня интерактивности: онлайн-банкинга, корпоративных систем, мультимедийных проигрывателей (например, Windows Media Player) и офисных плагинов. Однако технология подвергалась критике за низкий уровень безопасности. ActiveX-компоненты имеют полный доступ к ресурсам компьютера, что делало их привлекательной целью для злоумышленников. Уязвимости ActiveX активно эксплуатировались для распространения вредоносного ПО, включая трояны и программы-шпионы.

Упадок и отказ от поддержки

С середины 2000-х годов Microsoft начала постепенно отказываться от ActiveX в пользу более безопасных технологий. В 2007 году вышла платформа .NET Framework, которая предложила альтернативные способы создания компонентов. К 2010-м годам большинство веб-разработчиков перешли на HTML5, CSS3 и JavaScript, которые не требуют установки дополнительных плагинов. В 2015 году Microsoft выпустила браузер Edge, который полностью отказался от поддержки ActiveX. В Internet Explorer 11, последней версии браузера, поддержка ActiveX была сохранена, но по умолчанию отключена. В 2022 году Microsoft объявила о полном прекращении поддержки Internet Explorer, что фактически означало конец эпохи ActiveX.

Архитектура и принцип работы

Компонентная модель COM

ActiveX основан на модели COM (Component Object Model), которая определяет стандарт взаимодействия между программными компонентами. Каждый ActiveX-компонент представляет собой COM-объект, реализующий определённые интерфейсы. Для работы компонента требуется его регистрация в системном реестре Windows. При загрузке веб-страницы браузер Internet Explorer проверяет наличие компонента на компьютере; если он отсутствует, браузер может предложить пользователю загрузить и установить его.

Встраивание в веб-страницы

ActiveX-компоненты встраиваются в HTML-документы с помощью тега <object> или <embed>. Пример кода: ``html <object classid="CLSID:00000000-0000-0000-0000-000000000000" width="400" height="300"> <param name="src" value="myfile.ocx"> </object> ` Классовый идентификатор (CLSID) является уникальным для каждого компонента и используется для его поиска в реестре. Параметры могут передаваться через тег <param>`.

Языки разработки

ActiveX-компоненты могут быть созданы на языках, поддерживающих COM: C++, Visual Basic, Delphi, а также на скриптовых языках (VBScript, JScript) для простых сценариев. Для разработки использовались инструменты Microsoft Visual Studio и пакет Microsoft Foundation Classes (MFC).

Классификация и виды

Элементы управления ActiveX

Наиболее распространённый тип — элементы управления (controls), которые встраиваются в веб-страницы или приложения. Примеры:

Документы ActiveX

Технология также поддерживает создание «активных документов» — документов, которые могут быть открыты внутри браузера без запуска отдельного приложения. Например, файлы Microsoft Word или Excel могли отображаться в Internet Explorer с помощью ActiveX-документов.

Серверные компоненты

ActiveX-компоненты могли использоваться не только на клиентской стороне, но и на сервере. Например, в технологии ASP (Active Server Pages) ActiveX-объекты применялись для обработки данных на сервере, доступа к базам данных или выполнения бизнес-логики.

Применение

Веб-разработка

В конце 1990-х — начале 2000-х годов ActiveX был основным средством для создания интерактивных веб-приложений. Банки использовали его для реализации систем онлайн-банкинга с возможностью работы с цифровыми подписями. Корпоративные порталы применяли ActiveX для отображения отчётов, диаграмм и документов. Технология также использовалась для создания игр, анимаций и обучающих программ.

Интеграция с операционной системой

ActiveX позволял веб-страницам получать доступ к функциям Windows, таким как файловая система, реестр, сетевые ресурсы и устройства. Это делало его мощным инструментом для автоматизации задач, но одновременно создавало серьёзные риски безопасности.

Мультимедиа и графика

Многие мультимедийные проигрыватели (Windows Media Player, RealPlayer, QuickTime) использовали ActiveX-компоненты для встраивания в веб-страницы. Это позволяло воспроизводить видео и аудио прямо в браузере без установки отдельных приложений.

Проблемы безопасности

Основные угрозы

ActiveX-компоненты имеют полный доступ к системе, что делает их уязвимыми для атак. Злоумышленники могли создавать вредоносные компоненты, которые:

Методы защиты

Microsoft внедрила несколько механизмов защиты:

Несмотря на эти меры, количество инцидентов, связанных с ActiveX, оставалось высоким, что стало одной из главных причин отказа от технологии.

Критика и наследие

Критика

Технология ActiveX получила широкую критику со стороны специалистов по безопасности и веб-разработчиков. Основные претензии:

Наследие

Несмотря на устаревание, ActiveX оказал влияние на развитие веб-технологий. Он продемонстрировал возможности интеграции веб-контента с операционной системой, что впоследствии было реализовано в более безопасных формах (например, через расширения браузеров, API HTML5). Многие элементы управления ActiveX были переписаны для платформы .NET. В настоящее время технология сохраняется только в legacy-системах, где её замена невозможна без серьёзных затрат.

Источники

  1. Microsoft Corporation. ActiveX Control and Component Object Model (COM). MSDN Library, 1996–2008.
  2. Дэвид Чаппелл. Understanding ActiveX and OLE: A Guide for Developers and Managers. Microsoft Press, 1996.
  3. Стивен Норткатт. Inside Windows 95. Microsoft Press, 1995.
  4. Отчёты по безопасности: Национальный институт стандартов и технологий (NIST), 2000–2010.
  5. Материалы конференций: RSA Conference, Black Hat, 2005–2015.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →