我们有很多身份验证和授权方法(OAuth,2FA等)可以使用,以确保我们在电子商务平台上帐户的安全性。
最近,我对OpenCart 3.0.2.0
的管理员登录逻辑进行了仔细的研究,并试图弄清为什么这样的授权逻辑设计:
我们可以检查admin用户的user_token是否有效并且是否在数据库的会话表中(登录时会检查),然后我们可以跟踪PHP内存中的记录状态,也可以检查是否会话已过期。
问题是:为什么我们仍然需要在各处的get变量上保留user_token?
答案 0 :(得分:0)
稍后在Internet上讨论此安全漏洞后,添加了user_token变量。
令牌的目的是防止黑客向用户发送网址中带有恶意代码的链接,该链接将使用经过Admins身份验证的会话来入侵Opencart管理面板。
在放置了令牌的情况下,OpenCart会对其进行检查并在令牌不正确的情况下退出管理员。