某海外上报接口 strData 纯算逆向

本文仅作学习使用

1.目标

aHR0cHM6Ly9tc3Nkay1zZy50aWt0b2suY29tL3dlYi9yZXBvcnQ/bXNUb2tlbj1ISEhrTHJFN0pWZlNUdE5lei1LOW9YeE96WlpHSFlmOEFKd1pEMUdmRzluNlgtWE9sTUdOcmpSUGZsZ0FrdVhOWGlIb1BvejFfNENXMXdmVnFvamkwZ2FRSVlITEUxaG03VllLUW1oNXM0NWpTNjRVTUNFQ3RIZnI0WF9LMkdYQ2c4MGpCbktIYm1ZaWREbz0mWC1Cb2d1cz1ERlN6c3dTN01ZRFBTRUd0Q3plN3g5WEZoc2JJDQo=

2. debug

2.1 xhr断点

2.2 经典jsvmp输出日志

bash 复制代码
"执行 M->",l,"执行func->", M[sg[112]]," 参数 B-> ",B,"返回 N->",N
bash 复制代码
N&&console.log("执行 p->",p,"执行func->",sg[320]," 参数 o-> ",o," 参数 i-> ",i," 参数 u-> ",u," 参数 a-> ",a," 参数 c-> ",c," 参数 f-> ",f," 参数 s-> ",s," 参数 l-> ",l)
bash 复制代码
N&&console.log("执行 hg->",hg,"执行func->", hg[2]," 参数 N[0]-> ",N[0],"  参数 q-> ",q,"  参数 I-> ",I,"  参数 N[1]-> ",N[1])
bash 复制代码
!N&&console.log("执行 B->",B,"执行func->", B[sg[256]]," 对象 q-> ",q,"  参数 I-> ",I,"返回 A->",A,"typeof A:",typeof A)

2.3 日志分析

拿到日志后分析,日志大概几十万行

  • 一阶段str-code-str:
    初始化码表并动态存取
    双递归计算
    上下文运算值关联
  • 二阶段加盐
    静态数组+时间戳+随机数计算盐和盐arr(扣代码即可)
    str加盐,盐arr转str,截取拼接
  • 三阶段生成数据
    str递归截取运算生成code
    使用新码表取值

2.4 注意点

一阶段取值后的结尾,递归8时未结束需要继续递归,并将最终输出值记录

二阶段加盐时控制流里面会把字符L先拼在前面

三节点取值结尾。若str长度不够3,则生成的4位数向后补=

3. Note

最后一,三阶段放一下经典码表吧

bash 复制代码
    //初始化码表
    var code_table = {}
    for (let i = 0; i < 256; i++) {
        code_table[String.fromCharCode(i)] = i
    }

注意此码表后面会一直往里push

bash 复制代码
Dkdpgh4ZKsQB80/Mfvw36XI1R25+WUAlEi7NLboqYTOPuzmFjJnryx9HVGcaStCe=

然后再补个最终输出的截图

这玩意确实有点复杂,有很多坑,纯算算了5天

相关推荐
RSCompany4 小时前
Frida 17 以后 Python API 跑旧版 JS 报 Java is not defined ?一行 import 直接恢复 Frida 16 体验
开发语言·python·逆向·hook·frida·android逆向·frida17
浩浩测试一下17 小时前
汇编中的JCC指令 (逆向分析)
汇编·逆向·标志位·jcc指令·跳转指令·标志位寄存器
浩浩测试一下18 小时前
汇编中的段与段寄存器(大小)段序 (逆向分析)
汇编·逆向·二进制·字节序·windows编程·内存地址排序
浩浩测试一下3 天前
汇编 位运算 (逆向分析)
汇编·逆向·位运算·asm·windows编程·二进制逆向
浩浩测试一下3 天前
汇编 高低八位寄存器数据存储方式(逆向分析)
汇编·网络安全·逆向·二进制·免杀·寄存器·windows编程
泡泡以安7 天前
Unidbg学习笔记(十三):固定随机干扰项
android·逆向
泡泡以安7 天前
Unidbg学习笔记(十六):Console Debugger
android·逆向
泡泡以安7 天前
Unidbg学习笔记(八):文件系统层补环境
android·逆向
泡泡以安7 天前
Unidbg学习笔记(六):补环境的思维框架
android·逆向
介一安全12 天前
【Web安全】AI自动化实现前端加密算法逆向分析
测试工具·ai·自动化·逆向·安全性测试