首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏javascript技术

    JS混淆」免费JS混淆工具

    github上的,免费的,英文的,JS混淆工具:https://js-obfuscator.github.io/UI:混淆测试:JS源码:(function (){ var domain = "js-obfuscator.com getFullYear() + "," + domain; }; var console_log = console.log; console_log(copyright())})();JS 混淆结果:(function (_0xe, _0xd) { var _0x4ag10b = "\u006A\u0073\u002D\u006F\u0062\u0066\u0075\u0073\u0063 u006F\u0067']; _0xd = (885711 ^ 885702) + (139322 ^ 139320); _0xbe(_0xea());})();没改变代码结构,只是对代码中的每一行进行混淆变化

    2.7K01编辑于 2024-12-26
  • 来自专栏ek1ng的技术小站

    js混淆与反混淆

    为什么要进行混淆 由于设计原因,前端的js代码是可以在浏览器访问到的,那么因为需要让代码不被分析和复制从而导致更多安全问题,所以我们要对js代码进行混淆JS混淆和反混淆常见思路 在了解了js代码的执行过程后,我们来看如何对js进行混淆。 可以想到比如我们想实现一个js混淆器我们该怎么做呢,要不就是用正则替换,要不就是在AST阶段生成混淆代码,用正则替换实现简单但是效果也比较差,现在js混淆大多数都是在不改变AST的情况下去生成混淆后的代码 代码压缩 压缩js代码不用多说,就是去除空格,换行符等等,让代码变成一坨甚至一行。 代码混淆 这里我们抛砖引玉,讲一些比较常见的混淆方式,实际上混淆的办法非常的多。 需要通过对这个混淆js进行调试,发现这个js中有发送消息的函数,逆出来其中的逻辑之后,制作一个用于恶意的HTML页面,Bot(相当于一个也安装了3FA插件的真人)访问后,Bot的flag就会显示在页面上

    14.2K41编辑于 2023-03-08
  • 来自专栏爬虫逆向案例

    js逆向-猿人学(5)乱码混淆增强

    猿人学爬虫题目第五题: 《Js乱码-混淆增强》,该案例也非常简单。 任务5:抓取全部5页直播间热度,计算前5名直播间热度的加和。 ---- 抓包分析下请求流程。 接口: http://match.yuanrenxue.com/api/match/5? 也可以根据数组内容来快速查看,经确定 _zw[23] = $_t1 然后搜了一下 _t1,找到确定为时间戳 f = Date.parse(new Date()) 接下来找cookie中的m 修改下js m调试完成之后,接下来看一下RM4hZBv0dDon443M,修改js脚本,然后重新调试 控制台F8, 当有值的时候,开始查看 点到 0x466db4时可以看到 RM4hZBv0dDon443M

    4.2K30发布于 2021-11-22
  • 来自专栏javascript技术

    JS加密”等于“JS混淆”?

    JS加密、JS混淆,是一回事吗?是的!在国内,JS加密,其实就是指JS混淆。 1、当人们提起JS加密时,通常是指对JS代码进行混淆加密处理,而不是指JS加密算法(如xor加密算法、md5加密算法、base64加密算法,等等...)2、而“JS混淆”这个词,来源于国外的称呼,在国外称为 所以,有的人用国外的翻译名称,称为js混淆。3、无论是js加密,还是js混淆,他们的功能,都是对js代码进行保护,使可读的明文js代码变的不可读,防护自己写的js代码被他人随意阅读、分析、复制盗用。 ,js是直接执行源码、对外发布也是源码),所以,为了提升js代码安全性,就有了js加密、js混淆操作。 5、很多人讨论JS加密的必要性,有的人认为很重要,有的人认为不需要,人们看法并不统一。简单来说:如果是无所谓的代码,随便别人怎么拷贝或修改都无所谓,那就直接不用管。

    4K10编辑于 2024-09-29
  • 来自专栏大宇笔记

    JS 压缩混淆

    概念介绍 昨天接到了一个任务,H5  app 的JS CSS 需要压缩,混淆。 然后怎么办呢? 首先理解下压缩混淆是指什么 压缩 compress: 去掉空格,换行,注释等,格式紧凑,节约存储空间。 混淆 obfuscate/garble:替换变量名或方法名,让js不容易看懂。 加密 encrypt:一般用eval方法加密,效果与混淆相似。也做到了压缩的效果。 混淆加密:先混淆再加密。 百度一下js压缩,混淆会搜到一堆在线混淆加密的网页,但是这些都不是你想要的。 但是觉得这个网页混淆做的好:http://www.moralsoft.com/jso-online/hdojso.htm 我们不可能把那么多js文件一个一个的混淆加密,就算你愿意,你老板也觉得你很low 然后我找到了UglifyJS,一款很强大的js工具。

    16.6K20发布于 2019-01-15
  • 来自专栏日常学python

    js混淆工具思路

    混淆后: ? _X_5de920=T;var U=["f","__x05d77139b","a6","__x098a6324","16","__x0629fa33","d9395fe","__x084","","__ Xd4e1bf[_(T,U[1]+U[0],"e0e73")]=(_X17b201={},_X17b201[_(T,U[3]+U[2],"628e0")]=(_X85f09a={},_X85f09a[_(T,U[5] ,这样可以极大的阻止有人分析我们js明文搜索,看到这段就有人有疑问了,这样不是很明显吗代码逻辑,但是我们看到了混淆前的,如果换成正常业务代码,那基本上不好调试看逻辑。 我们这样写一个混淆工具,后面就可以根据混淆实现混淆还原工具

    5.3K20发布于 2020-02-25
  • 来自专栏javascript技术

    js颜文字混淆

    js颜文字混淆:一种“可爱”的、“好看”的JS代码加密方式,通常被称为“颜文字加密”,实际上是通过编码将JS语法转化为包含众多“(゚ー゚)、(o゚ー゚o)、(o^_^o)”等表情字符的形式。 使用地址:图片注意事项:可加密前端Web浏览器、后端Node.JS等环境下的标准JS代码。被加密JS代码量建议不超过1KB。优点:加密结果即奇怪又可爱,令人几乎想不到是JS代码。 注意:代码尽可能是规范JS语法,例如:一行变量定义以“;”号结尾,而非直接回车结束。提示:少量JS代码可用AAEncode加密。较多代码建议使用如JShaman之类的专业JS混淆加密工具。

    21310编辑于 2025-11-04
  • 来自专栏愧怍的技术学习与分享

    JS代码之混淆

    AST 在线解析 AST explorer js 在线混淆工具 JavaScript Obfuscator Tool 书籍 《反爬虫 AST 原理与还原混淆实战》 相关混淆代码 kuizuo/js-de-obfuscator js 代码中混淆与还原的对抗,而所使用的技术便是 AST,通过 AST 能很轻松的将 js 源代码混淆成难以辨别的代码。 ', '5LqM', '5LiJ', '5Zub', '5LqU', '5YWt', 'cmVwbGFjZQ==', 'Z2V0RnVsbFllYXI=', 'Z2V0TW9udGg 其次要懂得利用 js 语法的特性来进行混淆,比如高阶函数,函数传参,jsfuck 等等。 混淆并非万能​ 混淆始终是混淆,只是将代码相对变得难以阅读,但不代表不可阅读。 整个混淆的过程来看,无非就是多了门技能,对 js 有了更进一步的了解,略懂 js 编译过程中的语法分析,此外也感叹 Babel 提供如此强大的 api。

    24.2K10编辑于 2022-12-27
  • 来自专栏javascript技术

    js代码混淆工具?

    什么是js混淆工具?js混淆工具是一种能够将js代码转换成难以阅读和理解的代码的工具,通常用于保护js代码的安全性和版权,防止被恶意修改或盗用。 为什么要使用js混淆工具?js混淆工具的主要目的是为了保护js代码不被轻易地反编译或者破解,提高js代码的安全性和稳定性。 因此,使用js混淆工具可以有效地防止上述情况发生,提高js代码的保密性和抗攻击性。如何选择合适的js混淆工具?市面上有很多不同类型和功能的js混淆工具,如何选择合适的js混淆工具呢? 因此,在选择js混淆工具时,需要根据自己的代码特点和混淆目的,选择合适的混淆程度和方式。混淆成本:不同的js混淆工具可能有不同的使用方式和价格,导致混淆成本有所差异。 根据上述几个方面的考虑,以下是一些常用的js混淆工具:JScambler: 它支持es5,es2015,es2016,es2017,es2018,es2019语言标准,部分支持es2020语言标准。

    4.2K00编辑于 2023-07-01
  • 来自专栏奋飞安全

    初试js混淆

    一、目标最近js玩的花样越来越多了,本来简洁方便的一门开发语言,现在混淆的一塌糊涂。今天我们就介绍几种常见的反混淆方案。 混淆的本质就是等价替换,把 a = 12 ,替换成 a = 100 - 8 + 5 - 15 - 70。 /input/demo2.js", {encoding: "utf-8"}); // 读取原始混淆文件var ast_parse = parser.parse(jscode); //将JS源码转换成语法树 /output/demo2_out.js', ast_js_code.code)这就是一个基础的AST反混淆处理框架。 - 15 - 70 表达式替换var a = 100 - 8 + 5 - 15 - 70;var b = 1;console.log(a+b);这个js就有点小复杂了,我们需要一个分析工具 https:

    1.2K00编辑于 2024-11-14
  • 来自专栏漫流砂

    JS代码混淆 | js 逆向系列

    (0x1a8))/0x3+-parseInt(_0x5f038b(0x1a5))/0x4+parseInt(_0x5f038b(0x1aa))/0x5*(parseInt(_0x5f038b(0x1a7 /UglifyJS/ https://github.com/LiPinghai/UglifyJSDocCN/blob/master/README.md 使用方法 npm install uglify-js -g uglifyjs example.js -c -m --mangle-props -c 代码压缩 -m 代码混淆 --mangle-props 混淆属性名 -b 美化显示 // 原代码 const ,可能部分在线平台也是可以完成的 https://www.sojson.com/jsjiemi.html 3. eval packer https://tool.chinaz.com/js.aspx / JShaman https://www.jshaman.com/ JShaman 是国内公司开发的js代码加密商业产品 免费版可以直接使用 // 原代码 const person = { age

    8.3K20编辑于 2023-12-30
  • 来自专栏Python 爬虫

    JS 逆向百例】反混淆入门,某鹏教育 JS 混淆还原

    逆向目标 目标:某鹏教育登录接口加密,含有简单的 JS 混淆 主页:aHR0cHM6Ly9sZWFybi5vcGVuLmNvbS5jbi8= 接口:aHR0cHM6Ly9sZWFybi5vcGVuLmNvbS5jbi9BY2NvdW50L1VuaXRMb2dpbg 逆向过程 本次逆向的目标同样是一个登录接口,其中的加密 JS 使用了简单的混淆,可作为混淆还原的入门级教程,来到登录页面,随便输入账号密码进行登录,其中登录的 POST 请求里, Form Data 有个加密参数 () 这个方法,是调用了 fm.js 里的 OO0O0() 方法,看这个又是 0 又是 O 的,多半是混淆了,如下图所示: [03.png] 点进去看一下,整个 fm.js 都是混淆代码,我们选中类似 ] # 混淆后的 JS with open("fm_old.js", "r", encoding="utf-8") as f: js_lines = f.readlines() js = " 将 JS 还原后,我们可以将还原后的 JS 替换掉网站本身经过混淆后的 JS,这里替换方法有很多,比如使用 Fiddler 等抓包工具替换响应、使用 ReRes 之类的插件进行替换、使用浏览器开发者工具自带的

    8.3K40编辑于 2021-11-30
  • 来自专栏javascript技术

    JS加密、JS混淆技术原理简介

    JS加密、JS混淆技术原理简介JS加密、JS混淆JS混淆加密,所指相同,都是指对JS代码进行加密式处理,使代码不可读,以达到保护代码的目的。 其原理,根据加密或混淆处理深度不同,大体上可分两种,下面简述技术原理。第一种,对代码进行字符替换,比如Eval加密、JJEncode加密,都属于这一类。这种方式,直接对JS代码进行处理,是可逆的加密。 第二种,操作层面与前者最大的差别是,不是对JS代码直接进行分析并加密,而是会进行低层处理,先会对JS代码进行词法分析、语法分析,转化成AST(抽象语法树),得到AST之后,混淆加密操作都是在AST中进行 ,完成语法树加密修改之后,再根据AST重新生成全新的密文式JS代码,专业的JS代码加密混淆工具,比如JShaman、JScrambler都是属于这一类。 如此混淆过的JS代码,人无法读懂,但机器可识别,是可以直接运行的,不需要经过解密,因此,不存在通过解密而直接逆向出原码的问题,安全性高。在业内是被广泛认可和应用的。

    2K40编辑于 2023-10-08
  • 来自专栏技术社区

    JS常见加密混淆方式

    目录 前端js常见混淆加密保护方式 eval方法等字符串参数 emscripten WebAssembly js混淆实现 JSFuck AAEncode JJEncode 代码压缩 变量名混淆 字符串混淆 自我保护,比如卡死浏览器 控制流平坦化 僵尸代码注入 对象键名替换 禁用控制台输出 调试保护,比如无限Debug,定时Debug 域名锁定 前端js常见混淆加密保护方式 代码压缩:去除空格 、换行等 代码加密:eval、emscripten、WebAssembly等 代码混淆:变量混淆、常量混淆、控制流扁平化、调试保护等 eval方法等字符串参数 emscripten 核心:C/C++ 编译:emscripten 结果:asm.js 调用:JavaScript WebAssembly 核心:C/C++ 结果:wasm文件 调用:JavaScript js混淆实现 JSFuck AAEncode JJEncode 代码压缩 变量名混淆 字符串混淆 自我保护,比如卡死浏览器 控制流平坦化 僵尸代码注入 对象键名替换 禁用控制台输出 调试保护,比如无限Debug,定时Debug

    9.3K30编辑于 2022-06-17
  • 来自专栏Python爬虫与算法进阶

    JS逆向常见混淆总结

    一直想写一篇关于混淆的总结,篇幅比较短但都是在摸索过程中的总结,先占坑,有新的内容会再补充。 eval加密 把一段字符串当做js代码去执行 1eval(function(){alert(100);return 200})() 例子: 漫画柜,空中网 之后会单独写一篇漫画柜的解密。 变量名混淆 把变量名、函数名、参数名等,替换成没有语义,看着又很像的名字。 1_0x21dd83、_0x21dd84、_0x21dd85 用十六进制文本去表示一个字符串 1\x56\x49\x12\x23 利用JS能识别的编码来做混淆 JS是Unicode编码,本身就能识别这种编码 return 'push' 6} 7test[dec(arr[0])](200); 控制流平坦化 将顺序执行的代码混淆成乱序执行,并加以混淆 以下两段代码的执行结果是相同的: 1// 正常形态 2function

    2.7K20发布于 2019-06-24
  • 来自专栏Python绿色通道

    JS逆向常见混淆总结

    eval加密 把一段字符串当做js代码去执行 1eval(function(){alert(100);return 200})() 例子: 漫画柜,空中网 之后会单独写一篇漫画柜的解密。 变量名混淆 把变量名、函数名、参数名等,替换成没有语义,看着又很像的名字。 1_0x21dd83、_0x21dd84、_0x21dd85 用十六进制文本去表示一个字符串 1\x56\x49\x12\x23 利用JS能识别的编码来做混淆 JS是Unicode编码,本身就能识别这种编码 4 5类似: 6 7\u0053\u0074\u0072\u0069\u006e\u0067. return 'push' 6} 7test[dec(arr[0])](200); 控制流平坦化 将顺序执行的代码混淆成乱序执行,并加以混淆 以下两段代码的执行结果是相同的: 1// 正常形态 2function

    2.7K20发布于 2020-03-09
  • 来自专栏咸鱼学Python

    JS逆向常见混淆总结

    一直想写一篇关于混淆的总结,篇幅比较短但都是在摸索过程中的总结,先占坑,有新的内容会再补充。 eval加密 把一段字符串当做js代码去执行 1eval(function(){alert(100);return 200})() 例子: 漫画柜,空中网 之后会单独写一篇漫画柜的解密。 变量名混淆 把变量名、函数名、参数名等,替换成没有语义,看着又很像的名字。 1_0x21dd83、_0x21dd84、_0x21dd85 用十六进制文本去表示一个字符串 1\x56\x49\x12\x23 利用JS能识别的编码来做混淆 JS是Unicode编码,本身就能识别这种编码 return 'push' 6} 7test[dec(arr[0])](200); 控制流平坦化 将顺序执行的代码混淆成乱序执行,并加以混淆 以下两段代码的执行结果是相同的: 1// 正常形态 2function

    3.4K40发布于 2019-06-21
  • 来自专栏李昂君

    爬虫+反爬虫+js代码混淆

    Tabnine AI Code Completion Tabnine 是数百万开发人员信赖的 AI 代码完成工具,可以更快地编写代码并减少错误,支持JS、Java、Python、TS、Rust、Go、PHP

    6.6K30编辑于 2022-01-04
  • 来自专栏李昂君

    爬虫+反爬虫+js代码混淆

    CDT(Common Data Types)是一个Go语言库,旨在提供简单而灵活的数据类型处理工具。它提供了一组函数和结构体,用于处理不同类型的数据,并提供了方便的方法进行数据类型转换和操作。支持sql、json序列化,以及validator数据验证。

    96520编辑于 2023-07-20
  • 来自专栏Urlteam

    爬虫解决网站混淆JS跳转

    仔细看下js,会发现,他是进行了一个延时后调用bx(105)函数,完成后刷新页面,换句话说,得进行这个js的计算即可。 可以参考用 pip3 install js2py js2py.eval_js(a) 硬解开这个js,但是我就用了个小技巧。因为cookie可用1天。 我就是用phantomjs 延时5秒,让他自己完成这个js的计算后,再用这个生成好的cookie来配合直接请求使用。 使用的phantomjs 代码为下,将其保存为res.js ,执行如下命令即可获取源码 phantomjs res.js http://huakai.waa.cn/ res.js :改编自:https: invite_code=u3xrcath7lgz 原创文章,转载请注明: 转载自URl-team 本文链接地址: 爬虫解决网站混淆JS跳转 Related posts: selenium自动登录挂stackoverflow

    4.3K50发布于 2019-11-28
领券