Jul*_*Lam 5 php mysql security plaintext
第一次读者,第一次海报(喔!)
所以我一直在为非正式网站实现我的登录脚本.不太可能受到损害,但为了安全起见,我想问一下,如果我的MySQL数据库登录以明文形式存储在php代码中存在安全风险.
据我所知,代码本身是由Apache解析的,所以最终用户没有看到它(只是输出),这意味着它应该是安全的...但我想要第二个意见.
简介:通过mysql_connect,mysql_select_db,mysql_query访问数据库.登录信息存储在脚本的每次迭代中定义的局部变量中,并且(我认为)一旦脚本终止就转储.
安全漏洞?
yle*_*bre 10
您还可以考虑将用户名/密码组合移动到位于webroot之外的单独配置文件中.确保无法从网络服务器端直接访问该位置.
这样,如果由于某种原因,网络服务器决定不再执行PHP文件,则不会丢失数据库服务器的帐户信息.
作为一个额外的好处,如果你在webroot中使用任何制作.php文件(编辑器,SVN或其他)副本的东西,你不会冒任何人绕过.php执行的风险.
这是与数据库通信的Web应用程序的非常标准的过程.
对于除Web服务器和您自己以外的用户,我建议从文件中取出读取权限 - 如果您的盒子上有其他用户可以监视文件,他们将能够访问您的mysql服务器.
此外,您应该调整顶级目录上的可执行权限,因为它可以防止未经授权的用户甚至输入它.
加强你的mysql用户允许的主机,这样只有你需要的盒子才能连接到它.
当然,如果您的盒子遭到入侵并且攻击者获得了root访问权限,那么几乎没有什么可以保护您.