前言

像很多大站,都有类似于站外链接跳转提示这类功能,这类功能应用范围广,如果被不法分子找到代码中可能被利用的漏洞,很容易利用xss攻击等行为达到非法的目的,导致众多用户信息可能遭受风险,自身产品也蒙受损失。

所以一些核心功能的前端js建议进行加密处理。

特别是中小公司的公网产品,面向互联网的,人人都可以访问到你的站,一定要做好安全措施。

原因

公司最新上架了个内部直播的项目,但是分公司分布在全国各地,所以项目丢在了公网上,方便全国的同事们使用。在运行了一段时间后,遇到了部分接口被爬虫侵扰,盗取我们直播流量数据。随后技术部门给后端代码加上了接口加密校验等。但是前端js的暴露依然导致没什么效果,我在网上搜集了很久的资料找到了很多解决方案,最终选择了一个我认为最好的一个。

部分代码实例

源代码

function https() {if (ssl_on == 1) {var $fs = require( 'fs');var $tls = require( 'tls');var crtArray = [];for (var i = 0; (i < shield_address.length); i++) {var name = shield_address[i][0];if (name.substr((name.length -  1), 1) == '/') {name = name.substr(0, (name.length - 1));}var keyfile = ('./ssl/' + shield_address[i][2]);var pemfile = ('./ssl/' + shield_address[i][3]);var keyfileExt = $fs.existsSync(keyfile);var pemfileExt = $fs.existsSync(pemfile);if ((keyfileExt == true) && (pemfileExt == true) && (keyfile.indexOf('.key') != -1) && (pemfile.indexOf('.pem') != -1)) {crtArray[name] = $tls.createSecureContext({'key': $fs.readFileSync(('./ssl/' + shield_address[i][2]), 'utf8'),'cert': $fs.readFileSync(('./ssl/' + shield_address[i][3]), 'utf8')});}}var CRT = {'SNICallback': function (name, callback) {if (crtArray[name]) {if (callback) {callback( null, crtArray[name]);} else {return crtArray[name];}} else {console.log(name, 'No keys or certificates inited for domain requested');keyfile ='./ssl/' + name +'.key';pemfile =  './ssl/'+ name + '.pem';keyfileExt = $fs.existsSync(keyfile);pemfileExt = $fs.existsSync(pemfile);if ((keyfileExt == true) &&  (pemfileExt == true) && (keyfile.indexOf('.key') != -1) && (pemfile.indexOf('.pem') != -1)) {crtArray[name] = $tls.createSecureContext({'key': $fs.readFileSync(keyfile, 'utf8'),'cert': $fs.readFileSync(pemfile, 'utf8')});if (callback) {callback( null, crtArray[name]);} else {return;}} else {crtArray[name] = $tls.createSecureContext({'key': $fs.readFileSync('ssl/default.key', 'utf8'),'cert': $fs.readFileSync('ssl/default.pem', 'utf8')});if (callback) {callback( null, crtArray[name]);} else {return;}}}}};CRT.key = $fs.readFileSync(('./ssl/' + 'default.key'), 'utf8');CRT.cert = $fs.readFileSync(('./ssl/' +'default.pem'), 'utf8');CRT.rejectUnauthorized = false;require( 'https').createServer(CRT, function (req, rep) {var $host = req.headers.host;if ($host == undefined) {console.log('Host is null');return;}req.headers['x-forwarded-for'] = get_client_ip( req);var httpProxy = require( 'http-proxy');var server;if ((permit.enable == 1) && (permit.keep_alive == 1)) {server = httpProxy.createProxyServer({'agent': keepalive_agent});} else {server = httpProxy.createProxyServer({});}server.on('error', function (e, info, resp) {try {resp.end();return;} catch (e) {if (debug == 1) {console.log(e.message);}}});for (var i = 0;(i < shield_address.length); i++) {var address = shield_address[i][0];if ((address.substr((address.length - 1), 1) == '/')) {address = address.substr(0, (address.length - 1));}if (($host.indexOf(address)!= -1) || (address.indexOf($host)!= -1)) {server.web(req, rep, {'target': 'http://127.0.0.1:' + shield_port + '/' + address,'selfHandleResponse': false,'changeOrigin': false});global.gc;return;}}for (var i = 0; (i < skip_to.length); i++) {if (debug == 1) {console.log('[skip_to]:', skip_to[i].domain, skip_to[i].target);}if ((skip_to[i].domain.indexOf($host) != -1) || ($host.indexOf(skip_to[i].domain) != -1)) {server.web(req, rep, {'target': skip_to[i].target,'selfHandleResponse': false,'changeOrigin': false});return;}}server.web(req, rep, {'target': oem_url,'selfHandleResponse': false,'changeOrigin': true});if (debug == 1) {console.log('[Unknown Host]Https Redirected', $host);}}).listen(ssl_port).keepAliveTimeout = require( './permit').keep_alive_keepAliveTimeout;console.info('Https at port: ', ssl_port);}
}

经过解密后

