mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2024-11-21 09:36:35 +00:00
docs: 规划
This commit is contained in:
parent
c0466e943d
commit
82462dd647
@ -1,2 +0,0 @@
|
|||||||
# 开始
|
|
||||||
jadx 跳转于 `com.tencent.qqnt.kernel.*`
|
|
@ -1,42 +0,0 @@
|
|||||||
# Android
|
|
||||||
```java
|
|
||||||
GroupMemberExtReq groupMemberExtReq = new GroupMemberExtReq();
|
|
||||||
groupMemberExtReq.sourceType = MemberExtSourceType.TITLETYPE.ordinal();
|
|
||||||
groupMemberExtReq.groupCode = longOrNull.longValue();
|
|
||||||
groupMemberExtReq.beginUin = "0";
|
|
||||||
groupMemberExtReq.dataTime = "0";
|
|
||||||
Long[] lArr = new Long[1];
|
|
||||||
AppInterface a2 = dVar.a();
|
|
||||||
lArr[0] = Long.valueOf(a2 != null ? a2.getLongAccountUin() : 0L);
|
|
||||||
arrayListOf = CollectionsKt__CollectionsKt.arrayListOf(lArr);
|
|
||||||
groupMemberExtReq.uinList = arrayListOf;
|
|
||||||
MemberExtInfoFilter memberExtInfoFilter = new MemberExtInfoFilter();
|
|
||||||
memberExtInfoFilter.memberLevelInfoUin = 1;
|
|
||||||
memberExtInfoFilter.memberLevelInfoPoint = 1;
|
|
||||||
memberExtInfoFilter.memberLevelInfoActiveDay = 1;
|
|
||||||
memberExtInfoFilter.memberLevelInfoLevel = 1;
|
|
||||||
memberExtInfoFilter.levelName = 1;
|
|
||||||
memberExtInfoFilter.dataTime = 1;
|
|
||||||
memberExtInfoFilter.sysShowFlag = 1;
|
|
||||||
memberExtInfoFilter.userShowFlag = 1;
|
|
||||||
memberExtInfoFilter.userShowFlagNew = 1;
|
|
||||||
memberExtInfoFilter.levelNameNew = 1;
|
|
||||||
Unit unit = Unit.INSTANCE;
|
|
||||||
groupMemberExtReq.memberExtFilter = memberExtInfoFilter;
|
|
||||||
troopLevelFrequencyControl.f(troopUin, new TroopListRepo$fetchTroopLevelInfo$2(b2, groupMemberExtReq, troopUin, new com.tencent.qqnt.troopmemberlist.report.c("fetchTroopLevelInfo")));
|
|
||||||
```
|
|
||||||
# Win
|
|
||||||
参数解析位于 sub_181456A10(24108) -> wrapper.node(24108)+1456A10
|
|
||||||
IGroupService.GetMemberExt(param: object);
|
|
||||||
param展开如下
|
|
||||||
```
|
|
||||||
groupCode string
|
|
||||||
beginUin string
|
|
||||||
dataTime string
|
|
||||||
uinList Array<string>
|
|
||||||
uinNum string
|
|
||||||
groupType string
|
|
||||||
richCardNameVer string
|
|
||||||
sourceType number
|
|
||||||
memberExtFilter object// 参数解析位于 sub_18145A6D0(24108) -> wrapper.node(24108)+145A6D0
|
|
||||||
```
|
|
16
docs/develop/NC 1.6.X的计划.md
Normal file
16
docs/develop/NC 1.6.X的计划.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# 开发方向
|
||||||
|
方向一 NativeCall/Hook:
|
||||||
|
1. 崩溃检测机制的实现
|
||||||
|
2. Api_Caller 的Hook 可以拿到Event/Handler 进一步提升NC 即时的拦截与处理一些事件比如ReCall拦截
|
||||||
|
3. Node包装层 进一步分析,拿到脱离自带Listener/Adapter,可以拿到一些更加底层的数据变动 或许 包括更多二进制数据
|
||||||
|
|
||||||
|
方向二 全新的无头启动 Way01
|
||||||
|
1. 基于Node启动原理,借助导出导出符号还原NodeMain
|
||||||
|
|
||||||
|
方向三 发包与收包
|
||||||
|
1. 参考 方向一/3 大概可以收包
|
||||||
|
2. 发包 (暂时没有计划)
|
||||||
|
|
||||||
|
方向四 版本控制
|
||||||
|
1. 根据不同版本进行逻辑既然
|
||||||
|
2. 某些参数的自动提取
|
@ -1,24 +0,0 @@
|
|||||||
# 前排提示
|
|
||||||
由于Core未处于开源,非组织人员无法参与Core开发,此处为Core开发提示
|
|
||||||
|
|
||||||
# 准备工具
|
|
||||||
frida ida-pro jadx x64dbg ce 内部调试脚本
|
|
||||||
|
|
||||||
## ida-pro
|
|
||||||
1. 用于快速分析入参和返回类型
|
|
||||||
2. 通过静态QLog推测语义
|
|
||||||
3. 提取Listener与Service (常用)
|
|
||||||
## frida
|
|
||||||
1. 用于动态获取QLog推测语义
|
|
||||||
2. 捕捉Native函数 实际入参与数据 分析中间流程
|
|
||||||
|
|
||||||
## jadx
|
|
||||||
1. 通过其它平台实现 静态获取QLog推测语义
|
|
||||||
2. 提供部分未调用代码 参考
|
|
||||||
|
|
||||||
## x64dbg
|
|
||||||
1. 验证IDA的Hook点
|
|
||||||
|
|
||||||
## 内部脚本
|
|
||||||
1. 提取Listener与Service (不调用无类型 不推荐)
|
|
||||||
2. 获取NT调用流程
|
|
Loading…
x
Reference in New Issue
Block a user