token 被盗引发的数据安全问题

2021-11-18 17:06:19 +08:00
 liuzhen
最近在过等保,测试人员拿 admin 用户的 token 替换到了 guess 用户的请求头里,得出一个存在越权的结论,给的修复方案是: 对所有用户功能基于 sessionid 判断用户权限。

但我寻思 sessionid 不也存在浏览器端吗,一样可以被等保测试人员拿到放在其他用户的请求里伪装 admin 用户
11012 次点击
所在节点    信息安全
118 条回复
oseau
2021-11-18 18:12:46 +08:00
pengtdyd
2021-11-18 18:14:17 +08:00
跟一帮废物共事,就是会遇到各种奇葩问题
DeWjjj
2021-11-18 18:21:32 +08:00
主机都被劫持拿到 token 了,你说其他的还有意义嘛?
这种角度的安防就别做了,用户的手机验证码已经给坏人监听了。
咋了你这样防只会防到正常用户,最多就是加一个浏览器版本和 ID 。
其他的做了,会干扰正常用户。
moreant
2021-11-18 19:11:10 +08:00
≈短信验证码被盗引发的数据安全问题( doge
karloku
2021-11-18 19:34:35 +08:00
管理员被绑架引发的数据安全问题(
aliveyang
2021-11-18 19:50:10 +08:00
token:"我" 越权了 "我" ?
xuxuxu123
2021-11-18 19:55:37 +08:00
我们系统是做了 ip 校验,登录时的 ip 和操作 ip 不一样就强制下线
CloudMx
2021-11-18 20:45:51 +08:00
这兄弟是想证明垂直越权吧,貌似搞反了,常规操作,要拿也是拿低权限的身份识别信息(SessionID 、JWT 信息)去高权限的账号请求接口去替换,而不是拿高权限的身份去请求低身份请求。
Jooooooooo
2021-11-18 20:54:00 +08:00
他拿 admin 的账户密码还能登录 admin 账户呢.
huaxianyan
2021-11-18 21:04:25 +08:00
拿没有权限的账号 token 替换 admin 用户的还能请求通过才能说明有垂直越权吧?
yogogo
2021-11-18 21:07:08 +08:00
是不是对越权理解不正确?
xiaofan305
2021-11-18 21:24:02 +08:00
以前貌似听说过一种叫做“浏览器指纹”的技术,可以用来做广告跟踪,或许可以用 token 和它绑定。不过这只是一种传说中的技术,感觉挺黑科技的,实际上如何不晓得。。。简单的做法就是 token 和用户 id 绑定,请求的时候把用户 id 也传过来。或者,可以设置多个 token 字段,让他们想复制都不知道要复制哪一个。
twl007
2021-11-18 21:51:20 +08:00
这不等同于我拿了 admin 的账号和密码去登陆 admin 账号么……

或者对 admin 账号做单独限制 用 one-time token 试试看
xuanbg
2021-11-18 22:04:02 +08:00
这个是有办法的,只要 token 里面存储客户端指纹就可以解决。验证 token 的时候比对指纹,像这种 geust 的 token 换成 admin 的 token ,指纹比对就过不去。
vivipure
2021-11-18 22:27:41 +08:00
如果想达到这种测试用例的安全效果的话,必然会牺牲用户的使用体验。安全的意义主要在于加大用户破解成本,而不是保证绝对的安全,因为根本不存在绝对的安全。
例如,我就见过客户端登陆时把密码直接加密 md5 再发送的情况。这种的确安全一点,但是没多大意义,如果有人通过 HTTPS 能直接获取你的登录密码了,那加个密还有屁用。
HolaPz
2021-11-18 22:38:16 +08:00
最近看到一篇文章
token 给 2 个 一个 token 一个 refreshToken
token 时间过了 就用 refreshToken 重新获取 token
token 放 Authentication ,refresh Token 放 cookie
ajaxfunction
2021-11-18 23:02:58 +08:00
还有脑残人员让我把 waf 关掉,来 xss ,
最后让我整改,说有高危 xss 漏洞,
我 tm 上防火墙的目的就是过滤注入 xss 。

让你把防盗门拆掉,他进去又指责你家不安全,没有防护措施。
jones2000
2021-11-18 23:17:28 +08:00
每个用户单独发证书,token 使用每个用户对应的证书加密。 这样就算替换了用户, 原来的 token 是无法解密的。
yyysuo
2021-11-18 23:27:55 +08:00
等保就是瞎搞。
Ansen
2021-11-18 23:56:38 +08:00
算用户的机器码?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/816341

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX