为什么要验证登录用户的 IP 地址和浏览器


Why verify the IP address and browser of a logged in user?

我正在完成一项安全任务,我们正在针对安全问题强化 PHP 应用程序。建议我们做的一件事是"验证用户的IP地址和浏览器"。

我可以看到您可能想要验证IP地址的几个原因:您可以检查用户是否正在使用他们的"家庭"IP地址,如果他们使用不常见的IP,请询问他们其他安全问题。

不过,这是它的基本要点吗?您对他们的 IP 和浏览器信息还有什么想做的吗?

验证

用户IP和浏览器背后的主要思想与会话劫持攻击有关。以下威胁可以算作最常见的情况

  • 攻击者可以对你的客户端执行中间人(MITM),并可以获取会话密钥(cookie)。这意味着攻击者可以使用此cookie值并破解客户的帐户
  • 您的应用程序可能容易受到跨站点脚本攻击。这意味着攻击者可以控制客户端的浏览器内容并执行任何Javascript代码。这意味着攻击者可以获取会话密钥 (cookie) 客户端。

您需要保护您的客户,即使他们失去了 cookie 值。最好的方法是检查客户的IP。

更多信息 [1] : https://www.owasp.org/index.php/Session_hijacking_attack

更多信息 [2] : https://www.owasp.org/index.php/Session_Management_Cheat_Sheet