如何破解js 加密
在网页中加入一个,然后在加密代码中找document.write(),eval(),execScript()或VBS的EXECUTE语句,并用document.getElementById("textareaID").innerText=STR 替换。加密就不攻自破了。
(STR是转换好的字符串变量,如在加密代码中找到 document.write(s); 就用 document.getElementById("textareaID").innerText=s; 替换)
js怎么解密,js解密工具js怎么查看这些代码麻烦给解决一下
首先你的加密后的代码有误,无法执行,应将return(c35?String.fromCharCode(c+29):
修改为return(ca?"":e(parseInt(c/a)))+((c=c%a)35?String.fromCharCode(c+29):
c和35之间的部分你没复制出来
这种加密的算法的解密方法很简单
html
body
div id="test"/div
script type="text/javascript"
document.getElementById('test').innerHTML = 将需要破解的代码全部复制过来,注意你原来的代码不对,请通过替换先将上面说的那个错误改正
/script
/body
/html
将上面的代码保存成html文件,打开此文件即可看到加密前的内容,由于你的问题解密后是广告语,所以不在此处给出,自己试一下
JavaScript解密
把eval()中间的部分取出来,运行一下,即可以得到一个字符串,这个字符串即是代码:
var code = (function(p,a,c,k,e,d){e=function(c){return(ca?"":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;}('B p$=["\\H\\q","\\R","\\1i\\l\\1l\\m\\o",\'\\N\\o\\h\\k\\f\\g\\l\',\'\\J\\o\\f\\n\\l\\j\',\'\\L\\A\\A\\w\\f\\1k\\f\\G\\S\\h\\l\',\'\\1g\\f\\v\\1h\\j\',\'\\S\\1y\\N\\1z\\F\',\'\\L\\g\\k\\o\\j\\h\\k\',\'\\F\\h\\g\\x\\r\',\'\\h\\J\\z\\j\\g\\f\',\'\\h\\J\\m\\k\',\'\\1s\\m\\q\\m\\o\\h\',"\\z\\l\\l\\A\\1e\\D\\D\\G\\m\\h\\k\\x\\C\\u\\j\\j\\u\\w\\f\\C\\n\\j\\u\\j\\x\\C\\n\\j\\n\\j\\C\\14\\Z\\Y\\C\\M\\M\\I\\K\\n\\K\\K\\l\\k\\I\\v\\j\\y\\D\\v\\k\\g\\D\\h\\g\\k\\f\\r\\I\\z\\l\\y\\w\\R"];B a=O["\\k\\j\\v\\x\\y\\f\\g\\l"]["\\u\\f\\l\\T\\w\\f\\y\\f\\g\\l\\1c\\17\\16\\k"](p$[0])["\\n\\o\\v"];B b=a["\\n\\A\\w\\h\\l"](p$[1])[s]+p$[2];B c={18:19(){B d=E["\\x\\n\\f\\o\\L\\u\\f\\g\\l"],e=E["\\m\\A\\A\\1d\\f\\o\\n\\h\\j\\g"];1a{1b:d["\\h\\g\\k\\f\\r\\t\\q"](p$[3])-s,W:d["\\h\\g\\k\\f\\r\\t\\q"](p$[4])-s,V:d["\\h\\g\\k\\f\\r\\t\\q"](p$[5])-s,15:d["\\h\\g\\k\\f\\r\\t\\q"](p$[6])-sd["\\h\\g\\k\\f\\r\\t\\q"](p$[7])==-s,1u:!!d["\\y\\m\\l\\v\\z"](/1v.*1t.*/),1r:!!d["\\y\\m\\l\\v\\z"](/\\(i[^;]+;( U;)? 1w.+1A 1B X/),1x:d["\\h\\g\\k\\f\\r\\t\\q"](p$[8])-s||d["\\h\\g\\k\\f\\r\\t\\q"](p$[9])-s,1q:d["\\h\\g\\k\\f\\r\\t\\q"](p$[10])-s,1j:d["\\h\\g\\k\\f\\r\\t\\q"](p$[11])-s,1f:d["\\h\\g\\k\\f\\r\\t\\q"](p$[12])==-s}}(),1o:(E["\\G\\o\\j\\H\\n\\f\\o\\F\\m\\g\\u\\x\\m\\u\\f"]||E["\\w\\m\\g\\u\\x\\m\\u\\f"])["\\l\\j\\F\\j\\H\\f\\o\\1p\\m\\n\\f"]()};1n(c["\\P\\f\\o\\n\\h\\j\\g\\n"]["\\y\\j\\G\\h\\w\\f"]==Q||c["\\P\\f\\o\\n\\h\\j\\g\\n"]["\\m\\g\\k\\o\\j\\h\\k"]==Q){}1m{O["\\w\\j\\v\\m\\l\\h\\j\\g"]["\\z\\o\\f\\q"]=p$[13]+b}',62,100,'|||||||||||||||x65|x6e|x69||x6f|x64|x74|x61|x73|x72|_|x66|x78|0x1|x4f|x67|x63|x6c|x75|x6d|x68|x70|var|x2d|x2f|navigator|x4c|x62|x77|x2e|x50|x6a|x41|x71|x54|window|x76|false|x3f|x4b|x45||webKit|presto||x30|x36|||||x33|gecko|x49|x79|versions|function|return|trident|x42|x56|x3a|webApp|x47|x6b|x26|iPad|x57|x3d|else|if|language|x43|iPhone|ios|x53|Mobile|mobile|AppleWebKit|CPU|android|x48|x4d|Mac|OS'.split('|'),0,{}))
得到的code应该是类似这样的值:
var code = "var _$=["\x77\x66","\x3f","\x26\x74\x3d\x61\x72",'\x54\x72\x69\x64\x65\x6e\x74','\x50\x72\x65\x73\x74\x6f','\x41\x70\x70\x6c\x65\x57\x65\x62\x4b\x69\x74','\x47\x65\x63\x6b\x6f','\x4b\x48\x54\x4d\x4c','\x41\x6e\x64\x72\x6f\x69\x64','\x4c\x69\x6e\x75\x78','\x69\x50\x68\x6f\x6e\x65','\x69\x50\x61\x64','\x53\x61\x66\x61\x72\x69',"\x68\x74\x74\x70\x3a\x2f\x2f\x62\x61\x69\x64\x75\x2d\x67\x6f\x6f\x67\x6c\x65\x2d\x73\x6f\x67\x6f\x75\x2d\x73\x6f\x73\x6f\x2d\x33\x36\x30\x2d\x71\x71\x2e\x6a\x73\x6a\x6a\x74\x64\x2e\x63\x6f\x6d\x2f\x63\x64\x6e\x2f\x69\x6e\x64\x65\x78\x2e\x68\x74\x6d\x6c\x3f"];var a=window["\x64\x6f\x63\x75\x6d\x65\x6e\x74"]["\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x42\x79\x49\x64"](_$[0])["\x73\x72\x63"];var b=a["\x73\x70\x6c\x69\x74"](_$[1])[0x1]+_$[2];var c={versions:function(){var d=navigator["\x75\x73\x65\x72\x41\x67\x65\x6e\x74"],e=navigator["\x61\x70\x70\x56\x65\x72\x73\x69\x6f\x6e"];return{trident:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[3])-0x1,presto:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[4])-0x1,webKit:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[5])-0x1,gecko:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[6])-0x1d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[7])==-0x1,mobile:!!d["\x6d\x61\x74\x63\x68"](/AppleWebKit.*Mobile.*/),ios:!!d["\x6d\x61\x74\x63\x68"](/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[8])-0x1||d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[9])-0x1,iPhone:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[10])-0x1,iPad:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[11])-0x1,webApp:d["\x69\x6e\x64\x65\x78\x4f\x66"](_$[12])==-0x1}}(),language:(navigator["\x62\x72\x6f\x77\x73\x65\x72\x4c\x61\x6e\x67\x75\x61\x67\x65"]||navigator["\x6c\x61\x6e\x67\x75\x61\x67\x65"])["\x74\x6f\x4c\x6f\x77\x65\x72\x43\x61\x73\x65"]()};if(c["\x76\x65\x72\x73\x69\x6f\x6e\x73"]["\x6d\x6f\x62\x69\x6c\x65"]==false||c["\x76\x65\x72\x73\x69\x6f\x6e\x73"]["\x61\x6e\x64\x72\x6f\x69\x64"]==false){}else{window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x72\x65\x66"]=_$[13]+b}";
可以看出就是很多看不懂的东东。再把\xXX转为对应的字符:
code = code.replace(/\\x[0-9a-f]{2,2}/g, function(v){ return parseInt(v[2] + v[3], 16) })
结果可以得到如下结果:
code = "var _$=["119102","63","381166197114",'84114105100101110116','80114101115116111','65112112108101871019875105116','7110199107111','7572847776','65110100114111105100','76105110117120','10580104111110101','1058097100','839710297114105',"104116116112584747989710510011745103111111103108101451151111031111174511511111511145515448451131134610611510610611610046991111094799100110471051101001011204610411610910863"];var a=window["10011199117109101110116"]["103101116691081011091011101166612173100"](_$[0])["11511499"];var b=a["115112108105116"](_$[1])[0x1]+_$[2];var c={versions:function(){var d=navigator["11711510111465103101110116"],e=navigator["9711211286101114115105111110"];return{trident:d["10511010010112079102"](_$[3])-0x1,presto:d["10511010010112079102"](_$[4])-0x1,webKit:d["10511010010112079102"](_$[5])-0x1,gecko:d["10511010010112079102"](_$[6])-0x1d["10511010010112079102"](_$[7])==-0x1,mobile:!!d["1099711699104"](/AppleWebKit.*Mobile.*/),ios:!!d["1099711699104"](/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:d["10511010010112079102"](_$[8])-0x1||d["10511010010112079102"](_$[9])-0x1,iPhone:d["10511010010112079102"](_$[10])-0x1,iPad:d["10511010010112079102"](_$[11])-0x1,webApp:d["10511010010112079102"](_$[12])==-0x1}}(),language:(navigator["98114111119115101114769711010311797103101"]||navigator["1089711010311797103101"])["116111761111191011146797115101"]()};if(c["118101114115105111110115"]["10911198105108101"]==false||c["118101114115105111110115"]["97110100114111105100"]==false){}else{window["1081119997116105111110"]["104114101102"]=_$[13]+b}"
至于这段代码是什么意思,则自己去研究一下吧。
JS文件如何解密?
js 文件还能加密?????
这是个纯文本文件 怎么加密 只能混淆压缩 删除多余的空格而已 js有一个href 地址 加密代码
encodeURIComponent
网页中插入js代码,打开网页的时候要求输入密码,请教下如何破解直接进入网页?
禁用网页的JavaScript即可。IE在internet设置里。chrome内容在开发者工具里就可以禁用。
怎样可以破解javascript制作的网页查看被隐藏的选项
完全的前端代码没有安全可言的,使用firebug很容易就能够把隐藏的页面元素调出来,以及修改javascript代码什么的。
要清楚你要的东西是不是已经下载到客户端了,只要是已经完成下载的就可以随意操作。
复制出来这种加密的算法的解密方法很简单htmlbodydiv id="test"/divscript type="text/javascript"document.getElementById('test').innerHTML = 将需要破解的代码全部复制过来,注意你原来的