前提:
1、在js逆向中最麻烦的是找到加密位置,通过堆栈一层层找的话,就很麻烦,而ast-hook-for-js-ER则可以根据变量值查找到该值生成的加密位置,这样对我们来说就方便了很多
2、这个只是记录windows平台上ast-hook-for-js-RE中的anyproxy代理的安装,以及ast-hook-for-js-RE使用anyproxy中出现的问题
anyproxy安装也可以参考anyproxy安装使用
anyproxy的安装以及ast-hook-for-js-ER使用:
1、请确保node.js已经安装,您的node版本至少到14.0.0+
2、下载ast-hook-for-js-RE代码,解压到指定区域;
3、cmd进入到解压文件ast-hook-for-js-RE目录下,npm install anyproxy, 只安装到该目录下就好了,不要全局安装,全局安装, 后续的proxy-servers.js文件无法获取到anyproxy,会导致执行失败;
4、cd …\ast-hook-for-js-RE-master\src\proxy-server该目录下,然后node proxy-server.js运行,使用proxy-server启动anyproxy服务;
5、 本地浏览器访问https://localhost:8002, 下载ca证书,安装到本地计算机的受信任机构证书下;
6、使用chrome访问示例网站:https://www.geetest.com/demo, 然后在检查的console页面中,查看hook.search(“”), 如果出现hook is not defined, 则需要修改ast-hook-for-js-RE的源代码,原因是读取js文件的路径不对,在\src\components\global-assign-hook-component\core\plugins-manager.js中改下文件目录就可以了,即把定义的hookJsCode、pluginsBaseDirectory中的“__dirname”修改成ast-hook-for-js-RE的安装目录,比如:‘F:/ast-hook-for-js-RE/’,然后删除掉js-file-cache缓存文件,再重启proxy-server