编者按
对
微信的聊天记录进行取证分析,是大家比较关注的内容之一。小编前阵子研究了一下微信账号的结构以及微信语音文件的命名规则。赘述于此,有许多未尽事项,望有意者参与进来。(安卓实测,苹果略有不同)
相信
大家都使用微信发送和接收过语音。可曾想过,这一段段的语音在手机中是如何存储的?知道这一点很重要,因为在取证工作中,这是必要的基础知识。
到目前为止,腾讯并未公布语音文件存储和命名规则,因此,
我们的很多结论都是逆向实证的产物,未必正确,但具有参考性。
一、关于微信账号
每个微信号码都会关联几个不同维度的账户,比如:微信号、缺省微信号、手机号码、QQ号码等。在腾讯内部,其实每个微信号码仍然只有一个唯一账号,这是一个“mm+10位数字”的内部账号,平时我们很难见其尊容。可以这么推测,所有的关联账号都会以这个内部账号为基准。“mm”是什么含义?不是美眉,是micromsg的缩写。
使用MD5算法,计算这个内部账号的哈希值,可以得到一个128位的MD5值。如果有兴趣的话,您可打开手机的文件管理功能,找到微信所在的文件夹,就能看到以该MD5值为名称的文件夹,这里保存这您所有的聊天记录、图片、语音、视频……,应有尽有。
其实,真正的过程是:对这个MD5值进行反算碰撞,得到微信内部账号。
二、微信语音的存储方式
微信语音采用
amr
文件格式,这是移动通信系统中使用最广泛的语音标准,大家也不需要深入理解amr的数据结构。
最关键的,您要知道,微信语音采用文件存储的方式就行了,换句话说,任何一段语音都会是一个文件。而有些数据信息,比如:文本聊天记录、手机短信等等,就不是采用这种存储方式。这也产生了二者截然不同的数据恢复方式。
但有些问题也不尽然,毕竟在手机存储中做数据恢复还受制于“屌爆”的flash存储模式。关于这一部分,以后有时间再单说吧。
现代电子战支援侦察系统分析与设计
作者:刘永坚、司伟建、杨承志编
(第一次接受腾讯发布的文中广告)
三、微信语音文件的命名规则(部分)
在手机文件管理下,打开“voice2”文件夹,一大堆犹如“小
瘪三”长相一般目录出现了,都是两个字符的名字。这里面存储的便是您与众多好友的微信语音,既包括点对点、也包括群聊。