0
点赞
收藏
分享

微信扫一扫

JShaman的域名锁定功能,支持泛域名

JShaman的域名锁定功能,支持泛域名

JShaman的JS代码混淆加密中,有一项“域名锁定”功能。使用此功能后,代码运行时会检测浏览器地址中的域名信息,如是非指定域名,则不运行,以此防止自己网站的JS代码被复制他人的网站中使用的盗用行为。

此功能,使用非常灵活,支持多域名,且支持泛域名。

本文演示泛域名的设置方法及保护后的效果。

1、首先在本地搭建一个web服务器,以方便测试。

服务器用nodejs实现,监听80端口,收到请求时读取文件并返回,服务器代码:

JShaman的域名锁定功能,支持泛域名_js代码加固

2、使用本地host文件,解析两个子域名到本地,如下:

JShaman的域名锁定功能,支持泛域名_域名锁定_02

3、编写一个简单的html文件,包含两行js代码:

JShaman的域名锁定功能,支持泛域名_jshaman_03

4、使用在hosts文件中设定的域名进行访问:

JShaman的域名锁定功能,支持泛域名_js代码_04

此时测试环境已准备好。接下来,进行正式测试。

5、将上面两行js代码复制到JShaman准备进行混淆加密:

JShaman的域名锁定功能,支持泛域名_js加密_05

在配置中,进行正确设置:

JShaman的域名锁定功能,支持泛域名_js代码加固_06

然后进行js代码的混淆加密:

JShaman的域名锁定功能,支持泛域名_js加密_07

加密后,将加密的代码复制回原来位置:

JShaman的域名锁定功能,支持泛域名_js加密_08

此时,再访问,混淆加密时设定了一级域名,用二级域名访问:

JShaman的域名锁定功能,支持泛域名_js代码_09

JShaman的域名锁定功能,支持泛域名_js加密_10

可见,两个子域名访问时,加密后的js代码都可以正确执行。

6、此时,再在hosts中新增一个本地域名解析:

JShaman的域名锁定功能,支持泛域名_js代码_11

再用此域名访问:

JShaman的域名锁定功能,支持泛域名_域名锁定_12

由图可见,web服务器后端已经收到请求,但浏览器无法打开页面,并会跳转到about:blank空白页面。

7、结论:域名锁定已生效。效果:在设定域名的子域名下,代码正常执行,页面正常打开。在非设定的域名下,js代码无法执行、页面无法打开。

举报

相关推荐

0 条评论