示例FAQ由The SmartFactory(http://www.smartfactory.ca)开发,它是InBox Solutions(http://www.inboxsolutions.net)的一个部门。

用户能否将病毒上传到我的网站?
如果您正在运行允许用户上传各种材料的模块,您应该采取措施来保护您的网站并防止通过用户下载可能出现的可疑材料扩散。预防病毒上传和其他恶意代码的重要步骤是限制用户可上传的文件类型。这里有两个问题:保护服务器端(您的服务器)和保护客户端。(您的用户)一般来说,限制文件上传类型为 .png .gif .jpg .zip .rar .tar.gz。这意味着用户仍然可以上传压缩在zip或rar,.tar.gz中的其他文件类型,但下载用户在解压缩和打开文件之前有机会扫描下载包。具有".exe"扩展名的文件默认情况下在Apache中具有"Mime"类型"application/octet-stream"。它不会由服务器处理。如果请求或链接,它将作为一个二进制流发送给请求者。这时,用户的浏览器通常将打开一个对话框询问您是否想要保存它或在本地上运行它。但这取决于客户端浏览器。无论如何,它不会作为服务器端的PHP文件处理。动态包含文件非常危险 - 尤其如果您还允许用户在其他页面上上传文件。假设您有一个允许用户上传头像或附加文件到其帖子的论坛,而这个脚本未能充分检查上传的文件类型。那么一个恶意用户可能会创建一个名为"exploit.jpg"的文件,实际上是一个包含一些恶意代码的PHP文件。例如:
echo "H4H D00D UR 73H L4M3R!!!11!!";
?>
这段代码通常不能运行,因为扩展名已链接到图像/jpeg MIME类型,但PHP在使用包含或require时不会检查这些内容 - 因此可以通过调用 http://yourdomain.com/yourscript.ph...ars/exploit.jpg 来运行此代码。这里的示例会让您尴尬(以及语法良好)地称呼您为73H L4M3R;真正的漏洞可能会故意破坏您的网站或超负荷服务器,扰乱您自己的服务和他人。保护您脚本的其他方法是通过使用.htaccess精确确定文件的处理方式。.htaccess定义


评论归作者所有。我们不对其内容负责。


Login

Who's Online

294 user(s) are online (21 user(s) are browsing XOOPS FAQ)


Members: 0


Guests: 294


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Aug 31
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Did you know ?

you can add a help link into the register page.

Random question

How do I administrate a module?