【Android视频号③ Xposed插件编写】

news2024/11/24 11:33:35

这节 就是将frida代码翻译为Xposed 然后利用Sekiro服务进行接口调用

Xposed环境

我的测试环境是 LSPosed 它是完全兼容XP模块的 (免重启调试起来方便一点)下载后用Magisk安装即可.
模块编写可以参考这篇文章 XPosed模块编写教程

翻译代码

首先需要拦截微信进程 然后只加载一次微信插件 因为加载多次 可能就会调用多次!
在这里插入图片描述
Xposed代码 没有太多的坑内部做了一定转换 所以调用起来 基本上没有什么坑
在这里插入图片描述
由于微信是的请求都是异步的 所以需要主动调用后 然后进行异步拦截hook 存入到缓存
在这里插入图片描述
这样我们简单的微信视频号hook Xposed插件就完成了

接口调用

这边使用的是 sekiro

Sekiro
SEKIRO是一个多语言的、分布式、网络拓扑无关的服务发布平台,通过书写各自语言的handler将功能发布到中心API市场,业务系统通过RPC的方式使用远端节点的能力。

更多介绍,请参考详细文档: https://iinti.cn/sekiro/

Sekiro是一个RPC框架 sekiro主要支持多节点的程序调用,所以他归属于RPC(Remote Procedure
Call)框架:API管理、鉴权、分布式、负载均衡、跨语言

在初始化Sekiro的时候需要初始化插件
在这里插入图片描述
官方提供了一个简单的handler demo

@Action("clientTime")
public class ClientTimeHandler implements RequestHandler {
    @AutoBind
    private String param1;

    @AutoBind
    private Integer sleep;

