渗透中的逆向工具-jsrpc实操手记

admin 2026-05-06 06:07:00 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细介绍了在渗透测试中使用jsrpc工具逆向处理加密网站接口的实操方法。作者通过具体案例演示了如何定位加密函数、建立jsrpc连接、编写Python调用代码,并分享了调试技巧和常见问题解决方案。关键发现是该工具能直接调用网页加密函数,避免繁琐的代码逆向过程,提高测试效率。文档还总结了完整的工作流程:客户端通过JSRPC服务器加密请求数据,发送至目标API,再解密响应密文。 综合评分: 78 文章分类: 渗透测试,WEB安全,安全工具,红队,代码审计


cover_image

渗透中的逆向工具-jsrpc实操手记

原创

小湫泥 小湫泥

不怎么安全

2025年6月8日 19:34 北京

在小说阅读器读本章

去阅读

前言

在渗透测试过程中,有些网站的接口参数是加密的。对于逆向小菜鸡的我来说,遇到这种网站总是束手无策,不能修改其中的参数,也就无法进行下一步的测试。偶然间发现一款js逆向工具jsrpc,它可以直接调用网页加密函数,免去繁琐的扣代码步骤。

实操

构造方法

这里以该网站为例,如图所示,请求体和响应体皆为加密字符串

直接在js中找“encrypt(”关键字,发现有点多

直接使用xhr进行断点(原理是触发/login请求处断点),往前几行找到请求体中param的传参及加密加密方法

加密处再次进行断点,发现加密的参数如下

这里继续往前找secret的生成位置

此处加密的参数为m,m的值如下这里前面部分皆可由js中自动获取,后面部分为传入的用户名密码

至此整个加密的代码片段如下

在加密处进行断点,并将整个加密代码片段构造提升为有参的全局方法

构造后调用,放掉后若与数据包一致则为成功

解密方法也是如此,这里不过多赘述

至此已将加解密代码提升为全局的有参方法

建立连接

在控制台中输入jsrpc所需代码(jsrpc项目中的js文件代码)

打开jsrpc监听

按照jsrpc使用文档中所述,构造方法,建立jsrpc连接

代码调用

编写python的调用代码

运行如下

调试小技巧及避坑

小技巧

可以在注册全局方法的时候,将怀疑出问题的地方插入打印代码console.log(),后续jsrpc在进行调用该方法的时候就可以在控制台进行打印

坑点

python将json格式(如a='{“password”:”1212″,”username”:”1212″}’)传到控制台时,会变成var param={“password”:”1212″,”username”:”1212″},此时输出会发现,这里变成了Object类型,拼接后会变成[object Object]

解决方法是在构造方法时,将传入的参数使用JSON.stringify()进行处理 param=JSON.stringify(param)

总结

总体工作流程如下

1、客户端(本程序)将原始请求数据通过JSRPC服务器(本地)加密

2、客户端将加密数据发送给目标API

3、目标API返回响应密文

4、客户端将响应的密文通过JSRPC服务器解密,得到原始响应


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:不怎么安全 小湫泥 小湫泥《渗透中的逆向工具-jsrpc实操手记》

明天结束,再发一下吧 网络安全文章

明天结束,再发一下吧

文章总结: 该文档推广Z2O安全攻防的SRC专项学习圈假期半价优惠活动,售价49元。学习圈主要提供SRC专项漏洞知识库更新、优质视频课程分享、漏洞挖掘技巧Tip
评论:0   参与:  0