今天为大家解惑一下,究竟什么是JS解密

JavaScript 混淆是一种用于保护 JavaScript 代码的方法,它通过重新排列代码中的字符来使代码难以理解。这对于防止其他人窃取您的代码或篡改您的网站很有用。

JavaScript 混淆过程中会对代码中的变量名和函数名进行更改,并对代码进行重新排列,使其变得更加难以理解。但是,这并不会改变代码的执行结果,因为它只会影响代码的外观,而不会影响它的实际逻辑。

对于解密混淆后的 JavaScript 代码,您可以使用解密工具。这些工具可以将混淆的代码还原成可读的形式,使您可以更轻松地理解代码的逻辑。

但是,有时候解密混淆后的 JavaScript 代码并不是一件容易的事情。这是因为某些混淆工具会使用更高级的技术来混淆代码,使其变得更加难以解密,所以不得不人工解密。

因此,如果您想要解密混淆后的 JavaScript 代码,您可能需要寻求专业人士的帮助。这些专业人士可以使用各种工具和技术来解密混淆后的代码。

jsjiami.com

代码混淆器,神一般存在的源码守护者,你值得拥有

如今,是一个提倡开源的时代,开源作者的贡献精神值得所有人尊敬,开源作品带给社会的贡献值 是无法用言语来表达的!但是,不是所有的东西和成果都是可以开源的,信息安全、数据隐私、技术保护也是我们不应回避的问题。

代码混淆器,通过各种技术手段来保护作者的作品成果;对未经授权、违规使用或者其他非正常手段实施的盗用,提高技术壁垒和窃取成本。

JavaScript Obfuscator is a powerful free obfuscator for JavaScript, containing a variety of features which provide protection for your source code.

翻译:JavaScript混淆器是一个强有力的免费的JavaScript类型的混淆器,它包含了各种特性来为你的源代码提供保护。

This tool transforms your original JavaScript source code into a new representation that\’s harder to understand, copy, re-use and modify without authorization.The obfuscated result will have the exact functionality of the original code.

翻译:这个工具将你原始的JavaScript源代码转换为一种新的形式展示,在没有授权的情况下,它是难于理解、拷贝、重用和修改。混淆后的代码拥有和原始代码完全一样的功能。

This tool prevents that by using various transformations and \”traps\”, such as self-defending and debug protection.

翻译:这个工具将通过使用变量转换和\”陷阱\”(例如:自我保护和调试保护)来阻止此类事情的发生。

关键特性:

命令很简单:

加密效果见效果图

各种参数细节如图所示

【源码】https://github.com/javascript-obfuscator/javascript-obfuscator.git

码字不易,喜欢的话就点个赞,关注下呗!您的支持是我最大的动力,谢谢啦!

混淆JS代码WEB逆向学习

混淆的JS代码常见的就是变量替换,增加了可阅读的难度,通常还会加入大量的无用的代码,增加代码的体积,但是不会影响运算速度。极简壁纸的JS混淆就是如此。

  1. 无限debugger的解决
  2. 接口返回值加密解密
  3. 混淆代码的逆向

打开极简站点后,打开开发者工具,立即就进入了debugger的界面

通常我们用一律不在此处暂停就能停止进入断点,然后进行我们的本地调试。

但是极简壁纸暂停后,浏览器瞬间卡死,除了这个,它还向我们的浏览器的内存中写入了无限的代码。

这里我们用hook的方式,重置一下debugger方法。这段代码,在网上到处都是。

点击分页,获得数据,找到xhr接口,点击预览,发现返回的数据是加密的。

全局搜索decript关键字,无法搜索到任何内容

点击启动器,查看到有类似混淆的代码。

点击最后一个混淆代码,进入源码。打上断点,再次点击分页数据,进入断点后,查找核心解密方法。

鼠标悬浮到解密方法开始的地方,点击进入方法的定义的地方。

接着,我们就把这点js复制下来,放到我们本地的开发IDE中。

运行一下,发现window和window.atob未定义,我们来补环境。

补充完环境后,再次运行,发现还有一些报错,仔细观察出错的位置,在浏览器的控制台中输出并替换,直到所有的错误都消失,并得到解密后的数据

到此,逆向结束。

混淆代码难读懂,逆向的时候,也完全没必要去每行读懂,复制核心代码下来,逐步运行补充环境,逐步调试,逐步拿到结果。

仅供学习参考

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。