Skip to content

获取登录后的session信息方法容易出现敏感信息泄露问题 #3245

@thx125

Description

@thx125

提问前,请确保阅读过项目首页说明以及wiki开发文档相关内容,尤其是常见问题部分。完成内容后,请务必移除包括本句在内的无用内容,以免影响阅读,否则直接关闭,谢谢合作~

另外如果确认属于bug,而且已明确如何修复,请参考贡献指南直接提交PR,省的浪费时间在这里描述问题,非常感谢配合

简要描述

请简单概括描述下你所遇到的问题。
如果code传入的参数带了双引号,容易出现信息泄露的问题

模块版本情况

  • WxJava 模块名: weixin-java-miniapp
  • WxJava 版本号:(旧版本不予支持,谢谢配合)

详细描述

尽量详细描述。请不要使用截图,尽量使用文字描述,代码直接贴上来,日志则请附在后面所示区域。

try {
    String code = "\"abc\"";
    WxMaJscode2SessionResult sessionInfo = wxMaService.getUserService().getSessionInfo(code);
} catch (WxErrorException e) {
    throw new ServiceException(e.getMessage());
}

返回的异常信息包含了敏感信息,appid/secret
Illegal character in query at index 203: https://api.weixin.qq.com/sns/jscode2session?access_token=78_39Cluk4uNHTSZnzABRbQrhucnwdsmwag343eOQphAgHzNphgo7e-0pWqeM_13vb8KpU-lBU5Z_UQFPY4fOfup3cazDT1-ljf_jT5_ShgCyJoXNiImGprQ8eztuwKCBfAIADVU&js_code=\"abc\"&secret=f6e0e8465wer63dbb682da98370feff1e&grant_type=authorization_code&appid=wx5370c9jhg248e428

可以通过异常信息获取appid/secret

日志

如果日志不多,直接使用md代码引用格式贴在此处,否则如果太长,请将日志放在 pastebin 或者其他地方,然后将其url地址贴在这里

日志请写于此处

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions