【问题标题】:fsockopen to user-entered IP address - security concernfsockopen 到用户输入的 IP 地址 - 安全问题
【发布时间】:2014-03-19 00:55:50
【问题描述】:

我目前正在构建一个网站,让拥有在线视频游戏服务器的人能够更好地控制他们的服务器,而无需输入控制台命令。为此,用户输入其游戏服务器的 IP 地址和端口,我的脚本尝试使用 fsockopen() 建立 tcp 连接。然后它使用 fwrite 发送一个命令(使用源服务器查询协议)并监听预期的响应。

到目前为止,该功能运行良好,但我担心允许 fsockopen 连接到几乎任何地址。为了安全起见,如果用户完全控制连接服务器会发生什么?是否有任何代码执行或其他我应该注意的严重问题?

非常感谢。

【问题讨论】:

    标签: php security fsockopen


    【解决方案1】:

    问题可能并不在于您的服务器可能会受到损害,只是简单地从套接字读取值在 PHP 中是安全的,除非 PHP 本身有错误。

    我宁愿担心任意用户能够连接到互联网上的任何服务。根据您实现它的方式,您的机器可能会被用来发送垃圾邮件、帮助进行 DDoS 或其他类型的攻击。

    所以:

    • 不允许输入某些端口(所有
    • 禁止某些 IP 范围(例如 10/8127/8
    • 禁止任何其他不能成为合理值的东西
    • 限速吧
    • 跟踪执行的操作,以防您的计算机被用于恶意活动

    【讨论】:

    • 很好的建议。幸运的是,我连接的所有游戏服务器的可预测端口范围都大于 25000,因此超出了您提到的范围。我肯定不会允许除此之外的任何事情,并且可能会以某种方式限制连接频率。
    猜你喜欢
    • 1970-01-01
    • 2015-09-03
    • 2011-04-25
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    • 2017-10-28
    • 1970-01-01
    相关资源
    最近更新 更多