    @Override
    public void handleRequest(SekiroRequest sekiroRequest, SekiroResponse sekiroResponse) {
        if (sleep != null && sleep > 0) {
            try {
                Thread.sleep(sleep * 1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
        sekiroResponse.success("process: " + MyXposedInit.loadPackageParam.processName + " : now:" + System.currentTimeMillis() + " your param1:" + param1);
    }
}

Action 表示执行的函数
重写 handleRequest 即可调用接口直接执行 如图
在这里插入图片描述
这样我们就可以把微信视频号请求的也封为一个接口
上面已经贴出调用例子 只要在handleRequest执行一下刚刚的例子 然后获取返回数据就可以了
在这里插入图片描述
调用一下
在这里插入图片描述
ok 至此在LSP上跑微信视频号 已经全部完成 接下来就是部署到生产环境~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/365675.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java数据结构与算法第十一课---反射、枚举以及lambda表达式

一 : 反射 1.定义 Java的反射(reflection)机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性,既然能拿到,那么…

k8s1.23.0+ubuntu20.04+docker23+hyperv

问题 k8s node节点加入到集群时卡住 “[preflight] Running pre-flight checks” # master节点重新生成加入命令 kubeadm token create --ttl 0 --print-join-command参考 注意 k8s1.24使用containerd而不再使用docker,因此使用k8s1.23版本 环境 k8s: 1.23.0 u…

【Python入门第十五天】Python字典

字典(Dictionary) 字典是一个无序、可变和有索引的集合。在 Python 中,字典用花括号编写,拥有键和值。 实例 创建并打印字典: thisdict {"brand": "Porsche","model": "911&q…

2023年湖北施工员怎么报考?甘建二告诉你

湖北施工员怎么报考?考施工员需要了解哪些知识呢?跟甘建二一起来看下 一、湖北施工员报名条件: 甘建二告诉你,施工员报名条件基本没有限制,年满18岁即可。个人名义都可以报考,限制不多,不是跟安…

20230223-EF6用原生的命令执行SQL命令

目录:一、环境说明二、背景三、示例代码四、思考总结一、环境说明本机环境:windows10 操作系统 使用工具:Visual Studio 2022 Net版本:Net6.0二、背景在使用winform EF 开发过程中,需要用到类似 QueryList QueryScalar 等功能的时…

MySQL中MVCC如何解决不可重复读以及幻读?

了解MVCC之前,我们首先需要了解以下两个概念:一致性非锁定读和锁定读,了解这两个概念之后我们在逐步分析MVCC。 一致性非锁定读和锁定读 一致性非锁定读(快照读) 对于 一致性非锁定读的实现,通常做法是加一个版本号或者时间戳字…

【12-JVM面试专题-垃圾回收器好坏评价的标准?吞吐量和响应时间?生产环境中,如何选择合适的垃圾收集器?如何判断是否使用G1垃圾收集器?】

垃圾回收器好坏评价的标准?吞吐量和响应时间?生产环境中,如何选择合适的垃圾收集器?如何判断是否使用G1垃圾收集器? 垃圾回收器好坏评价的标准?吞吐量和响应时间?生产环境中,如何选择…

python基于vue戒烟网站

可定制框架:ssm/Springboot/vue/python/PHP/小程序/安卓均可开发目录 开发语言:Python python框架:django/flask 软件版本:python 数据库:mysql 数据库工具:Navicat11 开发软件:PyCharmscode 项目介…

Java常用算法

关于时间复杂度: 平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序。O(n1)) 排序, 是介于 0 和 1 之间的常数。希尔排序。线性阶 (O(n)) 排序 基数排序&#xff0c…

技能提升:Python技术应用工程师职业技能提升

职业技术培训-Python技术应用工程师分为高级培训班、中级培训班及初级培训班。 Python是一种跨平台的计算机程序设计语言,是一个高层次的结合了解释性、编译性、互动性和面向对象的语言。最初被设计用于编写自动化脚本Shell(适用于Linux操作系统&#xf…

2-并发篇

线程有哪些状态 java的线程状态有6种: 操作系统中有5状态的说明 注意java的runnable对应了就绪、运行、阻塞I/O 线程池的核心参数 主要是说线程池的一个实习类 threadPoolExecutor.class 1.corePoolSize 核心线程数据(可以为0) 最多保…

第一章:网络参考模型

一、专业术语 ISO---(International Organization for Standardization)国际标准化组织 OSI---(Open System Interconnection Reference Model)开放式系统互联通信参考模型 IEEE---(Institute of Electrical and Electronics Engi…

数字经济赋能乡村建设,助力乡村全面振兴

我国农村正朝着全面振兴的方向迈步发展,与此同时,我国高速发展的数字经济正在成为驱动经济社会全方位高质量发展的重要引擎,数字经济赋能乡村建设是乡村振兴的重要战略方向。数字经济通过将数据要素纳入农业生产、将数字产品和服务融入农民生…

3年经验,3轮技术面+1轮HR面,拿下字节30k*16薪offer,这些自动化测试面试题值得大家借鉴

面试一般分为技术面和hr面,形式的话很少有群面,少部分企业可能会有一个交叉面,不过总的来说,技术面基本就是考察你的专业技术水平的,hr面的话主要是看这个人的综合素质以及家庭情况符不符合公司要求,一般来…

K8s调度器Scheduler

当创建k8s pod的时候调度器会决定pod在哪个node上被创建且运行,调度器给apiserver发出了一个创建pod的api请求,apiserver首先将pod的基本信息保存在etcd,apiserver又会把这些信息给到每个node上的kubelet进程,kubelet一直在监听这…

Arduino UNO驱动土壤湿度传感器检测

Arduino UNO驱动土壤湿度传感器检测简介运行要求Arduino UNO与传感器接线程序展示实践效果总结简介 本次使用到是这个新款土壤湿度传感器! 这款电容式土壤湿度传感器区别于市面上绝大部分的电阻式传感器,采用电容感应原理来检测土壤湿度。避免了电阻式传…

电子技术——系统性分析反馈电压放大器

电子技术——系统性分析反馈电压放大器 在本节我们提供一个系统性的分析反馈电压放大器的方法。首先我们考虑反馈网络没有负载效应理想情况,其次我们考虑反馈网络有限阻抗下的非理想情况。总之,这种方法的思路在于,将非理想情况转换为理想情况…

CVE-2022-22947 SpringCloud GateWay SPEL RCE 漏洞分析

漏洞概要 Spring Cloud Gateway 是Spring Cloud 生态中的API网关,包含限流、过滤等API治理功能。 Spring官方在2022年3月1日发布新版本修复了Spring Cloud Gateway中的一处代码注入漏洞。当actuator端点开启或暴露时,可以通过http请求修改路由&#xff…

Linux 平台 RTSP server项目开发总结

先看下效果 Demo版本限制了只支持两个通道 每个通道只能连接一个客户端 FULL版本 没有这个限制 需要全功能版本 请联系博主 so库和测试demo可以点击这里下载 功能说明如下: 视频支持H264/H265音频支持AAC只支持LIVE 不支持文件点播支持TCP/UDP不支持RTCP支持多用…

Unity之ASE实现“软溶解”

前言 软溶解是相对之前将的硬边溶解来说的,软溶解顾名思义,就是溶解的边缘会比较平滑柔和,不像硬边溶解那样溶解边缘是清晰的。所以在游戏中也常被人所使用。效果请看下图: 硬边溶解原理 我们还记得之前讲应变溶解时的节点吗&…