对X信的研究及修改(一)
本系列文章,主要讲的是如何修改微信apk的代码,使其撤回功能失效,以及添加自动抢红包的功能。
做成之后的效果如下图:
这个图片没法控制大小,凑合看吧


前几篇文章先讲一下微信的反编译、APK的调试、APK的hook,这些是基础。然后在简单讲一下如何实现对微信的更改。虽然是以微信为例,但技术都是通用的。
在开头列举一下用到的环境及工具。
在改动微信之前,先看一下微信的数据库。
微信的数据库保存在类似于/data/data/com.tencent.mm/MicroMsg/2e47ae0b9f8f3704edf4c41a428e412e/EnMicroMsg.db
里面。这个数据库是加密过的,可以使用wechat-dump解密。
在Ubuntu上安装好依赖,然后就可以使用了。
sudo apt-get install sox android-tools-adb python-requests python-pil python-pyquery python-numpy libsox-dev libsqlite3-dev libsqlcipher-dev
pip install --user pysqlcipher csscompressor
pip install --user --pre pysox
解密需要手机的IMEI
和微信的UIN
。这个工具支持自动模式和手动模式。
自动模式就一条简单的命令
./android-interact.sh db-decrypt
手动模式
- 先把
/data/data/com.tencent.mm/MicroMsg/${userid}/EnMicroMsg.db
复制出来
- 在
/data/data/com.tencent.mm/shared_prefs/system_config_prefs.xml
中找到default_uin
的值。
- 在手机上拨打
*#06#
获取手机的IMEI
。
- 解密
./decrypt-db.py <path to EnMicroMsg.db> <imei> <uin>
。
更多信息请参考wechat-dump
解密之后可以使用任意一个sqlite3工具打开。打开之后,message
表最重要,其格式如下:

声明:该文观点仅代表作者本人,转载请注明来自看雪专栏