gpt4 book ai didi

php 从服务器检测本地主机的安全方法

转载 作者:可可西里 更新时间:2023-10-31 23:31:48 24 4
gpt4 key购买 nike

有很多方法可以检测您是否在本地主机或服务器上运行 PHP 代码。然而,他们使用 $_SERVER 和可以被用户伪造的 http header 。

这对我来说很严重,因为我在我的网站上制作了一个开发人员 php shell interactive,如果它不在本地主机上,它应该转到 404。

最佳答案

最直接的答案是 $_SERVER["REMOTE_ADDR"]。它通常被认为是相当安全的。

但是,如果您通过脚本提供对命令行命令的访问,这可能还不够。 可能可以通过 IP spoofing. 从外部向您的脚本发送请求这可能足以触发破坏性命令,即使 IP 欺骗通常意味着攻击者不会收到响应。 (这是一个非常深奥的场景,我对它的了解不多于它可能发生的情况。)

你可以做什么:

  • 不是从 PHP 内部检查 IP,而是使用更严格的方法确保无法从外部访问该页面,例如通过设置硬件或软件防火墙来阻止任何外部访问,或者配置您的Web 服务器只监听本地请求。

  • 不是从 PHP 中检查 IP,而是使用某种密码身份验证来保护页面。

  • 与安全专家交谈(可能在 http://security.stackexchange.com 上),解释您的网络设置并征求意见在您的特定情况下是否可能发生 IP 欺骗。

  • 通过 CLI 提供您的脚本,服务器的本地命令行,而不是 Web 服务器。将您的脚本放在 Web 服务器的根目录之外。 (不过,此选项可能会破坏您拥有交互式 shell 的特定目的)

或者您当然可以相信没有人会发现。如果这是一个低风险的私有(private)项目,那么考虑 IP 欺骗可能是想多了。

关于php 从服务器检测本地主机的安全方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18030900/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com