WEB文件上传漏洞介绍解决办法

引用:http://blog.csdn.net/kobejayandy/article/details/35861499

问题:

-1. 上传文件WEB脚本语言,服务器的WEB容器解释并执行了用户上传的脚本,导致代码执行;
-2. 上传文件FLASH策略文件crossdomain.xml,以此来控制Flash在该域下的行为;
-3. 上传文件是病毒、木马文件,攻击者用以诱骗用户或管理员下载执行;
-4. 上传文件是钓鱼图片或为包含了脚本的图片,某些浏览器会作为脚本执行,实施钓鱼或欺诈;

办法:

-1. 最有效的,将文件上传目录直接设置为不可执行,对于Linux而言,撤销其目录的'x'权限;实际中很多大型网站的上传应用都会放置在独立的存储上作为静态文件处理,一是方便使用缓存加速降低能耗,二是杜绝了脚本执行的可能性;
-2. 文件类型检查:强烈推荐白名单方式,结合MIME Type、后缀检查等方式;此外对于图片的处理可以使用压缩函数或resize函数,处理图片的同时破坏其包含的HTML代码;
-3. 使用随机数改写文件名和文件路径,使得用户不能轻易访问自己上传的文件;
-4. 单独设置文件服务器的域名;

例如:IIS7.0设置办法 1、首先选中目录。 2、 双击右边的处理程序映射。 3、点击右边的编辑功能权限。 4、把脚本和可执行的勾去掉。

WEB文件上传漏洞介绍解决办法

例如:Nginx 设置方法 引用:http://www.cnblogs.com/duanxz/p/4919136.html

#匹配多个上传目录
                location ~ ^/(Upload|Upload1)
                {
                        # 匹配文件最名包含两个.以上的文件
                        location ~ "([.]{2,})$"
                        {
                                deny all;
                        }
                        # 配置php和php5后缀
                        location ~ ".(php|php5)$"
                        {
                                deny all;
                        }
                }

location ~ .*.(php|php5)?$
                {
                                try_files $uri =404;
                                fastcgi_pass  unix:/tmp/php-cgi.sock;
                                fastcgi_index index.php;
                                include fcgi.conf;
                }

上一篇:Android 概述


下一篇:STM32使用keil串口输出中文乱码问题