JS逆向-安全辅助项目&接口联动&JSRpc进阶调用&BP插件autoDecode&JsEncrypter(下)

Ethan医生4个月前逆向337

 JS逆向-项目-项目联动&自动接口&Burp发包

#JSRpc进阶

当我们遇到一些前端加密的时候,通常我们会去逆向JS,找到加密函数,然后使用burp插件或者python实现加密,这样我们还需要扣一些细节去补环境,下面介绍利用JSRPC的方法(只需要找到加密函数)实现加密JSRPC就是远程调用协议,简单来说就是我们可以本地编写代码去调用浏览器的JS加密函数,我们就不需要去考虑函数的具体逻辑了。

1、植入JSEnv并启动ws服务端

执行:resouces/JsEnv_Dev.js

执行:window_amd64.exe

 

2、本地替换加密函数JS文件

添加连接JSRPC和注册接口并调用加密

//连接JSRPC

var demo = new Hlclient("ws://127.0.0.1:12080/ws?group=xiaodi&name=xiaodisec");

//注册接口并调用加密

demo.regAction("pass",function(resolve,param){

resolve(encrypt.encrypt(param));

})

 ****需要在控制台中添加JsEnv_Dev.js

3、访问注册接口测试加密

http://127.0.0.1:12080/go?group=xiaodi&name=xiaodisec&action=pass&param=123456

 

#JSRpc+autoDecoder

1、正常完成上述JSRpc操作

2、autoDecoder配置接口

3、编写项目模版py监听接受

4、请求接口路由测试加解密

注意:data指向和jsrpc一致,debug模式确定开启

参考:https://forum.butian.net/share/2889

 

#JsEncrypter

1、下载phantomjs并设置环境变量

https://phantomjs.org/download.html

 

2、BurpSuite加载jsEncrypter插件

https://github.com/c0ny1/jsEncrypter/releases

 

3、对逆向的加密算法提取JS文件及代码    

JSEncrypt.js

 

var r = new JSEncrypt, o = "xxxxxxxxx";

r.setPublicKey(o);

var s = r.encrypt(password)

return s

 

4、将代码写入到模版中(引用JS和调用加密)

var wasSuccessful = phantom.injectJs('JSEncrypt.js');

 

function encrypt(password){

var r = new JSEncrypt,

o = "xxxxxxxxx";

r.setPublicKey(o);

var s = r.encrypt(password)

return s

}

 

// 处理函数

function js_encrypt(payload){

/**********在这里编写调用加密函数进行加密的代码************/

var newpayload=encrypt(payload)

/**********************************************************/

return newpayload;

}

 

5、运行刚写入的模版文件后插件连接测试

phantomjs xxxxx.js

 

6、正常设置发包后选择引用插件选项


标签: JS逆向

相关文章

JS逆向-HOOK钩子&脚本开发&注入逻辑&油管猴配置&绕过Debug&定时循环&构造函数

➢ JS逆向-F12开发者工具-使用指南➢ JS逆向-F12开发者工具-调用堆栈➢ JS逆向-F12开发者工具-断点调试➢ JS逆向-反调试分析技术-检测&am...

JS逆向-Sign签名&绕过技术&算法可逆&替换库模拟发包&堆栈定位&特征搜索&安全影响

➢ JS逆向-Sign绕过-签名影响&加密解密Sign(签名)机制广泛应用于API请求、数据传输、身份验证等场景,用于确保数据的完整性和来源可信性。它对渗透测试(Penetratio...

JS逆向-安全辅助项目&Yakit热加载&魔术方法&模版插件语法&JSRpc进阶调用&接口联动

#Yakit的热加载参考:https://yaklang.com/products/Web%20Fuzzer/fuzz-hotpatch简单来说主要以数据包发包前和发包后的数据修改功能 1、...

JS逆向-代码混淆&AST技术&抽象语法树&Obfuscator混淆&还原接口&数据节点&AI生成

➢ JS逆向-代码混淆-加密意义&常见方法➢ JS逆向-代码混淆-特征识别&自动分析➢ JS逆向-代码混淆-AST语法树&AI辅助简单来说AST就...

JS逆向-安全辅助项目&JSRpc远程调用&Burp插件autoDecode&浏览器拓展V_Jstools(上)

JS逆向-安全辅助项目&JSRpc远程调用&Burp插件autoDecode&浏览器拓展V_Jstools(上)

➢ JS逆向-项目-V_jstools&autoDecode&JsRpc#V_Jstoolshttps://github.com/Zjingwen/v-jstools浏览器插...

JS逆向-开发者工具&网络请求筛选&调用堆栈链&断点调试方法&数据作用域&控制台分析

➢ JS逆向-F12开发者工具-使用指南➢ JS逆向-F12开发者工具-调用堆栈➢ JS逆向-F12开发者工具-断点调试#前置说明1、JS逆向与安全事实上,前端的逆向通俗...

评论列表

asdf
2025-05-26 16:58:36

哥们,你复现成功了吗?

asdf
2025-05-26 16:59:33

为什么我本地替换覆盖里面的代码没有执行

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。