结合AI对WhatsApp的分析 (一)

一、目标

​

1:main

好希望未来的世界是这样的:

javascript 复制代码
小X同学,请帮我写一个ws的H算法,并且详细解释入参和结果。

可惜现实是这样的

1:ws1

也好,起码飞哥还不至于失业,李老板还得老老实实给我发工资。然后含泪退掉了他偷偷买的4090,原计划他准备搭个DeepSeek来优化我的。

二、步骤

遇事不决先问AI

工具是死的,人是活到。个人认为目前的AI,抹平了初级程序员和中级的程序员之间的技术差距。但是抹平不了李老板和入门级的程序员之间的技术差距。

作为一个有证的程序员,应该这样问AI才靠谱

1:ws2

这里面的关键信息就是 AES SHA256 和 libwhatsapp.so 了,

找朋友 libwhatsapp.so

我们遇到的第一个困难就是, 最新版的apk里面只有libsuperpack.so 和 libunwindstack.so, 并没有我们期待的 libwhatsapp.so

不过这也难不倒我们,继续问AI呗。这次 AI给出了几个方案,它怀疑 WhatsApp 可能已经将多个 .so 库合并进一个单独的 libsuperpack.so 文件,减少 APK 体积并提高加载效率。

所以我们先安装Apk,然后用上最原始的查找大法

javascript 复制代码
find / -name 'libwhatsapp.so' -type f

  


# 结果出来了

/data/user/0/com.whatsapp/files/decompressed/libs.spo/libwhatsapp.so

IDA

这个 H 一看就是个Base64, 所以第一反应就是 hook java的 base64函数,但是没有结果,那就说明大概率是在 so里面做的base64。

这时候就请IDA上场了。

我感觉下一个版本的ida可能就会增加AI窗口了, 咱们直接输入一个:

javascript 复制代码
请帮我标出这个so中做Base64操作的函数,并且生成frida Hook的代码

好吧,在ida没有更新之前,只能飞哥上场了。

挂上心爱的 FindCrypt插件

1:ida1

啥也不说了,先Hook它

javascript 复制代码
let libWhatsAppAddress = Module.findBaseAddress('libwhatsapp.so');

console.log(" ==> libwhatsapp : " + libWhatsAppAddress)

  


let offset = 0x89F7C8;

let funcAddr = libWhatsAppAddress.add(offset);

Interceptor.attach(funcAddr, {

onEnter: function(args) {

},

onLeave: function(retval) {

  


console.log('--> retval: ' + retval);

try {

let strIn = Memory.readUtf8String(retval);

console.log(strIn);

} catch (e) {

Log( "#### Base64 A Rc Error");

}

  


console.log(`/* TID ${gettid()} */ ======= Base64 A retval ====`);

}

});

跑一下 ,熟悉的味道

1:rc1

三、总结

再强调一遍,以后的程序员只会有一种,利用辅助AI工具的程序员。不会使用AI的程序员一定是要被淘汰的。

早用早享受,不用担心AI会替代你,AI的出现只会让你的工作更加高效。以此为理由找李老板提加工资。

1:ffshow

这台机器不会取代我们任何一个人

Tip:

: 本文的目的只有一个就是学习更多的逆向技巧和思路,如果有人利用本文技术去进行非法商业获取利益带来的法律责任都是操作者自己承担,和本文以及作者没关系,本文涉及到的代码项目可以去 奋飞的朋友们 知识星球自取,欢迎加入知识星球一起学习探讨技术。有问题可以加我wx: fenfei331 讨论下。

​

相关推荐
疯华整猫1 小时前
删掉 LeakCanary 那天,我用 Trae 自己撸了一套:最难的不是分析堆,是决定什么时候 dump
android·人工智能·性能优化
夕阳_醉了7 小时前
Codex 客户端从装好到跑通:第三方 API 接入与配置避坑指南
人工智能·gpt·openai·codex·ai 编程
mmsx8 小时前
耳切法切带洞多边形:论文能跑通,真实数据为什么崩
android·kotlin
洞见前行9 小时前
你的 Activity 关了,为什么还活着?Android 内存泄漏从发现、定位到线上治理
android·性能优化·leakcanary
Kapaseker10 小时前
Kotlin 又要加语法糖了:这次轮到 if-else
android·kotlin
恋猫de小郭12 小时前
Flutter 3.50 & Dart 3.14 发布,快来看看有什么更新吧
android·前端·flutter
Starry-sky(jing)1 天前
Vidda ADB 开启:R Pro 65 找不到开发者选项的处理与连接验收
android·adb·远程控制·电视·vidda
雨白1 天前
从原理到实践:使用 Kotlin KSP 仿写 ButterKnifeLite
android·kotlin