ast框架一键还原某里140初体验

ast框架一键还原某里140初体验

相关文献

1.sml2h3/ast_tools: ast基础框架-基于babel
2.AST基础知识:环境的搭建与babel库的安装
3.某酷ckey签名生成算法系列文章

反混淆demo初体验

首先使用WebStorm从github项目上拉取项目到本地,项目地址为相关文献中的第一条。

在这里插入图片描述

在使用方式中可以看到,需要先安装nodejs,以及一些依赖,然后就可以运行测试文件main.js。本机已经按照过nodejs了,就不再安装了,还没有安装的小伙伴可以到nodejs官网 下载安装。

接着是安装依赖,去到下方Terminal窗口依次安装

在这里插入图片描述

npm install iconv-lite
npm install @babel/core

在这里插入图片描述

安装完成后,尝试运行main.js

在这里插入图片描述
在运行过程中会打印一些控制流反混淆的信息

在这里插入图片描述
大概10秒钟左右执行完成,并提示文件输出到【./demos/demo1/output.js】,打开文件查看

在这里插入图片描述
可以看到控制流已经被还原,字符串也已经反混淆好了,简单的一步操作,将代码的可读性大幅增加。

源代码初步理解

以main.js作为入口文件

在这里插入图片描述
其中的【common_fix.fix】是关键函数,把源代码得到输出代码,其中的【common_fix】是由【./pro/demo1_fix】中导入,继续查看demo1_fix.js

在这里插入图片描述
整体逻辑非常清晰,一开始是官方函数,基本所有使用babel库的都是这样导入api,解析的反混淆的核心函数,这里一共有15个函数,每个函数都是各自专属的功能,最后是反混淆的主函数,表明了每个api的执行顺序。

这里的15个自写的api反混淆函数还没有时间详细研究,整个设计下来非常简洁,执行速度也非常快(对比我的要好几分钟),总结来说是非常值得学习的。

更多ast相关的文章欢迎加入我的星球一起学习

在这里插入图片描述

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值