收藏
回答

微信小程序wx.login和getPhoneNumber被人破解了?

最近做了一个小程序投票系统,思路是通过小程序获取手机号、后台解密的方式获取真实的用户身份,以防止刷票,结果发现还是被刷了,

黑客没有通过正常浏览小程序便获取到了用户登录的code,且后台正常解析出了openid、sessionKey,并且黑客没有通过小程序的按钮组件便提交了手机号的加密数据,后台也成功解密出了手机号,

后台发现黑客除了授权登录、绑定手机号和投票接口外,没有任何其他接口的请求记录,意味着黑客并没有通过正常的小程序访问便提交了数据参数,且后台可以通过微信接口正常解析,

以上情况是否意味着微信登录、授权获取手机号的相关腾讯安全机制已经被黑客破解?

回答关注问题邀请回答
收藏

6 个回答

  • PMonkey_W🐒
    PMonkey_W🐒
    05-11

    我们这里也是一样,我们都是从微信服务器拿的密钥。

    1.调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器。

    2.调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 、 用户在微信开放平台帐号下的唯一标识UnionID(若当前小程序已绑定到微信开放平台帐号) 和 会话密钥 session_key。

    3.通过 bindgetphonenumber 事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合 session_key 以及 app_id 进行解密获取手机号。

    然后发现被爆了,在同一个设备上。

    05-11
    有用 2
    回复
  • faddei
    faddei
    01-07

    你自己的问题吧没遇到过,wx.login 里面套 wx.getUserInfo 把wx.login返回的code 和 wx.getUserInfo 返回的数据一起发送到服务端

    01-07
    有用 1
    回复 1
    • 鑫鸿
      鑫鸿
      01-09
      同一个ip地址,批量、高频发送wx.login的code和手机号密文,服务器端可以解密,说明这些code和密文都是通过微信的安全验证的
      01-09
      回复
  • coopy
    coopy
    04-28

    确实是这样 我之前做的一个投票功能

    在没有进入小程序的情况下也被人拿到code

    小程序后台没有统计到有那么多人进入

    后来通过云函数,在云函数中调用实际的投票接口 (云函数中增加一个校验码,后端校验是否正确)

    然后 他们就采用手机脚本的方式进来刷票了.............

    wx也是不干人事 , wx.login这么轻易就被破解

    04-28
    有用
    回复
  • 鑫鸿
    鑫鸿
    01-09

    希望小程序官方关注

    01-09
    有用
    回复
  • |G.XIAO|
    |G.XIAO|
    01-07

    黑客这里是怎么发现的?有什么特征

    01-07
    有用
    回复
  • 青寒
    青寒
    01-07

    不信。

    01-07
    有用
    回复
登录 后发表内容
问题标签