所谓token,大概就是登陆验证成功后,服务器根据算法生成一个唯一串返回给前端。前端拿着这个串作为一个凭证去获取数据,那么问题来了:
- 如何中途截获到这个token,是不是一样可以成功获得数据;
- 服务器怎么去验证这个串的正误;
- 这种认证机制到底安全在哪里;
所谓token,大概就是登陆验证成功后,服务器根据算法生成一个唯一串返回给前端。前端拿着这个串作为一个凭证去获取数据,那么问题来了:
至少token不是连续的,我不能从1往后试
举个例子,比如查看某人的订单是这样的/order/${uid}(虽然没人这么傻但是不要在乎这些细节)
我找到规律之后只要把uid改一改就可以随意查看其他人的订单信息了,这样不安全,但如果uid并不是连续的数字,而是一个md5加密的32位字符,这个路子就行不通了
1、使用https token无法在mimt中截取,除非网站已经被xss注入,当然可以用cookie only来防止js读取。
2、token分为很多种jwt token通过hash加密,服务器取到后第一层进行hash监测,再与数据库比对(可以省略)。
3、没有绝对的安全,只有相对安全。
10 回答11.1k 阅读
15 回答8.4k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
8 回答6.2k 阅读
2 回答2.6k 阅读✓ 已解决
回答:第一点,如果能够成功截获的话,又在token失效期内,是可以成功获取到数据的。