意外发现幕布居然明文存储用户密码,还返回给了前端 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
815979670
V2EX    信息安全

意外发现幕布居然明文存储用户密码,还返回给了前端

  •  2
     
  •   815979670 230 天前 7603 次点击
    这是一个创建于 230 天前的主题,其中的信息可能已经有所发展或是发生改变。
    通过浏览器 使用密码登录幕布,点了登录没反应,出于习惯看了一眼交互请求。
    结果发现 幕布不但明文存储了用户密码,还把密码发送到了浏览器端,由前端做密码校验?
    真要是这样就有点离谱了感觉
    ![]( )
    第 1 条附言    230 天前

    官方回复 encryptPassword 字段 不是用户登录密码 是加密文档的密码 https://i.imgur.com/FapbdP7.png

    30 条回复    2025-05-08 10:39:53 +08:00
    LawlietZ
        1
    LawlietZ  
       230 天前
    老生常谈
    coolcoffee
        2
    coolcoffee  
       230 天前   1
    看返回字段就能猜到是后台偷懒直接用 select * from user 作为返回结果了。
    craftsmanship
        3
    craftsmanship  
       230 天前 via Android
    而且字段名还叫 encryptPassword
    em998
        4
    em998  
       230 天前
    草台班子
    putaozhenhaochi
        5
    putaozhenhaochi  
       230 天前 via Android
    这。。。离谱
    jydeng
        6
    jydeng  
       230 天前
    说明也没有专业测试、安全。
    helone
        7
    helone  
       230 天前
    。。。这事情往前推 10 年,发生在 2015 年我也觉得很离谱,就算 CSDN 上一堆垃圾教程也没有教过让前端去验证密码的
    gam2046
        8
    gam2046  
       230 天前
    并未重现。

    在密码不正确时



    在密码正确时

    Oct1a
        9
    Oct1a  
       230 天前
    已经被修复了
    815979670
        10
    815979670  
    OP
       230 天前
    @gam2046 改个密码试试, 我这里显示的是我上一个密码,而且你这里返回了 encryptPassword 只是没值
    aaxx2xx
        11
    aaxx2xx  
       230 天前   1
    幕布现在是做 flomo 那两个人接手的吧?倒是看到不少人说幕布丢数据的。
    我自己对这个开发者印象也不是很好,所以幕布和 flomo 都很久没用了。
    gam2046
        12
    gam2046  
       230 天前   1
    @815979670 #10 >> 还把密码发送到了浏览器端,由前端做密码校验

    这就已经不成立了,密码错误时,并不会返回任何有效信息,因此也不存在前端校验密码,至于验证通过后,后端发送了密码或者你说的上一次密码,这是另一回事了。


    原则上已经通过验证的用户取得自己的密码,相对来说,并没有很大的安全风险。假设存在 cookie/token 泄露的情况下,即使服务端不返回密码,恶意攻击者也同样可以操作账户。

    唯一可能的风险隐患就是 XSS 。
    weegc
        13
    weegc  
       230 天前
    草台班子
    liubaicai
        14
    liubaicai  
       230 天前
    显然不是前端做密码校验,而是密码存在用户表,返回用户信息没过滤
    ColdBird
        15
    ColdBird  
       230 天前
    有点幽默了
    cwliang
        16
    cwliang  
       230 天前
    之前在某赛事购票网站看到过前端发明文验证码的。当时是换手机号了,但是之前的手机号还有积分能抵扣优惠,就想把之前账号找回来,然后就在控制台看到明文验证码,成功绑定新手机号。离了个大谱
    815979670
        17
    815979670  
    OP
       230 天前   1
    @gam2046 #12 这样说的话 唯一的风险就是明文存储用户密码了
    exiaoxing
        18
    exiaoxing  
       230 天前
    让我想起来好像是哪个驾校在登录的时候会把密码拼到 url 中做跳转。。。。
    MIUIOS
        19
    MIUIOS  
       230 天前
    是密码正确才会返回整个用户实体,估计偷懒直接丢了整个实体出来,正常是要倒一下的
    Torpedo
        20
    Torpedo  
       230 天前
    前端就算校验,也是根据后端返回做的逻辑
    最离谱的还是明文存密码
    其次是返回密码给前端做逻辑
    cvooc
        21
    cvooc  
       230 天前
    应该是已经修复了, 我此前没绑定手机号, 一直是微信登录, 刚才绑定手机号, 并连续修改了两次密码, 接口未返回明文密码, 修复的真快啊......... 还是说是之前的某个 bug, 你的密码一直在缓存里没有清除, 你上次改密码和登录是什么时候
    yolee599
        22
    yolee599  
       230 天前 via Android
    最大的问题确实是不该用明文储存密码
    815979670
        23
    815979670  
    OP
       230 天前
    @retrocode 上次修改密码 至少是 24 年 11 月之前



    刚试了一下 依然会返回密码,应该是上面提到的 程序员偷懒 直接 select * 了,然后我这个账号在某些情况下 给 encryptPassword 字段写入了值
    itechify
        24
    itechify  
    PRO
       230 天前
    未复现,空的
    815979670
        25
    815979670  
    OP
       230 天前
    @oneisall8955 是加密文档的密码
    linyi01
        26
    linyi01  
       230 天前 via iPhone
    @aaxx2xx #11 这个印象有啥讲究不,一直想试试 flomo 的,也听过他们的播客,主观印象还不错
    cvooc
        27
    cvooc  
       230 天前
    @815979670 #25 复现了 是加密文档密码
    Chicagoake
        28
    Chicagoake  
       230 天前
    @linyi01 目前用下来没什么问题,就是体量小开发慢。
    PaulSamuelson
        29
    PaulSamuelson  
       230 天前
    别对前端要求太多
    shintendo
        30
    shintendo  
       229 天前   1
    @PaulSamuelson 不是哥们,明文返回密码跟前端有什么关系
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1189 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 17:36 PVG 01:36 LAX 09:36 JFK 12:36
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86