gpt4 book ai didi

php - file_get_content 是否可以进行注入(inject)攻击?

转载 作者:行者123 更新时间:2023-12-04 10:51:57 24 4
gpt4 key购买 nike

class TemplateController
{
public function get(string $template): string
{
return file_get_contents(_DIST . '/resources/templates/' . $template . '.html');
}
}

我使用 $_GET 或地址栏的直接参数从 SPA 应用程序导入模板。这会导致问题吗?

我在输入周围使用引号来运行推荐以访问无法访问的文件等。

最佳答案

有人可以将值传递给 $template使用 ../ 的变量或 /导航出您在参数中设置的目录。

从理论上讲,它们可以导航到更易受攻击的目录并访问您不希望它们访问的文件。
我会说最好的方法来保护它是验证包含../的输入字符串。或 /如果你知道文件名永远不会有任何./对于包含任何 . 的任何字符串,您中的字符可能会引发验证错误。或 /人物。

最重要的是,遵循有关在生产服务器上设置用户和权限的最佳实践将有助于保护您。
该线程在那里提供了一些有用的帮助:
How to set up file permissions for Laravel?

除此之外,我想不出任何其他漏洞......还有其他人吗?

关于php - file_get_content 是否可以进行注入(inject)攻击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59438821/

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