AST插件类编写小技巧
        【摘要】 
                     
 
  现在混淆的js越来越卷了,越来越多的混淆js把唯一一个还原的突破点放在了一个毫不起眼的地方,令人眼花缭乱。
 
 
  
 
 
  而越来越多的字符串解密则放进了 while - switch 控制流,有时候不得不将部分控制流还原了再进行字符串的替换,可谓费时费力。
 
 
  
 
 
  有时候为了好管理插件,不得不区...
    
    
    
    
   现在混淆的js越来越卷了,越来越多的混淆js把唯一一个还原的突破点放在了一个毫不起眼的地方,令人眼花缭乱。 
 
 
 
   而越来越多的字符串解密则放进了 while - switch 控制流,有时候不得不将部分控制流还原了再进行字符串的替换,可谓费时费力。 
 
 
 
   有时候为了好管理插件,不得不区分解密字符串的代码和ast的代码,这里分享一下我的经验。 
 
 
 
   1.我们把解密字符串的代码放进一个js文件里,如 decodeStr.js 
 
 
 
   2.把需要用到的函数名和变量全部改为全局函数和全局变量。 
 
 
 
   如 var QI = global;  ==> QI = global;   
 
 
 
   function add(a,b) {return a + b;} ==> add = function (a,b) {return a + b;}  
 
 
 
   2.在 ast还原的文件里,直接导入 decodeStr.js 即可以使用里面的全局函数和全局变量了。 
 
 
 
   const GlobalVar = require("./decodeStr"); 
 
 
 
   这样就区分了解密字符串的代码和ast文件。 
 
 
 
   非常的舒服。 
 
 
文章来源: blog.csdn.net,作者:悦来客栈的老板,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq523176585/article/details/122632352
        【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
            cloudbbs@huaweicloud.com
        
        
        
        
        - 点赞
 - 收藏
 - 关注作者
 
            
           
评论(0)