微信也能被山寨?还与正版微信数据互通?
近日,据云头条报道,杭州鹈鹕网络科技有限公司(以下简称杭州鹈鹕公司)法定代表人的杨某和黄某为满足其公司客户的需要,便于推销其公司制作的游戏等软件,决定安排公司人员自行制作可与正版微信客户端用户实现文字、语音聊天等功能的“微信”客户端软件(以下简称鹈鹕微信)。
“微信也能轻易被模仿,那鹅厂的技术大佬们岂不是白干了”?
真没想到,这事儿还真被人家做到了。
利用反编译手段与正版互联互通
在说这件事之前,有必要先为大家简单介绍下杭州鹈鹕公司。
天眼查显示,鹈鹕网络科技有限公司创办于 2015 年 7 月,由在移动互联网行业从事多年开发、市场、渠道拓展等工作的资深人员创办,其成员曾任职于大型移动互联网公司。公司主要从事手机客户端、服务端相关软件开发,客户主要为手机设计公司和品牌商。
你品,你细品。
那么,他们是如何实现与正版微信互联互通的呢,我们接着往下看。
接到公司安排的黄某找到了吕某来帮助宋某完成这一工作,吕某称其通过反编译等手段对微信的数据结构、加密算法进行分析,并制作了一份微信软件的逆向分析报告。
反编译,又称为逆向编译技术,是指将可执行文件变成高级语言源程序的过程。反编译技术依赖于编译技术,是编译过程的逆过程。通常反编译出来的程序与原程序会存在些许不同,虽然执行效果相同,但程序代码会发生很大的变化,要读懂反汇编需要有扎实的高级语言编写功底和汇编功底。而反编译的一个重要作用就是制作外挂。
宋某根据吕某的分析报告做了鹈鹕微信,随后,宋某把算法给陈某,并将其算法放在服务器上,服务端就可以和手机端对接,为了统计用户手机的IMEI,IMSI、手机型号、保存时间、body等内容,黄某又命令陈某写了代码用来统计。
收集的这些信息保存在内网 IP 为 192.168.1.12 的服务器的 postgres 数据库中,用户的登录信息存储在wechat 数据库的 login 表中,用户数据信息存储在 wechat 数据库的 new_user 表中,表 new_user 中的 body 列存储了加密数据。
为了保证这款软件成功,黄某还让研发部员工周某在鹈鹕微信里添加一段代码确认鹈鹕微信是否成功登录了微信。这样一来,用户在安装了鹈鹕微信后,成功登录后,就会把微信账号、密码直接上传到其公司服务器。
同时,为了防止密码泄露,和微信账号、密码一起上传的还有 IMEI (手机串号)、IMSI(sim 卡串号)、下载时间、手机品牌等信息。
而这款软件的高明之处就在于,手机用户使用鹈鹕微信的时候,腾讯公司的服务器会误认为鹈鹕微信就是他们公司的微信。第一次登录后,腾讯服务器会留信息在手机上,之后就默认手机上的就是腾讯公司的微信。鹈鹕微信只能通过文字、语音进行聊天。
根据中国裁判文书网公布的细节,2017 年 4 月 12 日起,浙江鹈鹕网络科技有限公司继续运营“微信”软件。×××年 11 月 18 日至 2018 年 4 月 17 日,鹈鹕公司共向消费者提供名为“微信”的自制聊天软件 42182 次。
不过,值得注意的是,这款软件只是在微信客户端做了逆向,利用插件方式在本地做一些本地功能,仍然需要插件使用者提供微信密码,无法做到对其他用户数据监听,劫持,更不会影响其他用户的支付等功能。
事情败露:罚金八万,缓刑一年
但假的终归是假的,总有事情败露的一天。
2018 年,鹅厂的安全管理部门发现了异常。经技术分析,他们发现微信服务器收到大量伪造标准微信加密协议的数据包,因无法识别是假的微信客户端发送的,所以按照协议进行数据发送,原有的用户通讯控制机制受到严重破坏,通过对通讯数据进一步分析,发现有软件能利用我公司软件微信的加密协议实现与正式微信注册用户的通讯等功能,该款软件并未经过我公司任何授权,严重破坏了微信的安全认证与通讯控制机制,因为微信资金支付数据传输采用类似的加密协议,该款软件有可能影响到微信用户的资金安全,同时还被预装在多家国内手机厂商生产的手机中,遂报案。
经鉴定,该“微信”软件利用微信服务器实现微信登录,具有获取微信相关信息、上传设备信息和用户账号密码的功能,该功能突破了计算机信息系统的安全保护措施,未经授权获取了计算机信息系统的相关信息,属于侵入微信系统的程序。
公诉机关认为,被告人吕某、宋某、周某、陈某甲伙同他人,提供专门用于侵入计算机信息系统的程序,情节特别严重,其行为已构成提供侵入计算机信息系统程序罪,且属共同犯罪。被告人吕某、宋某、周某、陈某甲在共同犯罪中起次要作用,是从犯,应当从轻、减轻处罚。被告人吕某、宋某、周某如实供述自己的罪行,可以从轻处罚。被告人陈某甲自动投案,如实供述自己的罪行,是自首,可以从轻或者减轻处罚。
具体裁处结果如下:
一、被告人吕某犯提供侵入、非法控制计算机信息系统程序、工具罪,判处有期徒刑十个月,缓刑一年(缓刑考验期限,从判决确定之日起计算),并处罚金人民币八万元(已缴纳)。
二、被告人宋某犯提供侵入、非法控制计算机信息系统程序、工具罪,判处有期徒刑十个月,缓刑一年(缓刑考验期限,从判决确定之日起计算),并处罚金人民币八万元(已缴纳)。
三、被告人周某犯提供侵入、非法控制计算机信息系统程序、工具罪,免予刑事处罚。
四、被告人陈某甲犯提供侵入、非法控制计算机信息系统程序、工具罪,免予刑事处罚。
注:杨某和黄某按另案处理。
微信支付会有风险吗?
针对此案件,有网友提出疑问,这款软件可以和正规微信互联互通,那么是不是意味着我们所有的信息都不安全了?
鉴于此,据可靠消息,雷锋网也询问了爱加密研究院院长程智力,他认为首先要认清这件事的本质,首先,它只能算是一个外挂,而这款软件只是在微信客户端做了逆向,无法做到对其他用户数据监听,劫持,更不会影响其他用户的支付等功能;其次,各个热门 APP 都有外挂,外挂门槛也不高,它只是帮助攻击者自己的帐号能够自动化做一些操作,而攻击者因为登录不了其他用户的微信,所以其他用户的帐号没安全问题,请放心。
但对于官方微信来说,这也是一个提醒,今后要在防篡改、防代码逆向方面要做一些加强保护,对于使用者来说,在选择应用时,尽量选择官方的应用。