意外发现幕布居然明文存储用户密码,还返回给了前端
通过浏览器 使用密码登录幕布,点了登录没反应,出于习惯看了一眼交互请求。
结果发现 幕布不但明文存储了用户密码,还把密码发送到了浏览器端,由前端做密码校验?
真要是这样就有点离谱了感觉
官方回复 encryptPassword 字段 不是用户登录密码 是加密文档的密码
i.imgur.com/FapbdP7.png
老生常谈
看返回字段就能猜到是后台偷懒直接用 select * from user 作为返回结果了。
而且字段名还叫 encryptPassword🤣
草台班子
这。。。离谱
说明也没有专业测试、安全。
。。。这事情往前推 10 年,发生在 2015 年我也觉得很离谱,就算 CSDN 上一堆垃圾教程也没有教过让前端去验证密码的
并未重现。
在密码不正确时
在密码正确时
已经被修复了
改个密码试试, 我这里显示的是我上一个密码,而且你这里返回了 encryptPassword 只是没值
幕布现在是做 flomo 那两个人接手的吧?倒是看到不少人说幕布丢数据的。
我自己对这个开发者印象也不是很好,所以幕布和 flomo 都很久没用了。
#10 >> 还把密码发送到了浏览器端,由前端做密码校验
这就已经不成立了,密码错误时,并不会返回任何有效信息,因此也不存在前端校验密码,至于验证通过后,后端发送了密码或者你说的上一次密码,这是另一回事了。
原则上已经通过验证的用户取得自己的密码,相对来说,并没有很大的安全风险。假设存在 cookie/token 泄露的情况下,即使服务端不返回密码,恶意攻击者也同样可以操作账户。
唯一可能的风险隐患就是 XSS 。
草台班子
显然不是前端做密码校验,而是密码存在用户表,返回用户信息没过滤
有点幽默了
之前在某赛事购票网站看到过前端发明文验证码的。当时是换手机号了,但是之前的手机号还有积分能抵扣优惠,就想把之前账号找回来,然后就在控制台看到明文验证码,成功绑定新手机号。离了个大谱
#12 这样说的话 唯一的风险就是明文存储用户密码了
让我想起来好像是哪个驾校在登录的时候会把密码拼到 url 中做跳转。。。。
是密码正确才会返回整个用户实体,估计偷懒直接丢了整个实体出来,正常是要倒一下的
前端就算校验,也是根据后端返回做的逻辑
最离谱的还是明文存密码
其次是返回密码给前端做逻辑
应该是已经修复了, 我此前没绑定手机号, 一直是微信登录, 刚才绑定手机号, 并连续修改了两次密码, 接口未返回明文密码, 修复的真快啊......... 还是说是之前的某个 bug, 你的密码一直在缓存里没有清除, 你上次改密码和登录是什么时候
最大的问题确实是不该用明文储存密码
上次修改密码 至少是 24 年 11 月之前
刚试了一下 依然会返回密码,应该是上面提到的 程序员偷懒 直接 select * 了,然后我这个账号在某些情况下 给 encryptPassword 字段写入了值
未复现,空的
是加密文档的密码
#11 这个印象有啥讲究不,一直想试试 flomo 的,也听过他们的播客,主观印象还不错
#25 复现了 是加密文档密码
目前用下来没什么问题,就是体量小开发慢。
别对前端要求太多
用了几个月的 MX linux ,感觉很好,今天看了看 DistroWatch ,没想到 MX linux 已经 12 个月排名第一了 看来真是名不虚传呀 😁 身边完全没看过…
ios16.6 安装打开后闪退 鸿蒙 4.0 安装打开后闪退 自己交个社保都这么费劲,我都服了 昨天打电话给本地 12366 ,然后用一个本地的 ixx ( xx 是城市名…
最近在鼓捣国内的付费系统,但是觉得传统的用户注册流程过于繁琐,对于小体量的小项目来说开发和维护一套这样的系统得不偿失。因此构想了一个基于邮箱的用户注册付费流程,大家帮忙看看有什…
合速度