文档
/
VM 混淆
/

VM Domain Lock

VM Domain Lock

Pro
v6.13.0+

观看

Obfuscator.io Advanced Defenses: Self-Defending, Debug Protection, Domain Lock

在 YouTube 观看

vmDomainLock 选项会将混淆后的代码限制在一组特定的域名和子域名上运行。当受保护的代码在不在允许列表中的域名上运行时,默认响应(break)会把浏览器重定向到 vmDomainLockRedirectUrl(默认为 about:blank),而且即使该重定向被拦截,受保护的调用也会停止工作。使用 decoy 时不会重定向,受保护的调用会返回错误的结果。响应方式遵循 vmDefenseReaction 的 domain 类别(break、decoy 或 none),因此您可以调整或观察它,而不必只接受重定向。

这是非 VM 版 domainLock 选项的 VM 感知对应版本。当 vmObfuscation 开启时,非 VM 的 domainLock 会被忽略 - 请改用 vmDomainLock。

仅限浏览器的功能

VM Domain Lock 依赖 window.location,当 target 为 node、bytenode 或 service-worker 时不起作用。service worker 是一个微妙的情况:它没有 window,因此 VM Domain Lock 不适用 - 但它仍通过 HTTP(S) 提供,所以 browserEnvironment 依然适用。

支持的条目形式:

  • 精确主机 - example.com
  • 通配子域名 - .example.com 匹配 example.com 及任意子域名
  • 特定子域名 - app.example.com

将 vmDomainLock 留空会完全禁用该检查 - 任意域名都能运行。非 VM 构建请参阅非 VM 版 domainLock。