我在网站上有一些额外的功能,员工可以使用但不允许客户看到。
员工都将在一系列域中。
我所做的是像这样获取用户 ip:
$user_ip = gethostbyname($_SERVER['REMOTE_ADDR']);
然后我使用 gethostbyname
然后我检查用户是否在这样的域之一上:
in_array($user_ip,$allowedIPS)
因此,如果用户在其中一个域中,他们会看到供内部使用的其他功能。否则他们只会看到对公众意味着什么。
我的问题是,这安全吗?或者有人可能会欺骗他们的 IP,使其看起来像是在我们的域中并获得对这些功能的访问权限?
最佳答案
由于 Three Way Handshake,不可能在开放的互联网上欺骗 TCP 连接.但是,也许可以使用 CSRF 访问此功能.
PHP 直接从 Apache 的 TCP 套接字中提取 $_SERVER['REMOTE_ADDR']
,因为它不会受到攻击者的影响。是的,我看过这段代码。
关于php - 是否有可能欺骗您的 IP... 测试 IP 地址安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3687126/