为什么PHPSuExec和安全漏洞的PHP
在大多数的Apache服务器,运行的PHP作为Apache模块。 因此,它直接运行在用户没有,但doesn't需要执行国旗。 这意味着,为了执行一个PHP文件,它只是需要得到世界的可读性。 问题是,这使其他用户都在服务器上读取您的PHP文件!
允许其他用户阅读您的HTML文件不是一个问题,因为它们可以显示在Internet Explorer 。 然而, PHP文件都无法读取,他们剖析。 许多脚本使用PHP文件来存储数据库用户名和密码。 这意味着,另一台服务器上每个客户可以阅读您的PHP文件,找回您的密码并访问您的数据库。
互联网服务供应商关闭这个洞安装Apache模块所谓PHPSuExec ,执行PHP脚本根据您的用户名。 而不是使用每个人的权限,它使用了业主的权限。 因此,您可以变更您的权限PHP脚本,以0700或0400 ,仍然读和执行它们。 然而,这些脚本将不再获得任何其他用户。 PHPSuExec将拒绝执行一个脚本如果它是世界写来保护你从别人滥用您的脚本。
您可以很轻松地告诉如果您的服务器已经启用PHPSuExec访问您的服务器phpinfo页。 只要看看以下上方附近的该网页。 (四方框跌服务器的API ) : -服务器的A PI阿帕奇这意味着,您的服务器正在运行P HP作为A pache的模块。 如果在phpinfo页,您看到以下内容: -服务器的A PI的C GI然后您的服务器已经一个C GIP HP的安装与s uexec启用。
有什么区别?
多数网站将不会受到影响的变化,以CGI方式运行PHP与suexec 。 PHPSuExec工程大致相同方式的CGI ( Perl脚本等等) suexec没有,所有的应用程序运行在你的帐户的使用者名称的UID / GID的,而不是在PHPs案件作为Apache的模块,用户任何人。
这只是意味着,规定,适用于。的CGI + 。特等档案您当前的服务器,适用于PHP文件还。 最高权限允许对目录和PHP文件是755 。 没有权限设定为755最高的PHP文件和安装路径,将导致500内部服务器错误,当试图执行这些。
文件和文件夹权限
正如您可以看到从表中,唯一的要求是所有人许可阅读0400 ,但如果你需要写信给该文件,你也需要让业主写权限0600 。 这是建议,您的所有PHP文件的属性允许0400或0600 。 在执行权限是从未要求,该组的权限,每个人都可以留下为0 。
PHPSuExec也证明了目录,其中PHP文件的位置。 的PHP文件不能执行的目录,是集团的世界写或写。 然而,为了获得一个目录,它必须是世界上可执行,这是安全的事情。 因此,文件夹包含PHP文件的权限应该有0755或0555 。 读写执行业主收件组每一个人。
777我是否需要设置目录呢? 我的安装脚本说,我知道。
不,你不必目录或文件设置为777 ,即使您安装文件告诉你,你怎么做。 755权限将工作以同样的方式脚本所拥有的帐户的用户的UID / GID的将能够写信给您的文件,以同样的方式,他们可以下运行Apache的777权限。
如果您有PHP应用程序/脚本,有目录设定为777 , (需要写信给他们下的PHP / Apache模块) ,他们将需要改变。 此外,我们将必须改变所有制的所有文件所拥有的用户没有任何人的用户名的UID / GID的帐户。
。 htaccess
你不能操纵php.ini中设置。 htaccess时,以CGI方式运行PHP / phpsuexec 。 如果您使用的是。 htaccess与php_value条目内,您会收到一个内部服务器的500错误时,试图访问脚本。 这是因为PHP是不再投放作为Apache的模块和Apache将不会处理这些指令的任何更长的时间。 所有PHP的价值应删除从您的。 htaccess文件,以避免这一问题。 放置php.ini文件中的地位将解决这个问题。 (请参阅下文。 )
默认设置,我需要PHP来运行不同的选择,不是服务器的默认设置,我可以做到这一点?
该服务器的默认设置与php.ini中可能会限制某些应用程序,这是可以修改的设置以及如何PHP将运行在您的帐户,以每个目录的基础。 如果你有一个应用程序,要求,例如: -
register_globals的必须开启
然后,通过创建一个文件名为php.ini中的目录内的脚本位于同入境register_globals = on的将允许您运行该脚本设置。
1 | On register_globals = on的 |
您可以复制其他变数的phpinfo页因为它们出现在它和修改的要求设置为您的脚本。
快速射击麻烦。 。 。 。 。 帮助我的PHP脚本不工作或我有一个错误讯息
通过电子邮件发送此帖 |
打印此职位 ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ||
| By N2H | ||||||||
搬场
留下一个答复