收藏
回答

openid除了数字+大小写字母+下划线,还有其他字符吗?位数固定吗?想过滤一下,防止SQL注入

openid除了数字+大小写字母+下划线,还有其他字符吗?位数固定吗?想过滤一下,防止SQL注入

最后一次编辑于  2023-02-18
回答关注问题邀请回答
收藏

3 个回答

  • M.
    M.
    2023-02-18

    第一次注册完后生成一个你的ID,后期所有地方用这个ID就好了(除了支付)。

    2023-02-18
    有用
    回复
  • Jianbo
    Jianbo
    2023-02-18

    建议小程序端发起请求不要把openid作为参数。

    2023-02-18
    有用
    回复 7
    • 郑朝君
      郑朝君
      2023-02-18
      用openid拼接成sql语句,查询数据库用,和前端没关系。
      2023-02-18
      回复
    • Jianbo
      Jianbo
      2023-02-18回复郑朝君
      openid 是微信小程序后台服务生成了,你担心这个里面有注入漏洞?
      2023-02-18
      回复
    • 郑朝君
      郑朝君
      2023-02-18回复Jianbo
      SQL天生有注入的问题
      2023-02-18
      回复
    • 郑朝君
      郑朝君
      发表于移动端
      2023-02-18回复Jianbo
      我担心请求被劫持,或者应答被篡改,因为返回的openid的应答都没有签名。
      2023-02-18
      回复
    • Jianbo
      Jianbo
      发表于小程序端
      2023-02-18回复郑朝君

      你这个担心正常,你不要管 openid 里包括啥字符串,按通常 sql 注入检测即可,只要是访问数据库的参数都不放过。

      2023-02-18
      回复
    查看更多(2)
  • Mr.Zhao
    Mr.Zhao
    2023-02-18

    SQL注入?openid为啥给前端?

    2023-02-18
    有用
    回复 11
    • 郑朝君
      郑朝君
      2023-02-18
      用openid拼接成sql语句,查询数据库用,和前端没关系。
      2023-02-18
      回复
    • Mr.Zhao
      Mr.Zhao
      发表于移动端
      2023-02-18回复郑朝君
      和前端没关系,哪来的注入?openid从哪来的,微信返回的openid就是错的?
      2023-02-18
      回复
    • 郑朝君
      郑朝君
      2023-02-18
      1、前端用SQL吗?既然我说SQL注入,你为什么想到前端?
      2、所有的通信都可能被劫持或篡改,微信很多重要的通信都需要签名,就防这个的。所以,对所有的请求中的数据都要有怀疑态度。
      2023-02-18
      回复
    • 郑朝君
      郑朝君
      2023-02-18
      如果你得到openid就去拼SQL操作数据库,但凡被劫持,改一下openid,那你数据库就完了。
      2023-02-18
      回复
    • Mr.Zhao
      Mr.Zhao
      2023-02-18回复郑朝君
      内网咋被劫持的?改一下openid? 你没其它参数了?
      2023-02-18
      回复
    查看更多(6)
登录 后发表内容