我正在使用10年的PHP网站,未在任何框架上运行。只是简单的PHP脚本(老式的方式,包括/需要其他文件)。
我一直在寻找变量来完成使用函数get_defined_vars()编写的代码,并且注意到页面上输出了大量的变量,包括用户名,密码和更多数据,例如数据库凭证等。
用户可以通过任何方式打印/回显/ var_dumped /请求该数据吗?或者这是强制性的,只有我(一个可以从服务器内部访问PHP文件的人)可以使用,但是我想要而不愿意将它们显示给用户吗?
您应仅将此功能用于调试。我想不出有什么充分的理由在实时代码中使用它。
用户可以通过任何方式获取此数据打印/回显/ var_dumped /请求?
并非无法访问您的PHP文件或存在一些违规行为。
如果我使用'get_defined_vars()获得了大量感性数据-是这个安全漏洞? (用户名,密码和更多数据,例如数据库凭据等。)
不一定违反。但是,如果某处存在漏洞,可能很容易受到干扰。
我认为如果想提高安全性,此旧代码可能需要大量工作: