使用alert()方法解密JS代码,简单实用 - js技术_卡卡网
技术频道导航
HTML/CSS
.NET技术
IIS技术
PHP技术
Js/JQuery
Photoshop
Fireworks
服务器技术
操作系统
网站运营

赞助商

分类目录

赞助商

最新文章

搜索

使用alert()方法解密JS代码,简单实用

作者:admin    时间:2018-4-2 22:15:30    浏览:

不少JS代码都是通过加密后再使用,以免被人轻易获得源代码。不过,那也只能对完全不懂JS的人有用,一般的加密代码是很容易就被解密的。本文介绍我常用到的一个方法。

例如下面这一段加密JS代码:

\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x27\x68\x74\x74\x70\x73\x3a\x2f\x2f\x69\x6e\x74\x2e\x64\x70\x6f\x6f\x6c\x2e\x73\x69\x6e\x61\x2e\x63\x6f\x6d\x2e\x63\x6e\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2e\x70\x68\x70\x3f\x66\x6f\x72\x6d\x61\x74\x3d\x6a\x73\x27\x20\x3e\x3c\x2f\x73\x63\x72\x69\x70\x74\x3e

我们怎样对其进行解密呢?

使用alert()方法将其解密

最简单的方法就是使用alert()方法直接将其解密,如上述代码,我们改为:

alert("\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x27\x68\x74\x74\x70\x73\x3a\x2f\x2f\x69\x6e\x74\x2e\x64\x70\x6f\x6f\x6c\x2e\x73\x69\x6e\x61\x2e\x63\x6f\x6d\x2e\x63\x6e\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2e\x70\x68\x70\x3f\x66\x6f\x72\x6d\x61\x74\x3d\x6a\x73\x27\x20\x3e\x3c\x2f\x73\x63\x72\x69\x70\x74\x3e");

就看到如下对话框的信息:

使用alert()解密js代码

使用alert()解密JS代码

这个就是解密后的JS代码了。

使用unescape()方法完善上述alert()代码

有时有的JS代码已被escape()编码,所以在使用alert()方法前先使用unescape()方法进行反编码,则上述代码改为:

alert(unescape("\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x27\x68\x74\x74\x70\x73\x3a\x2f\x2f\x69\x6e\x74\x2e\x64\x70\x6f\x6f\x6c\x2e\x73\x69\x6e\x61\x2e\x63\x6f\x6d\x2e\x63\x6e\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2e\x70\x68\x70\x3f\x66\x6f\x72\x6d\x61\x74\x3d\x6a\x73\x27\x20\x3e\x3c\x2f\x73\x63\x72\x69\x70\x74\x3e"));

这样解密后的JS代码就更完整了。

当然我们也可以先用alert()获得解密后的代码,然后看到还有乱码(往往是中文),就用unescape()方法反编码一下就可以了。

将解密后的js代码输出到textarea文本区

有时解密后的JS代码太多太长,那么alert()看到的就不完整,且不能复制,那么我们可以将解密后的js代码输出到textarea文本区。

例如上述代码可以改为:

<!DOCTYPE>
<html>
<head>
<script type="text/javascript">
var a = "\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x27\x68\x74\x74\x70\x73\x3a\x2f\x2f\x69\x6e\x74\x2e\x64\x70\x6f\x6f\x6c\x2e\x73\x69\x6e\x61\x2e\x63\x6f\x6d\x2e\x63\x6e\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2f\x69\x70\x6c\x6f\x6f\x6b\x75\x70\x2e\x70\x68\x70\x3f\x66\x6f\x72\x6d\x61\x74\x3d\x6a\x73\x27\x20\x3e\x3c\x2f\x73\x63\x72\x69\x70\x74\x3e";
</script>
</head>
<body>
<textarea id="txt" cols=100 rows=30></textarea>
</body>
<script type="text/javascript">
  document.getElementById("txt").value = unescape(a);
</script>
</html>

execcodegetcode

先将要解密的JS代码赋给变量a,后面用unescape(a)显示到文本区,得到解密后的信息,如图:

将解密后的js代码输出到textarea文本区

将解密后的js代码输出到textarea文本区

您可能对以下文章也感兴趣

标签: 解密  
相关文章
    • IT热文
    • 站长推荐