0

我的 public_html 中有一个图像目录结构,如下所示:

public_html/
   design_images/
       product_11/
           112342_234/ ... a bunch of images stored here for this product
           112343_910/ ... images for this product
           more image folders/...
           ...

public_html文件夹中,我有 php 文件,这些文件在产品文件夹中进行图像处理和 PDF 转换。我只是担心有人可能会以某种方式在某处注入一些脚本并删除其中一个产品文件夹。我将所有这些目录保存在 public_html 上,因为我经常需要在整个网站上动态显示产品文件夹中的图像。

我怎样才能避免这种情况?我在虚拟服务器上使用 Apache,并且可以访问我的托管包中的 root。

我在 public_html/js 中也有 javascript 文件,是否有任何恶棍可以以某种方式来编辑它们?

4

1 回答 1

1

移出私有 html 文件夹并制作如下脚本(伪):

加载图像.php

<?
$imageName = $_GET['image']
$file = (abstract folder name and file name from $imagename)
$file = (sanatize all variables before passing it to the filesystem)

$sizeAndType = getimagesize($file);
header('Content-Type:'.$sizeAndType['mime']);
header('Content-Length: ' . filesize($file));
readfile($file);

并使用 www.example.com/loadimage.php?image=product_1234_something.jpg 调用(或者您选择构建名称。

那么最好用 mod_rewrite 编写一个 htaccess 来清理 url,这样你就可以使用旧的,或者更好的 url 构建。

但是,这并不能保护您免受一切侵害。您仍然需要确保服务器的其余部分没有严重的漏洞,例如 777 公用文件夹等等。

于 2013-04-29T08:47:29.240 回答