以 777 权限注入 PHP 文件中的代码

cod*_*er_ 4 security linux php hacking

我醒来发现我的共享网络主机中具有 777 权限的所有文件夹都有两个新的 php 文件。无法读取文件中的代码 - 这是解码版本:http : //pastie.org/779226(这是什么......?)该代码甚至被注入到一些 PHP 文件中。

我不知道有人会怎么做?我知道拥有 777 权限并不是最聪明的事情,但是他们最初是如何进入我的文件夹系统的。

我只是一个客户端程序员,如果我有一些关于如何防止将来发生这种情况的建议,那就太好了。

干杯。

And*_*ore 8

这是脚本的去混淆版本:http : //pastie.org/private/iobgt7aetg8mezoepucsg

该代码似乎包含来自另一个网站的外部 PHP 代码,并在这样做时收集有关您的访问者的信息。

发生这种情况的一种方式是您允许在可从外部访问的目录上上传文件。在没有适当验证的情况下这样做是危险的,因为恶意用户可以上传带有恶意代码的 PHP 文件(使用您的图片上传)。如果网络服务器配置不正确,代码将在请求时运行。

为避免此类问题,请确保:

  • PHP 进程由有限的用户运行。
  • 不需要编辑的文件被设置为只能由所有者写入(0644 或 0744 取决于您是否需要执行位)。
  • 只将上​​传目录设置为可写。
  • 尝试使用 webroot 之外的上传目录。然后用于readfile()提供文件。
  • 验证文件。如果您希望表单仅允许图像,请验证魔术位并确保图像有效。这是一个非常容易被忽视的步骤。这同样适用于任何其他格式。不要依赖客户端发送的文件扩展名或 mimetype。检查实际文件内容。