美文网首页技术干货
破解加密和格式化后JS代码的最新算法

破解加密和格式化后JS代码的最新算法

作者: 罗盘上的方向 | 来源:发表于2017-11-28 09:23 被阅读36次

有些时候我们在分析网页的时候,总是会看到页面里面有下面这段压缩混淆代码类似的代码,直接打断点分析的话会很难看懂。今天就给大家介绍一种破解它:

代码如下

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('p w(E,D,A,C,B){5.R=8.14(E);5.o=D;5.d=A;5.r=(8.e)?C:(C-2);5.q=0;5.b=B+((8.e)?0:-2);5.x=5.d[0];5.O=5.d[5.d.c-1]}w.P.y=p(B){9 A=15.16(((B-5.x)*5.b/(5.O-5.x)))+((8.e)?2:0);s(A>5.b){A=5.b}17 A};w.P.18=p(){9 A=8.i("k");A.a="1a";A.6.z=5.b+"7";5.R.j(A);9 K=8.i("k");A.j(K);K.a="1b";9 J=0;Q(9 G=0;G<5.o.c;G+=2){9 B=5.y(5.o[G]);9 I=5.o[G+1];9 F=8.i("k");A.j(F);F.a="u";F.6.n=5.r+"7";F.6.z=B+"7";F.6.m=5.b-B-1+"7";F.6.g=(J-1)+"7";F.h="&v;";F.f=K;F.T=p(){5.a="V";5.f.6.L="";5.f.h=5.t.l(3,5.t.c);5.f.6.g=5.6.g;5.f.6.m=S(5.6.m)-S(5.f.19)+"7"};F.W=p(){5.a="u";5.f.6.L="Z"};9 E=8.i("k");A.j(E);E.6.n=5.r+"7";E.6.m=(8.e)?5.b:5.b+3+"7";9 C=I.10(".");F.t="u"+I.l(0,C)+"\\11"+I.l(C+1,I.c)+"\\12&v;&v;"+5.o[G];s(G%4==0){s((I.l(C+1,I.c)=="1"||I.l(C+1,I.c)=="2")){E.a="13";E.6.g=(J-4)+"7";E.h=I}N{E.a="M";E.6.g=(J-1)+"7";E.h=I.l(C+1,I.c)}}N{E.a="M";E.6.g=(J-1)+"7";E.h=""}J+=5.r+((8.e)?-1:1)}5.q=J+((8.e)?1:-1);A.6.n=5.q+"7";Q(9 G=0;G<5.d.c;G++){9 D=5.y(5.d[G]);s(G!=0&&G!=5.d.c-1){9 H=8.i("k");A.j(H);H.a="X";H.6.n=(5.q-((8.e)?1:-1))+"7";H.6.m=(5.b-D-1)+"7"}9 E=8.i("k");A.j(E);E.a="1c";E.6.n="Y";E.6.m=(5.b-D-2)+"7";E.6.g=-U+"7";E.h=5.d[G]}};',62,75,'|||||this|style|px|document|var|className|charth|length|yl|all|ohit|left|innerHTML|createElement|appendChild|div|s string|top|width|xl|function|chartw|barw|if|id|bar|nbsp|Chart|minpv|GetPVHeight|height||||||||||||display|titx|else|maxpv|prototype|for|parent|parseInt|onmouseover|42|barhl|onmouseout|liney|35px|none|indexOf|月|日|titxhl|getElementById|Math|round|return|Create|offsetHeight|chart|hit|tity'.split('|'),0,{}));

破解原理:
其实eval(function(p,a,c,k,e,d){}))中自带有解码函数e().
while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p
while循环产生的每个p就是解码后的函数代码,我们删掉源码中的return p,不将结果返回, 而是直接其输出在一个文本区域中,如document.getElementById(”textareaID”).innerText=p
这样在程序运行过后会将解码后的源代码放在那个文本域里。
所以只用在页面的html代码里加上下面这段代码并将return p修改成document.getElementById(”textareaID”).innerText=p即可

<textarea id="textareaID" rows="25" cols="50"></textarea>

相关文章

  • 破解加密和格式化后JS代码的最新算法

    有些时候我们在分析网页的时候,总是会看到页面里面有下面这段压缩混淆代码类似的代码,直接打断点分析的话会很难看懂。今...

  • js与C#实现CBC模式的DES加解密

    DES的加密模式具体可以参照DES算法的几种加密模式和填补方式 来看代码 前端部分: js引入的是crypto-j...

  • 两步破解eval加密(js)

    第一步:参考1秒破解 js packer 加密得到解密后的源代码。第二步:参考从任何页面运行代码段在chrome的...

  • iOS 非对称加密算法

    简介 对称加密算法又称现代加密算法。 非对称加密是计算机通信安全的基石,保证了加密数据不会被破解。 非对称加密算法...

  • JS好用的库

    JS 日期处理Moment.js 格式化和操作数字Numeral.js 加密库crypto-jsSparkMD5 ...

  • 爱奇艺获取sign

    准备 分析好eval的sign算法和pws加密js 一、总体代码流程 1、获取sdk2、eval sdk3、拼接变...

  • 脱机辅助工具

    一、游戏封包的加密与解密算法的破解破解封包的加密与解密算法是制作外挂的第一步,是外挂制作中最具技术含量的步骤,同样...

  • iOS,用oc直接写JS

    由于我们网页前端和后台都是用的js,所以写了一系列的加密算法,找了一下原来iOS这边是可以直接运行js代码的。

  • js时间格式化

    js时间格式化代码贴上:

  • iOS 通过 HTTP 请求快速注入第三方APP

    需求: 破解某APP的网络请求加密算法, 然而算法比较复杂, 或者经常升级, 怎样才能快速破解? 原理: 在 AP...

网友评论

    本文标题:破解加密和格式化后JS代码的最新算法

    本文链接:https://www.haomeiwen.com/subject/hvhsbxtx.html