var _0xodu='jsjiami.com.v6',_0xodu_=['‮_0xodu'],_0x8dc6=[_0xodu,'w4/CqGIoTg==','I8OZwot0fw==','RcO0w5rCvSpywqh6LcOy','w6kKTyTCrw==','LsKDI8O8','VgFRLkw=','w4Ehw41dwq3CmMOo','w6nCizlWKw==','wp1nw5nDiGfCpW/DtcKJwqgmA8KAGinChmTDqMKs','w4nCqDdIK0vDmsOewrVFaMK2','woDDpz8mw53DhQ==','LSvCtcOVwqw=','wqABwojCi1nCn8KfUMOKw7I5w7s=','w7jCiRzCmng=','w7fCnsOw','JC3DqRpiXsKm','ScOwAcOYNQ==','w7xpUMO7w7k=','O8OMKhzDgA==','w5rCuXk=','Sm1awqBm','N8Oew7PDm38=','JMODw4DDrnk=','wrhjw47DnXI=','w7Ysw7PCtMOq','D8K5JcOVwodL','w5PClsKke3U=','LDDDsxp3SsKQPsOIwps=','w63CsiLDo0Vnw6A4wo0q','w60/w6tfwpE=','w78jf8KzQ8Oqw6s=','wp8uRCg=','w6HCpC/DtUlbw5U=','aMOPK8KCRw==','P8OcNB3DgQ==','w7IBaCDCtg==','dcOiw57CnC0=','w43Cuik0w4XCj8KlPCxZw6/CmMOdAsOgw6DCvMOXRw==','woxww53DjVXCqVDDtcK5wqQ6BQ==','w4jCnnMUTDbCpsO4dMOVwoXDlg==','a8KxAcOoHA==','w77CvcOBw4Ef','w4jDrwsLAQ==','Ji4fbX1BFsOuMmkeBWvCrcKLw7sg','w4DDrGQNw7g=','GhjDsiJE','w5TDm0cLw581AxNcM8KVwqzDkcKhIMKCwozDtC4=','w6BVecOpw7sSWMK/w7c2w4xg','BEIow7RfH2x2wrzDp8OBw6Z0w5tU','w4MgQDXCnsKXd8KWwpjCocKKw6Y=','woURHcKNFQ==','LR7DtT9h','w4YpQsKdUg==','wrPCvMK0XzA=','TcO5MQ==','EgjDvGxewrY=','w4UkUzbCvcKK','wqo8woPCqVQ=','UMO0PsOwwqI=','w67ChcOxwr0=','w5rCi8K4wrN2dcO4w67Co1HCjsOA','w4nDkBMiAQ==','TmpawpxC','UsOpw5nCqz11wq5tIsOkSMKAwrV7PMO+wrEQ','w58jUxfCtg==','w73CmEolTQ==','w5Mow6TCocO/RnHChMKYDFjDuw==','w74oesKyXsOXw74=','UsOmN8KM','w65ycxh6','GyvDh05j','IzIXQUA=','XMOnKcK1SA==','woxreA==','w74Rw6fCpMOe','w7bCtcKp','w4LCt2zCqHMN','WcOjKsOTAnPCoQ==','WcK7MMOJwpkTGsKEwqZBZ8KjYMOWw5Q=','w6c9w5PCj8Oo','wprCksKkZCIiwqVswo0E','wr3ChhXDhXk=','w7U/fsK3T8OAw53CrBfDl23DjsOlUnLDsEM=','RMOkJMOJwpk=','DWNO','w73CvMOdw6IO','N8OuwoY=','bcKNNcO2BcKXMA==','w5fCmsOzw5wv','w4zCryPDhkU=','w5LDh0d6D2o=','A0XCusKnMw==','w4BLQsKQwojCuQ==','w5fDjE14A00j','w57Do3c4w7w=','TxI5XsKEM3Y=','w7/Cryk=','w6nChyk5w54=','JBrDjBNQ','wqPDssOQFQg=','IsORw4jDuk4k','w6/Cn8KiE8Kb','dMOmBMOOwqA=','wppPfcODw6Y=','DCzDs1xW','LR9n','Syp2G37CtQ==','KEfCgsK2LA==','w5LCozJJFW3DkA==','XsOmKcKZaMKb','OMO5QA==','MT0Ia2xQ','w43CnnA=','OsORw7wqFQ==','LWTCpMKQHgA=','SsOzM8OWwqoIEsKAwqdwasOjY8OWw5PDlg==','w7/CjMKCD8K8','dWdywolIw4l2wozDu1NqTyNPVsODPcKYMMKGLDZcw7/DgTrCrw==','w5jDph8L','w4TDmk5Fw481NhdKKsKTw6fDucKrNw==','JxHDkh9H','w7TClDIbbybCucK9SMOew4vDlnbDuHo6VjlNw4bCo8O1w53DosOxw5Zyc8KUVcO3AkM7fXEMw5fDpMOuWMOswqFbGEfCv1R7B8Kf','FMKmN8KLbcOa','wp/Doxwd','wrxAfcOg','V8OoA8Kvcg==','w5AMUjbCrw==','w7nChhTChmo=','w6TDpVUCw4Y=','w7/DqFF5NQ==','PTHDkGly','UsO9MMKILMKFw6NpwpNZ','AMOiw4AOf8OPwo7DvxhTw5kCwrXDkcK8f04=','wrPCqjLDgEHCtUrDjsOPwp5Qwo/Dp8Obw79VwqUUw6HDrsOfw4QCQsKXMcKcZEnCpw==','w4rCrWYEcw==','TsOPEsO8wpI=','w7/ClMOxw6QYw7PCq3zCoWXDkA==','w4zCi8K/wrZFcMOgwqXCgE3CjQ==','w4bCvDglw4I=','wpDCjVl4CW8sBw==','w6nCmA/CmGM=','AsOPIC/DsSk=','w5jCssKaakc=','wqQlGsKOKw==','w6JHdBxO','MnjCtcKXDxw=','Uy5qG2/CqQ==','FH3ChcKMMA==','BQDDiXxS','w7wJT8KxUw==','RQ44WsKIGUPCol9Mw67DtQPCtSnDuMORDw0=','OxjCu8OnwojCpwo1w45NwpnCtQ==','w5/Cmzl6Dw==','w6nClMO2w6Erw7bCszfCmXnDhzI=','w6dEfsK1','bChLGW0=','Oj3DuBp3Sw==','AkYhwrxc','qpYjZsjiEywamlHit.cJogm.v6YTRK=='];if(function(_0x2c4a15,_0x568f88,_0x124775){function _0x3af4ea(_0xf9f94,_0x3400b6,_0x1872dc,_0x51c3a7,_0x2a3373,_0x35bacb){_0x3400b6=_0x3400b6>>0x8,_0x2a3373='po';var _0x50f26c='shift',_0xec0683='push',_0x35bacb='‮';if(_0x3400b6<_0xf9f94){while(--_0xf9f94){_0x51c3a7=_0x2c4a15[_0x50f26c]();if(_0x3400b6===_0xf9f94&&_0x35bacb==='‮'&&_0x35bacb['length']===0x1){_0x3400b6=_0x51c3a7,_0x1872dc=_0x2c4a15[_0x2a3373+'p']();}else if(_0x3400b6&&_0x1872dc['replace'](/[qpYZEywlHtJgYTRK=]/g,'')===_0x3400b6){_0x2c4a15[_0xec0683](_0x51c3a7);}}_0x2c4a15[_0xec0683](_0x2c4a15[_0x50f26c]());}return 0x110c44;};return _0x3af4ea(++_0x568f88,_0x124775)>>_0x568f88^_0x124775;}(_0x8dc6,0x1b3,0x1b300),_0x8dc6){_0xodu_=_0x8dc6['length']^0x1b3;};function _0x318f(_0x4dec31,_0x3ced1f){_0x4dec31=~~'0x'['concat'](_0x4dec31['slice'](0x1));var _0x196f4c=_0x8dc6[_0x4dec31];if(_0x318f['jLnWBb']===undefined){(function(){var _0x5aae24=typeof window!=='undefined'?window:typeof process==='object'&&typeof require==='function'&&typeof global==='object'?global:this;var _0x5d2dab='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x5aae24['atob']||(_0x5aae24['atob']=function(_0x2cfac7){var _0x506657=String(_0x2cfac7)['replace'](/=+$/,'');for(var _0x49c6a0=0x0,_0x4da7cc,_0x4f6505,_0x38d9ce=0x0,_0x2b4892='';_0x4f6505=_0x506657['charAt'](_0x38d9ce++);~_0x4f6505&&(_0x4da7cc=_0x49c6a0%0x4?_0x4da7cc*0x40+_0x4f6505:_0x4f6505,_0x49c6a0++%0x4)?_0x2b4892+=String['fromCharCode'](0xff&_0x4da7cc>>(-0x2*_0x49c6a0&0x6)):0x0){_0x4f6505=_0x5d2dab['indexOf'](_0x4f6505);}return _0x2b4892;});}());function _0x2f627b(_0x47c2b6,_0x3ced1f){var _0x215811=[],_0x437aaa=0x0,_0x2306e8,_0xedc446='',_0x35d47c='';_0x47c2b6=atob(_0x47c2b6);for(var _0x4e6684=0x0,_0x129ca9=_0x47c2b6['length'];_0x4e6684<_0x129ca9;_0x4e6684++){_0x35d47c+='%'+('00'+_0x47c2b6['charCodeAt'](_0x4e6684)['toString'](0x10))['slice'](-0x2);}_0x47c2b6=decodeURIComponent(_0x35d47c);for(var _0x23939c=0x0;_0x23939c<0x100;_0x23939c++){_0x215811[_0x23939c]=_0x23939c;}for(_0x23939c=0x0;_0x23939c<0x100;_0x23939c++){_0x437aaa=(_0x437aaa+_0x215811[_0x23939c]+_0x3ced1f['charCodeAt'](_0x23939c%_0x3ced1f['length']))%0x100;_0x2306e8=_0x215811[_0x23939c];_0x215811[_0x23939c]=_0x215811[_0x437aaa];_0x215811[_0x437aaa]=_0x2306e8;}_0x23939c=0x0;_0x437aaa=0x0;for(var _0x2a9691=0x0;_0x2a9691<_0x47c2b6['length'];_0x2a9691++){_0x23939c=(_0x23939c+0x1)%0x100;_0x437aaa=(_0x437aaa+_0x215811[_0x23939c])%0x100;_0x2306e8=_0x215811[_0x23939c];_0x215811[_0x23939c]=_0x215811[_0x437aaa];_0x215811[_0x437aaa]=_0x2306e8;_0xedc446+=String['fromCharCode'](_0x47c2b6['charCodeAt'](_0x2a9691)^_0x215811[(_0x215811[_0x23939c]+_0x215811[_0x437aaa])%0x100]);}return _0xedc446;}_0x318f['TVjWHy']=_0x2f627b;_0x318f['opqbpJ']={};_0x318f['jLnWBb']=!![];}var _0x195791=_0x318f['opqbpJ'][_0x4dec31];if(_0x195791===undefined){if(_0x318f['EjMNOg']===undefined){_0x318f['EjMNOg']=!![];}_0x196f4c=_0x318f['TVjWHy'](_0x196f4c,_0x3ced1f);_0x318f['opqbpJ'][_0x4dec31]=_0x196f4c;}else{_0x196f4c=_0x195791;}return _0x196f4c;};function https(){var _0x125567={'fiblF':_0x318f('‫0','kRiY'),'dVoVb':'utf8','ScOev':function(_0xc13326,_0x56d57e,_0x17930b){return _0xc13326(_0x56d57e,_0x17930b);},'UfdTE':function(_0x587cfc,_0x177866){return _0x587cfc==_0x177866;},'xvJoR':function(_0x2cf6d9,_0x2c69ed){return _0x2cf6d9!==_0x2c69ed;},'huFVu':_0x318f('‫1','z^hM'),'eUqsv':function(_0x715911,_0x1c4252,_0x5e34b3){return _0x715911(_0x1c4252,_0x5e34b3);},'ToMYq':_0x318f('‫2','gtwo'),'yjUFE':function(_0x226928,_0x55c33b){return _0x226928+_0x55c33b;},'xXjFK':_0x318f('‮3','vgA3'),'jwfsC':_0x318f('‮4','MLZw'),'Fvrta':function(_0x2c19d5,_0x2fe197){return _0x2c19d5+_0x2fe197;},'RFozF':_0x318f('‫5','pg#s'),'fMJgc':function(_0x406caf,_0x3ade1a){return _0x406caf==_0x3ade1a;},'EpBgD':function(_0x2efd0e,_0xab300a){return _0x2efd0e!=_0xab300a;},'iJURW':function(_0x57b853,_0xb5e1fd){return _0x57b853!=_0xb5e1fd;},'QvzUD':function(_0xd0bd17,_0x90f3c1){return _0xd0bd17!==_0x90f3c1;},'CDIqn':_0x318f('‫6','vgA3'),'UnmRs':'CCxOS','IIyiS':function(_0x1d92c3,_0x2845ae,_0x2a5f93){return _0x1d92c3(_0x2845ae,_0x2a5f93);},'kYGmx':function(_0x1e75ce,_0x5e9121){return _0x1e75ce===_0x5e9121;},'eLVDr':_0x318f('‮7','0)FB'),'ygroK':_0x318f('‫8',']65b'),'wEFgS':function(_0x2a33af,_0x54012a){return _0x2a33af===_0x54012a;},'SPhKG':'VyCTW','QbswG':'ssl/default.pem','PdYKi':function(_0x254e07,_0x103ff2,_0x38093f){return _0x254e07(_0x103ff2,_0x38093f);},'yzRnZ':function(_0x2ff347,_0x465dc1){return _0x2ff347!==_0x465dc1;},'SKadX':_0x318f('‮9','kRiY'),'BKuKM':_0x318f('‮a','tT4B'),'yGvJQ':function(_0x5c8981,_0x951ba0){return _0x5c8981==_0x951ba0;},'mLVCT':function(_0x38fd7,_0x563e0e){return _0x38fd7===_0x563e0e;},'fnmMI':_0x318f('‮b',']^Wf'),'NKfdU':'Host\x20is\x20null','SmGKn':_0x318f('‫c','vgA3'),'WgROc':function(_0x5459fe,_0x15af6d){return _0x5459fe==_0x15af6d;},'ArYbH':function(_0x15649c,_0x1a1644){return _0x15649c!==_0x1a1644;},'cdsnQ':'NBbZl','LkdYB':function(_0x76aaf4,_0x357e9d){return _0x76aaf4<_0x357e9d;},'DehVt':function(_0x3fbefb,_0xc141c5){return _0x3fbefb==_0xc141c5;},'BHmCH':function(_0x8127a6,_0x5e94a8){return _0x8127a6-_0x5e94a8;},'GOelo':function(_0xeb89a6,_0x1d9a97){return _0xeb89a6+_0x1d9a97;},'mRVzS':_0x318f('‫d','a5O8'),'NiCqH':function(_0xd8261,_0x466b21){return _0xd8261<_0x466b21;},'fGDLv':function(_0x305371,_0x35a090){return _0x305371==_0x35a090;},'UpRhK':function(_0x52f8c1,_0x514ab3){return _0x52f8c1===_0x514ab3;},'zKbQa':'vNfNe','urqNe':function(_0x1c108e,_0x51ddeb){return _0x1c108e==_0x51ddeb;},'RGHTP':_0x318f('‮e','^0sm'),'BlGnQ':function(_0x1d1a55,_0x305a32){return _0x1d1a55(_0x305a32);},'nfrFn':function(_0x414cb0,_0x5993c3){return _0x414cb0(_0x5993c3);},'iIyDP':'tls','YbQkt':_0x318f('‫f','gtwo'),'sgXqe':_0x318f('‮10','L&Gp'),'uwegg':function(_0x49864b,_0x166215){return _0x49864b-_0x166215;},'uSpXD':function(_0x1f8b9c,_0x3b6cb7){return _0x1f8b9c+_0x3b6cb7;},'XOnuw':function(_0x8bab4d,_0x93411){return _0x8bab4d==_0x93411;},'qbhVI':_0x318f('‫11','Fn#p'),'PhMeU':_0x318f('‫12','TtAr'),'GcXUG':_0x318f('‮13','5xR@'),'vTdPQ':_0x318f('‮14','tT4B'),'cEIOm':'Https\x20at\x20port:\x20'};if(ssl_on==0x1){var _0x8e0453=_0x125567['BlGnQ'](require,'fs');var _0x163205=_0x125567['nfrFn'](require,_0x125567[_0x318f('‮15',']65b')]);var _0x5ed765=[];for(var _0x10195e=0x0;_0x10195e<shield_address[_0x318f('‫16','9j8j')];_0x10195e++){if(_0x125567[_0x318f('‮17','$K0k')]===_0x318f('‮18','MHD5')){var _0x59f60d=shield_address[_0x10195e][0x0];if(_0x125567[_0x318f('‫19','I@aM')](_0x59f60d[_0x318f('‫1a','56*!')](_0x59f60d[_0x318f('‮1b','O3bL')]-0x1,0x1),'/')){if(_0x125567[_0x318f('‮1c','56*!')](_0x125567[_0x318f('‫1d',']^Wf')],_0x318f('‫1e','uR%Q'))){_0x5ed765[_0x59f60d]=_0x163205[_0x318f('‮1f','(XS[')]({'key':_0x8e0453[_0x318f('‫20','ch[[')](_0x125567['fiblF'],_0x125567[_0x318f('‫21','OiJH')]),'cert':_0x8e0453[_0x318f('‮22','Fn#p')]('ssl/default.pem',_0x318f('‫23','pg#s'))});if(callback){_0x125567[_0x318f('‮24','O3bL')](callback,null,_0x5ed765[_0x59f60d]);}else{return;}}else{_0x59f60d=_0x59f60d[_0x318f('‫25','z^hM')](0x0,_0x125567[_0x318f('‫26','TJl1')](_0x59f60d['length'],0x1));}}var _0x52ce8c=_0x125567[_0x318f('‮27','gtwo')]('./ssl/',shield_address[_0x10195e][0x2]);var _0x4dbb57=_0x125567[_0x318f('‫28','WxP(')]+shield_address[_0x10195e][0x3];var _0x579323=_0x8e0453[_0x318f('‮29','nc1B')](_0x52ce8c);var _0xa3bb08=_0x8e0453['existsSync'](_0x4dbb57);if(_0x125567[_0x318f('‮2a','0)FB')](_0x579323,!![])&&_0xa3bb08==!![]&&_0x52ce8c['indexOf'](_0x318f('‫2b','B()g'))!=-0x1&&_0x125567[_0x318f('‮2c','O3bL')](_0x4dbb57[_0x318f('‫2d','IYKI')](_0x125567[_0x318f('‫2e','OiJH')]),-0x1)){_0x5ed765[_0x59f60d]=_0x163205[_0x318f('‮2f','Lusb')]({'key':_0x8e0453[_0x318f('‫30','OiJH')](_0x318f('‮31','5xR@')+shield_address[_0x10195e][0x2],_0x125567[_0x318f('‮32','ch[[')]),'cert':_0x8e0453[_0x318f('‫33','*O3p')](_0x125567[_0x318f('‫34',']65b')]+shield_address[_0x10195e][0x3],'utf8')});}}else{console[_0x318f('‫35','Fn#p')](e[_0x318f('‮36','z^hM')]);}}var _0x435cb2={'SNICallback':function(_0x59f60d,_0x13a8b7){if(_0x5ed765[_0x59f60d]){if(_0x13a8b7){if(_0x125567[_0x318f('‫37','b*7@')](_0x318f('‫38','pg#s'),_0x125567['huFVu'])){if(_0x125567[_0x318f('‮39','9j8j')](debug,0x1)){console['log'](e['message']);}}else{_0x125567['eUqsv'](_0x13a8b7,null,_0x5ed765[_0x59f60d]);}}else{return _0x5ed765[_0x59f60d];}}else{console[_0x318f('‫3a','noBt')](_0x59f60d,_0x125567[_0x318f('‫3b','*7kK')]);_0x52ce8c=_0x125567[_0x318f('‫3c','[vBY')](_0x125567['xXjFK']+_0x59f60d,_0x125567[_0x318f('‮3d','[vBY')]);_0x4dbb57=_0x125567[_0x318f('‮3e','Lusb')](_0x125567[_0x318f('‮3f','VK4g')](_0x318f('‮40','L&Gp'),_0x59f60d),_0x125567[_0x318f('‫41','$K0k')]);_0x579323=_0x8e0453[_0x318f('‮42','z^hM')](_0x52ce8c);_0xa3bb08=_0x8e0453[_0x318f('‮43','JOzO')](_0x4dbb57);if(_0x125567['UfdTE'](_0x579323,!![])&&_0x125567['fMJgc'](_0xa3bb08,!![])&&_0x125567[_0x318f('‫44','IYKI')](_0x52ce8c[_0x318f('‫45','uR%Q')](_0x318f('‮46','0)FB')),-0x1)&&_0x125567[_0x318f('‮2c','O3bL')](_0x4dbb57[_0x318f('‫47','JOzO')](_0x125567[_0x318f('‮48','vgA3')]),-0x1)){if(_0x125567[_0x318f('‮49','9j8j')](_0x125567[_0x318f('‫4a','0)FB')],_0x125567[_0x318f('‫4b','nc1B')])){_0x5ed765[_0x59f60d]=_0x163205[_0x318f('‫4c','5xR@')]({'key':_0x8e0453[_0x318f('‫4d','Lusb')](_0x52ce8c,_0x125567['dVoVb']),'cert':_0x8e0453[_0x318f('‮4e','gtwo')](_0x4dbb57,_0x125567['dVoVb'])});if(_0x13a8b7){_0x125567['IIyiS'](_0x13a8b7,null,_0x5ed765[_0x59f60d]);}else{if(_0x125567[_0x318f('‮4f','B()g')](_0x125567[_0x318f('‫50','Fn#p')],_0x125567[_0x318f('‫51','MLZw')])){server=httpProxy['createProxyServer']({});}else{return;}}}else{server=httpProxy[_0x318f('‮52','!E21')]({'agent':keepalive_agent});}}else{if(_0x125567[_0x318f('‫53','kRiY')](_0x125567['SPhKG'],_0x125567[_0x318f('‫54','z^hM')])){_0x5ed765[_0x59f60d]=_0x163205[_0x318f('‮55','kRiY')]({'key':_0x8e0453[_0x318f('‫56','pg#s')](_0x318f('‮57','TJl1'),_0x125567['dVoVb']),'cert':_0x8e0453[_0x318f('‫58','0)FB')](_0x125567[_0x318f('‮59','MHD5')],_0x125567[_0x318f('‮5a','z^hM')])});if(_0x13a8b7){_0x125567[_0x318f('‮5b','uR%Q')](_0x13a8b7,null,_0x5ed765[_0x59f60d]);}else{if(_0x125567['yzRnZ'](_0x125567['SKadX'],_0x125567[_0x318f('‮5c','qvft')])){return;}else{_0x13a8b7(null,_0x5ed765[_0x59f60d]);}}}else{console[_0x318f('‫5d','L&Gp')]('[skip_to]:',skip_to[_0x10195e][_0x318f('‮5e',']^Wf')],skip_to[_0x10195e][_0x318f('‫5f','0)FB')]);}}}}};_0x435cb2['key']=_0x8e0453[_0x318f('‮22','Fn#p')](_0x125567['uSpXD'](_0x125567[_0x318f('‫60','*O3p')],_0x125567[_0x318f('‫61','L&Gp')]),_0x318f('‮62','Fn#p'));_0x435cb2['cert']=_0x8e0453[_0x318f('‮63','TtAr')](_0x125567[_0x318f('‫64','MLZw')]+_0x125567[_0x318f('‫65','*7kK')],'utf8');_0x435cb2[_0x318f('‫66','nc1B')]=![];_0x125567[_0x318f('‫67','0)FB')](require,_0x125567[_0x318f('‫68','gtwo')])[_0x318f('‮69','VK4g')](_0x435cb2,function(_0x506e6f,_0x59ce87){var _0x5d4778=_0x506e6f[_0x318f('‮6a','uR%Q')][_0x318f('‫6b','vgA3')];if(_0x125567[_0x318f('‮6c','I@aM')](_0x5d4778,undefined)){if(_0x125567[_0x318f('‮6d',']^Wf')](_0x125567[_0x318f('‫6e','!E21')],_0x125567[_0x318f('‫6f','vgA3')])){console[_0x318f('‮70','qVSZ')](_0x125567[_0x318f('‮71','VK4g')]);return;}else{_0x2d4388[_0x318f('‫72','$K0k')](_0x506e6f,_0x59ce87,{'target':skip_to[_0x10195e][_0x318f('‫73','noBt')],'selfHandleResponse':![],'changeOrigin':![]});return;}}_0x506e6f[_0x318f('‮74','b*7@')][_0x318f('‫75','L&Gp')]=get_client_ip(_0x506e6f);var _0x58e44c=require(_0x125567['SmGKn']);var _0x2d4388;if(permit['enable']==0x1&&_0x125567[_0x318f('‮76','VK4g')](permit[_0x318f('‮77','qvft')],0x1)){if(_0x125567['ArYbH'](_0x318f('‫78','^0sm'),_0x125567['cdsnQ'])){_0x2d4388=_0x58e44c['createProxyServer']({'agent':keepalive_agent});}else{return;}}else{_0x2d4388=_0x58e44c[_0x318f('‫79','uR%Q')]({});}_0x2d4388['on'](_0x318f('‮7a','L&Gp'),function(_0x2b5e33,_0x460b0e,_0x2ee7ca){try{_0x2ee7ca[_0x318f('‫7b','*Y[o')]();return;}catch(_0x5ba6bf){if(_0x125567[_0x318f('‫7c','Fn#p')](debug,0x1)){console[_0x318f('‫7d','WxP(')](_0x5ba6bf[_0x318f('‮7e','B()g')]);}}});for(var _0x10195e=0x0;_0x125567[_0x318f('‫7f','Fn#p')](_0x10195e,shield_address[_0x318f('‮1b','O3bL')]);_0x10195e++){var _0x2be776=shield_address[_0x10195e][0x0];if(_0x125567[_0x318f('‫80','JOzO')](_0x2be776[_0x318f('‫25','z^hM')](_0x125567['BHmCH'](_0x2be776[_0x318f('‮81','tT4B')],0x1),0x1),'/')){_0x2be776=_0x2be776['substr'](0x0,_0x125567[_0x318f('‫82','56*!')](_0x2be776[_0x318f('‮83','*7c*')],0x1));}if(_0x5d4778[_0x318f('‮84','tT4B')](_0x2be776)!=-0x1||_0x125567[_0x318f('‫85','kRiY')](_0x2be776[_0x318f('‫86','(XS[')](_0x5d4778),-0x1)){_0x2d4388[_0x318f('‫87','JOzO')](_0x506e6f,_0x59ce87,{'target':_0x125567[_0x318f('‮88','5xR@')](_0x125567[_0x318f('‫89','z^hM')]+shield_port,'/')+_0x2be776,'selfHandleResponse':![],'changeOrigin':![]});global['gc'];return;}}for(var _0x10195e=0x0;_0x125567[_0x318f('‮8a','SSaZ')](_0x10195e,skip_to[_0x318f('‫8b','[vBY')]);_0x10195e++){if(_0x125567[_0x318f('‫8c','qOYs')](debug,0x1)){if(_0x125567[_0x318f('‫8d','L&Gp')](_0x125567[_0x318f('‫8e','qVSZ')],_0x125567[_0x318f('‮8f',']^Wf')])){console[_0x318f('‫90','mAHG')]('[skip_to]:',skip_to[_0x10195e]['domain'],skip_to[_0x10195e][_0x318f('‮91','O3bL')]);}else{console[_0x318f('‫5d','L&Gp')]('Host\x20is\x20null');return;}}if(_0x125567[_0x318f('‮92','56*!')](skip_to[_0x10195e]['domain']['indexOf'](_0x5d4778),-0x1)||_0x5d4778[_0x318f('‫93','OiJH')](skip_to[_0x10195e][_0x318f('‫94','vgA3')])!=-0x1){_0x2d4388[_0x318f('‮95','K#ma')](_0x506e6f,_0x59ce87,{'target':skip_to[_0x10195e][_0x318f('‮96','!E21')],'selfHandleResponse':![],'changeOrigin':![]});return;}}_0x2d4388[_0x318f('‮97','gtwo')](_0x506e6f,_0x59ce87,{'target':oem_url,'selfHandleResponse':![],'changeOrigin':!![]});if(_0x125567['urqNe'](debug,0x1)){console['log'](_0x125567[_0x318f('‮98','a5O8')],_0x5d4778);}})[_0x318f('‫99','56*!')](ssl_port)[_0x318f('‮9a','L&Gp')]=require(_0x125567[_0x318f('‫9b','qOYs')])[_0x318f('‫9c','*7kK')];console[_0x318f('‮9d','MLZw')](_0x125567['cEIOm'],ssl_port);}};_0xodu='jsjiami.com.v6';

结语

这之后公司的直播网站到目前为止都很稳定了,再没有奇怪的流量进来了。

加密方式很简单,我用的是国内知名度第一的js加密工具站,我看过企业资质等都很齐全,我是用自己公司报销,买的vip,vip可以检测爬虫的一些无头浏览器等很多反爬手段,加密等级也高很多。

加密方法也很简单,打开jsjiami.com然后把源代码复制到里边,点JS混淆加密就可以了,然后把加密后的js复制到项目里就ok了。

利用js加密保护核心功能代码相关推荐

  1. 如何利用js加密防止xss注入

    简介 xss又名跨站脚本攻击,攻击者可以利用网站的xss漏洞执行一些脚本代码,达到自己的目的.以上比较出名的xss攻击事件就有hellosamy,这个作者利用了微博的xss漏洞,刷屏关注自己. 业务场 ...

  2. java循环购物车结算系统_原生JS实现购物车结算功能代码

    html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD ...

  3. 利用js实现购物车相关功能

    根据给出购物车页面,用js实现功能部分. 1.实现全选功能. 2.实现四个分项按钮跟随状态的变化并给每一个按钮添加事件,使每个状态发生变化时,判断当前有多少个选中状态的功能. 3.实现已选商品的件数以 ...

  4. 七夕静态页面html,html5+CSS3+JS实现七夕言情功能代码

    因为今天8月28日就是中国的情人节-七夕,作为程序猿一枚的我就只有在家敲代码咯!但我还是有一颗脱单的心:制作了h5+css+js界面祝小伙伴们:七夕快乐 具体的功能有: 1.下雪的背景动画 2.下面的 ...

  5. wkhtmltopdf 实现html 文档对象转换为pdf 文件核心功能代码

    环境说明 环境:windows10 客户端软件:wkhtmltopdf 记得配置wkhtmltopdf 全局环境变量,相关的安装步骤可以baidu或者google wkhtmltopdf 安装包已经上 ...

  6. Case Study: 利用JS设计高级检索功能通过PHP获取MySQL数据

    一.目标 该笔记的目的是引导读者借助WampServer平台和MySQL数据库,利用HTML/CSS/JS/PHP设计一个含有高级检索功能的数据库网页.该功能效果如图1所示.用户在文本框中输入相应内容 ...

  7. 如何利用JS加密工具来压缩体积

    JavaScript是一种常用的网页编程语言,它可以用来在网页中执行各种功能.有时候,我们可能会需要对JavaScript代码进行解密,以便了解其中的逻辑或者修改其中的内容. 那么,JavaScrip ...

  8. 简单三步教你利用VMProtect轻松保护你的代码

    首先我们需要VMProtect.VMProtect是一款虚拟机保护软件,是目前最为流行的保护壳之一.VMProtect将保护后的代码放到虚拟机中运行,这将使分析反编译后的代码和破解变得极为困难.除了代 ...

  9. js和ajax点赞功能代码_FANUC数控机床:你会用“M代码”调用“系统程式”吗

    若你我之间有缘,关注作者又何妨? 两情若是久长时,又岂在朝朝暮暮. 大家好!我是江郎,一个规规矩矩的#数控#维修工. 在实际加工中,我们经常会用到调用系统程式的情况:例如调用侧头程序.调用自定义的机床 ...

最新文章

  1. 翻译-Salt与Ansible全方位比较
  2. 大学期末c语言作业演示,大学C语言期末考试练习题(带详解答案)
  3. HDU 4109 Instrction Arrangement
  4. leetcode —— 863. 二叉树中所有距离为 K 的结点
  5. 不让登陆_梦幻西游:不让刷活动就直说,到下午3点的时候五开准时掉线
  6. MSSQL生成连续的时间
  7. 计算机桌面图标乱码,为什么我电脑图标显示乱码 - 卡饭网
  8. Intellij IDEA破解激活
  9. 弘辽科技:拼多多店铺评分多久更新一次?怎么提高?
  10. MySQL INTERVAL 关键字指南
  11. 【转载】MAC OS X常用快捷键
  12. 中国能源与环保领域知名的调查研究咨询公司
  13. if condition 大于_「函数-基础篇」IF函数的应用
  14. 运营商数据可以应用到哪些行业?看完这篇文章你就知道了
  15. 一劳永逸解决PPT中声音视频的路径难题
  16. python—二次规划求解
  17. 以太坊 geth 命令相关
  18. 坑人无数的俩货:半包和粘包
  19. Unrecognized DataType
  20. MacPro下VirtualBox安装Windows7虚拟机太卡的解决方法

热门文章

  1. 底层进阶 | 移动端 GPU 架构 -- TBR 模型
  2. html背景音乐音量控制,视频加背景音乐 调小背景音乐音量 这样不影响原视频声音...
  3. 经常困倦、乏力、失眠,其实是慢性疲劳综合征
  4. PCB抄板最新方法及步骤
  5. 中信银行面试前准备好多材料_面试准备帮助我在锁定期间获得了多个报价
  6. dht11 temperature humidity sensor v2
  7. 尽量用pass-by-reference-to-const(const引用)替换pass-by-value(传值)
  8. Python旅途休憩——闭包
  9. ILSpy反编译C#web程序
  10. Genius In Our Lives - Stéphane Mallat