我的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文件,是否有可能以某种方式来编辑它们?
答案 0 :(得分:1)
移出私人html文件夹并制作类似(伪)的脚本:
loadimage.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来清理网址会更好,这样你就可以使用旧的或更好的网址构建。
然而,这并不能保护您免受一切伤害。你仍然需要确保服务器的其余部分没有像777公共文件夹那样的严重漏洞,更像是这样。