PC版微信更新检测技术分析_主要针对xml分布的技术
1.找一款抓包工具,我用的是 HTTPAnalyzerFullV7 ,打开VX,找到设置-关于-检测新版 回头看抓包工具看到下面的信息https://dldir1.qq.com/weixin/Windows/update3.3.5.50.xml
https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50_ex.xml
https://dldir1.qq.com/weixin/Win ... V3.3.5to3.3.5.patch
2.猜测里面包含了更新信息,打开网址查看
网址1包括了更新更新日志,版本号
网址2包括每个VX文件的MD5 大小 等信息
网址3根据猜测是 升级需要覆盖的文件信息,用压缩软件打开即可
3.不难发现 https://dldir1.qq.com/weixin/Windows/update3.3.5.50.xml 是要的文件,我们通过分析这个文件来得到相关的内容
<?xml version="1.0" encoding="Utf-8"?>
<updateConfig configVer="120">
<Tools>
<item hash="14743D5A219CBE*F2CD1F2*F3209E70E" name="courgette" url="https://dldir1.qq.com/weixin/Windows/Tools/courgette.exe"/>
</Tools>
<UpdateNotice>
<language code="zh_CN">
<item1>1.修复了一些已知问题。</item1>
</language>
<language code="en">
<item1>1.Bug fixes and improvements.</item1>
</language>
<language code="zh_TW">
<item1>1.修復了一些已知問題。</item1>
</language>
</UpdateNotice>
<Versions>
<VersionInfo silence="1" MinVersion="0x63030500" MinTarget="0x61000600" MaxTarget="0x63030531" main="1" exclude="Windows XP1,Windows Server 2003,Windows Server 2003 R2,Windows Vista,Windows Server 2008">
<wechatfile url="https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50.dat"/>
<file_component url="https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50.xml"/>
<wechatfile_ex url="https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50_ex.dat"/>
<file_component_ex url="https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50_ex.xml"/>
<patches>
<Patch md5="9B6ABB41BD6662FDDA90928D5C8*F95D" targetVersion="0x6303052E" url="https://dldir1.qq.com/weixin/Windows/patch/WeChat_B46to50_V3.3.5to3.3.5.patch"/>
<Patch md5="73894B1F2DA591A0*F3228366F87C619" targetVersion="0x6303052A" url="https://dldir1.qq.com/weixin/Windows/patch/WeChat_B42to50_V3.3.5to3.3.5.patch"/>
<Patch md5="ABAE01881FB14150CB98340ED38D0B7B" targetVersion="0x63030522" url="https://dldir1.qq.com/weixin/Windows/patch/WeChat_B34to50_V3.3.5to3.3.5.patch"/>
<Patch md5="330BB50573A4C1DB1B8258AF9CA2D6*F" targetVersion="0x6303051E" url="https://dldir1.qq.com/weixin/Windows/patch/WeChat_B30to50_V3.3.5to3.3.5.patch"/>
<Patch md5="65F649C6FEB8970B0E831FB9A00AC3FE" targetVersion="0x63030073" url="https://dldir1.qq.com/weixin/Windows/patch/WeChat_B115to50_V3.3.0to3.3.5.patch"/>
</patches>
</VersionInfo>
<VersionInfo silence="1" MinVersion="0x63000000" MinTarget="0x61000600" MaxTarget="0x6302019B">
<wechatfile url="https://dldir1.qq.com/weixin/Windows/WeChat_3.2.1_update156.dat"/>
<file_component url="https://dldir1.qq.com/weixin/Windows/WeChat_3.2.1_update156.xml"/>
<wechatfile_ex url="https://dldir1.qq.com/weixin/Windows/WeChat_3.2.1_update156_ex.dat"/>
<file_component_ex url="https://dldir1.qq.com/weixin/Windows/WeChat_3.2.1_update156_ex.xml"/>
</VersionInfo>
</Versions>
</updateConfig>
红色网址代表 安装包的文件
蓝色网址代表每个文件信息
我们可以通过把红色网址的文件下载下来之后,按照蓝色网址中每个文件的大小来分隔,最后得到每个文件,最后写入到某个文件夹,就可以得到VX的完整文件了
蓝色网址内容详情
<file md5="f74259e5e5acbcf35f89a34bfa314d86" length="227528" offset="0" compresslen="123607">AndroidAssistHelper.dll</file>
<file md5="37da7f6961082dd96a537235dd89b114" length="19136" offset="123607" compresslen="10603">api-ms-win-core-console-l1-1-0.dll</file>
md5 代表数据校验值 这个其实可以无视
length 代表长度
offset 代表该文件从data文件开始位置
compresslen 代表压缩文件的长度
后面就是文件名了
4.从https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50.dat下载data文件后 用十六进制编辑器打开
发现开头不是MZ 因为MZ是可执行文件头 而 AndroidAssistHelper.dll是从ofsset=0开始的 猜测是压缩文件
读取文件取前123607个字节,写出文件为AndroidAssistHelper.zip 发现无法打开 把长度 改为 227528
发现可以打开 那就说明 每个文件是采用了 压缩包拼接的形式,那就很简单了
5.按照 https://dldir1.qq.com/weixin/Windows/WeChat_3.3.5_update50_ex.xml 的文件详情 进行文件读取即可!
6.最后解压到当前文件夹 就可以 完成VX的下载和使用了
打开测试 正常运行!
页:
[1]