工单节点使用指南
• 请用平和的语言准确描述你所遇到的问题
• 厂商的技术支持和你一样也是有喜怒哀乐的普通人类,尊重是相互的
• 如果是关于 V2EX 本身的问题反馈,请使用 反馈 节点
eason1874

多家云服务商网站 API 随意暴露用户个人信息 @腾讯云 @又拍云 @七牛云

  •  3
     
  •   eason1874 · Mar 21, 2020 · 4095 views
    This topic created in 2269 days ago, the information mentioned may be changed or developed.

    去年给各家云服务商网站做了个检查,发现他们只给前端页面展示的个人信息脱敏,网站 AJAX API 的就完全是明文。比如手机号在网页显示 138****1234,实际上在 API 返回数据里有完整手机号。

    我当时看到每家都这样暴露用户注册邮箱、手机号、姓名、身份证号等,想着只要我的浏览器不装不靠谱的扩展,应该问题也不大。

    过年一年了今天突然想起,又去各大家网站检查了一下,发现居然只有阿里云进行了改进,其他家只改进个别接口?而且发现 @腾讯云 不仅暴露前端需要的信息,居然连前端完全不需要的认证银行卡信息也暴露了?

    我没有开玩笑,以下列几个接口,大家可以自行查证:

    几乎每家都有暴露实名认证的姓名和身份证后 4 位。
    
    腾讯云接口 /cgi/login?action=checkLogin  返回的 data.ownerInfo.passedBankInfo 里有认证用的银行卡信息(包括银行名、姓名、卡号、开户行),认证通过以后前端都没有银行卡展示了,完全用不着的东西不读取不行吗?你读取了还要完整返回,这是想干嘛?故意留个口子给恶意扩展读取用户信息?
    
    又拍云控制台前端隐藏了手机号中间几位,然而接口 /accounts/profile/ 返回的是完整手机号。想要明文展示你就明文展示,何必做这种自欺欺人的行为呢?我没有实名认证,我要实名认证了怕是也在 /api/accounts/certificate/ 返回我完整的认证信息吧?
    
    七牛云前端也隐藏了手机号中间几位,请求接口 /api/gaea/user/overview 返回的也是完整手机号。
    

    我说各家云,你们要像青云那样完整读取了也在网站完整展示,我好歹知道其中风险。你们完整读取了,却装模做样已经脱敏,在前端按脱敏格式显示,绿茶婊行为吗?

    请各家云内部人员或同事看到了,反馈上去,尽快修改。你们这样使用用户个人信息肯定是不合规的

    25 replies    2020-03-22 17:14:34 +08:00
    loading
        1
    loading  
       Mar 21, 2020
    哇,后端出来背锅。这明显是通用接口一把嗦了。
    opengps
        2
    opengps  
       Mar 21, 2020
    某些无良网站就是这样偷取用户手机号的
    shansing
        3
    shansing  
       Mar 21, 2020   ❤️ 1
    我想到某小厂 IM 软件,查看好友的时候好友整个 accountInfo 对象都传过来,还包括密码。
    eason1874
        4
    eason1874  
    OP
       Mar 21, 2020
    @loading #1 看样子就是调用微服务获取用户信息,然后未经脱敏,也不按需过滤就直接返回了。

    @opengps #2 对,这种 API 就是某些网站获取访客 QQ、手机号的渠道之一。

    @shansing #3 个人信息被泄露,防不胜防。
    also24
        5
    also24  
       Mar 21, 2020
    之前因为类似的问题专门和同事沟通过,我一再强调,不需要使用的字段,一个都不传。

    但确实还会遇到很多人为了图省事儿,一整个表直接发出来(毕竟这样方便,ORM 直接出结果)。
    shinciao
        6
    shinciao  
       Mar 21, 2020
    试了一下,我的腾讯云返回的 passedBankInfo 是空的
    shinciao
        7
    shinciao  
       Mar 21, 2020
    @lanternxx #6 不好意思 刚发现我是微信认证的 没用银行卡
    chotow
        8
    chotow  
       Mar 21, 2020
    七牛云和又拍云复现成功,腾讯云因为没绑定银行卡,不清楚。
    wangxiaoaer
        9
    wangxiaoaer  
       Mar 21, 2020
    如果是登陆后返回给个人的接口这样有啥问题吗?不登陆用户又看不到别人的。

    第三方拦截?
    also24
        10
    also24  
       Mar 21, 2020
    @wangxiaoaer
    楼主在主贴里其实已经写到了其中一种获取方式:恶意扩展
    attker
        11
    attker  
       Mar 21, 2020 via iPhone
    @wangxiaoaer 很多信息哪怕登录后也是敏感的,例如银行卡身份证号,它可用这个信息去爆破别的账号信息。被盗往往就是从薄弱的环节开始逐个爆破
    temp178
        12
    temp178  
       Mar 21, 2020
    个人感觉还说的过去。因为是登录鉴权后才返回的,要是自己浏览器都不安全.......
    eason1874
        13
    eason1874  
    OP
       Mar 21, 2020   ❤️ 1
    @also24 #5 可惜很多人意识不到无用的暴露会增加潜在的风险。

    @lanternxx #6
    @chotow #8

    腾讯云控制台首页看 /cgi/capi?cmd=GetCurrentUserInfoV2 这个接口的 data.data.authInfo 有姓名、身份证号、身份证地址。

    @wangxiaoaer #9 看过国产区视频吧?那么多“百度云泄露”你知道怎么来的吗?有一部分就是浏览器恶意扩展偷了分析链接和密码去下载的。

    @mejee #12 浏览器安全很重要,但这不是能随意暴露无关用户信息的理由。像手机号、身份证、银行卡这些信息在他们前端网页都脱敏了,说明他们也知道这不能随意展示,那为什么 API 就完整读出来呢?网站完全用不着的,根本不用读,读了只会增加用户信息被泄露的风险。
    diaosi
        14
    diaosi  
       Mar 21, 2020
    提交 tsrc,说不定能换十块钱;如果腾讯在 hackerone 上有项目,说不定能换个几百块钱。
    shinciao
        15
    shinciao  
       Mar 21, 2020
    x 度云加速甚至直接返回手持身份证正反面照片,连个水印都没有
    dingyx99
        16
    dingyx99  
       Mar 21, 2020
    七牛和腾讯复现成功,因为腾讯不是银行卡认证的所以字段为空
    jin7
        17
    jin7  
       Mar 21, 2020
    太可怕了 浏览器扩展都是随便装的 也不可能去审查它的代码 而且很多扩展是闭源的
    Jaosn
        18
    Jaosn  
       Mar 21, 2020
    我以为就我公司这样,没想到大厂也一个屌样
    eason1874
        19
    eason1874  
    OP
       Mar 21, 2020
    @diaosi #14 这我倒没想到,有空我提交个看看他们处理不。

    @lanternxx #15 这个更严重,你提交个工单反馈看看。

    @dingyx99 #16 这个银行卡信息在前端都没有入口了,好像是早期认证方式,我新账号也没有填过银行卡。根本用不着的东西他们也读出来,增加无端风险。

    @jin7 #17 所以得用上多用户功能,建两个 chrome 快捷方式,一个 –profile-directory=”Default” 一个 –profile-directory=”Profile 1″。默认的尽量少安装,而且只安装自己审查过的或者在 chrome webstore 上架的扩展,敏感网站都用这个上。另一个就随意安装,但不上敏感网站。

    @Jaosn #18 看不见绩效的东西,有时候反而是小公司比较有原则。
    hst001
        20
    hst001  
       Mar 21, 2020
    没人管就是这样,怎么方便怎么来
    PerFectTime
        21
    PerFectTime  
       Mar 21, 2020
    楼主你艾特一下 @tencentcloud 我降权了艾特他收不到消息
    123444a
        22
    123444a  
       Mar 22, 2020 via Android
    eason1874
        23
    eason1874  
    OP
       Mar 22, 2020
    @tencentcloud 来看你家无用接口是怎么增加个人信息暴露的风险。
    123444a
        24
    123444a  
       Mar 22, 2020 via Android
    在欧洲起诉腾讯云违反欧盟私隐条例能不能获得巨额回报
    Coioidea
        25
    Coioidea  
       Mar 22, 2020
    好多扒信息的都是利用的类似 api 吧!希望改进啊
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2936 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 60ms · UTC 12:52 · PVG 20:52 · LAX 05:52 · JFK 08:52
    ♥ Do have faith in what you're doing.