6月11日傍晚6点,HBuilder运行基座弹出了测试推送消息,说明如下:
- 只影响HBuilder手机运行基座,因为是HBuilder运行基座的appkey信息泄露。和打包发行后的app无关,打包的app的key信息是开发者自己去个推申请的。
- 目前我司已经重置了HBuilder运行基座的appkey信息,已经泄露的appkey不会继续危害HBuilder运行基座。
- HBuilder运行基座是内置了所有三方sdk的,包括推送sdk,否则Hello H5+、hello uni-app等测试应用将无法在运行基座上运行。这和开发者的app是否开通了push没有关系,这个运行基座并不是开发者的app。开发者配置sdk信息后,必须打包后才能生效。
经过调查,已经找到了发送push的当事人,也联合个推方搞明白了事情原委。
2019年6月11日傍晚,DCloud的一名开发者,qq号951740***,第一次开发推送,向个推联系获取技术支持。
在qq群中,个推技术支持向开发者询问ccid,开发者在HBuilder基座里打印出了基座的ccid,在qq群里发给了个推技术支持。
个推技术支持在未核实开发者身份的情况下,把HBuilder基座的key信息发给了该开发者。
开发者使用HBuilder基座的key信息进行推送测试,发送了4次推送消息。他以为是自己在测试,完全没有想到是群发给了所有HBuilder基座用户。
事发后,我们第一时间联系个推,清空了待发送队列,但仍然有4千多台设备被推送出去。
个推方已经向DCloud书面道歉,并为HBuilder基座的push发送制定了特殊的使用规则,防止以后类似事情再发生。
同时个推内部也封死了mastersecret的获取方式,开发者想获取mastersecret,必须使用注册邮箱来申请重置。杜绝人员泄露mastersecret的可能。
对于懂技术的人,看完经过描述就明白怎么回事了。但仍有不懂技术原理的人,有各种莫名其妙的担忧。
再次强调,此事与DCloud无关,发送行为不是DCloud所为、泄露key信息不是DCloud所为,不是什么实习生或离职员工,也不是系统或产品漏洞,完全不影响开发者对DCloud产品或运营服务的信任。
开发者即使使用原生或其他跨平台开发工具做app,只要使用三方sdk,当三方sdk厂商泄露了你的key信息,就会遇到一样的问题。
开发者也不必担心个推是否会泄露自己的key信息给三方:
- HBuilder基座是公开的、可调试的app,这是一个特殊情况。开发者自己做的app,别人拿不到你的ccid,自然无法通过ccid查其他key信息。
- 个推内部已经封死了mastersecret的获取方式,开发者想获取mastersecret,必须使用注册邮箱来申请重置。杜绝技术支持人员泄露mastersecret的可能。
不管怎么样,各位开发者一定要保护好自己的各种sdk的账户和key信息,减少泄露的可能。