文章总结: 该文档分析了诈骗团伙自主开发仿微信应用ywk.puxhtdkrxlfugohj.cnf的通信协议,通过逆向工程揭示其使用VLQ编码头部、RSA加密传输RC4密钥的混合加密机制。关键发现包括首包固定头部89040101对应521字节长度,后续数据采用RC4加密且密钥通过RSA保护。可操作建议包括关注多进程通信和SocketChannelImpl等隐蔽通信方式。 综合评分: 82 文章分类: 逆向分析,恶意软件,移动安全,应用安全,WEB安全
诈骗应用协议流分析2-RC4加密
meiko meiko
看雪学苑
2026年6月16日 17:59 上海
在小说阅读器读本章
去阅读
因在大众社交应用如微信/QQ等上实行诈骗,容易被封号。故诈骗团伙往往会自主开发一些应用,诱骗受害者在上面使用,从而更高效的实行犯罪。
以下捕捉到的一款应用(ywk.puxhtdkrxlfugohj.cnf),该应用仿照微信的界面。
同时使用的时候,会出现一条TCP流,以下是首包内容,通过多次抓包查看到其头部貌似固定89 04 01 01 :
开始针对这条包进行逆向分析.
首先为快速定位源码,尝试先hook Sokcetoutputstream,但多次hook无结果后,猜测可能存在多进程调用,ps -e | grep 查看一下。
果然存在一个子进程,使用上述hook代码重新对该子进程进行hook,依然没有结果,则考虑可能使用SocketChannelImpl,尝试hook,并打印堆栈。
本次hook成功了,找到了89040101这条包,并打印了堆栈信息:
我们从MessageToByteEncoder这条堆栈开始分析,一步一步去分析这条流是如何组成的。
我们首先找到发出这条流的代码,可以看到是将obj传入,然后进行加密,最后形成上述的二进制流。
然后在此处进行hook,打印obj明文和最终加密完成的二进制流。
以下是hook结果
Obj明文:
可以看到里面传入了应用安装包名,手机基本信息和其他未知字段。
我们持续向上追踪,可以追到一条RC4加密,即上述流中存在RC4加密的包,但是RC4是对称加密,其密钥如何传输则是后续的分析重点。
首先尝试对密钥传入处进行hook,即上图中的a(byte[] bArr)中的bArr,可以看到起密钥为变化的。
向上追踪密钥来源以及这些密钥都是如何传输:
可以看到该密钥为random随机组成,这也解释了为啥每次hook密钥都不一样。
下面我开始分析密钥是如何传输的,因为this.b被赋值了密钥(bArrA),则查看谁调用了this.b。
可以看到this.b被封装进bVar.b中并传入了asymmetric.d.a()这个函数中,查看该函数。
该函数为RSA加密,即RC4加密的密钥被使用了RSA进行加密传输。继续向上追踪,在此处尝试hook,看对应抓包的哪部分内容。
Hook结果:
可以看到:890401这条包除了头部外,后续数据均被RSA加密,其中则包括RC4的密钥。后续则去分析头部是如何组成,我们则追踪这串RSA的明文,看其后面与哪些内容拼接在一起的。
我们向上追踪到其二进制数据包构建工具类,发现其拼接处。
根据这串代码,可以看到
先扩容:VLQ 长度头的大小 + 数据本身的大小c(d.b(bArr.length)+ bArr.length);
先写入 VLQ 编码的长度头(对应你之前的 d.a(bArr.length))this.a.put(d.a(bArr.length));
再写入数据本身this.a.put(bArr);
进入d.a(bArr.length)函数,查看头部是如何构造的。
这是一个这是VLQ(Variable-Length Quantity)可变长度编码算法,头部的89 04 经过变换最终表达的是包的长度:
字节1(0x89):10001001 → 去掉最高位 → 0001001(二进制)= 0x09(十六进制)= 9(十进制)
字节2(0x04):00000100 → 去掉最高位 → 0000100(二进制)= 0x04(十六进制)= 4(十进制)
字节2(高 7 位):4 << 7 = 4 * 128 = 512 字节1(低 7 位):9 总和:512 + 9 = 521
至此,这条私有流,我们能够得到大致信息了,一条流中除首包外的其他包均采用RC4进行加密,首包前两个字节表示长度,后续为一些固定字符+RSA加密的内容,其中RC4的密钥就包含在其中。
注:该私有协议分析量较大,且在逆向中发现存在敏感内容,部分内容进行了脱敏,部分逆向细节未能完全展示,如有不当之处,还望指正。
#
看雪ID:meiko
https://bbs.kanxue.com/user-home-1044120.htm
*本文为看雪论坛优秀文章,由 meiko 原创,转载请注明来自看雪社区
第十届安全开发者峰会【议题征集】-欢迎投稿
往期推荐
基于 Seccomp-notify 的 Binder 事务级无 Hook 代理机制研究
AI 辅助分析|CyberGame 高分 Web 题:缓存投毒攻击链路拆解
UDS协议安全CTF挑战分析
把 .o 变成 .ko:一次 ELF 格式的奇妙之旅
基于eBPF的Android ART运行时DEX采集与方法字节码回填
球分享
球点赞
球在看
点击阅读原文查看更多
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:看雪学苑 meiko meiko《诈骗应用协议流分析2-RC4加密》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论