加密方法远程调用--微博加密参数RPC

加密方法远程调用–微博加密参数RPC

该文章以微博登录为案例,简单记录一下今日RPC远程调用成功

什么是RPC?

RPC(Remote Procedure Call) 是远程调用的意思。具体什么概念,在下也不太清楚啊👀
废话不多说,进入正题!

微博登录接口抓包

网站链接: https://weibo.com/login.php, 打开F12

在这里插入图片描述

通过rsakv参数,全局搜索

在这里插入图片描述

将代码格式化,局部搜索rsakv参数

在这里插入图片描述
在这里插入图片描述

到这里发现了加密位置,接下来对Js文件进行修改,添加一个WebSocket客户端,让我们可以RPC调用

替换JS文件

找到在这里插入图片描述

点击》切换到Overrides,在本地新建一个文件夹,点击select folder for overrides

在这里插入图片描述

选择完文件夹,点击 learn more ,点击同意后,我们就能看到,记得勾选 √ enable local overrides
在这里插入图片描述

把未格式化的代码点击save for overrides,接下来我们就可以进行修改了,把格式化后的代码复制粘贴到test文件夹中保存的文件,Ctrl+s保存(微博的index.js文件,每隔一个小时都会进行重命名,所以需要重新覆盖)
在这里插入图片描述

在这里插入图片描述

!function (){
    if(window.flagLX){}
    else {
        window.weiboLx = makeRequest;
        var ws = new WebSocket("ws://127.0.0.1:9999");
        window.flagLX = true;
        ws.open = function (evt){};
        ws.onmessage = function (evt){
            var lx = evt.data;
            var result = lx.split(",");
            var res = window.weiboLx(result[0], result[1], 7, false);
            ws.send(JSON.stringify(res));
        }}
}();

注入js后,ctrl+s保存。

用python创建一个webSocket服务端

import asyncio
import websockets
import time


async def check_permit(websocket):
    for send_text in ['111111111,222',
                      '222222222,111',
                      '333333333,444',
                      '444444444,333',
                      ]:
        await websocket.send(send_text)
    return True


async def recv_msg(websocket):
    while 1:
        recv_text = await websocket.recv()
        print(recv_text)


async def main_logic(websocket, path):
    await check_permit(websocket)
    await recv_msg(websocket)


start_server = websockets.serve(main_logic, '127.0.0.1', 9999)
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()

直接启动python服务
覆盖后js一定要保存刷新一下,调试一下。
调试成功,在点击登录,我们python服务端就会收到参数加密后的值

在这里插入图片描述
在这里插入图片描述

视频教程https://www.bilibili.com/video/BV1Ur4y1G73h?spm_id_from=333.1007.top_right_bar_window_history.content.click

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值