文件上传漏洞原理与防御

目录

        • 原理及危害
        • 分类及常用工具
        • 用法
        • 防御思路

原理及危害

文件上传是大部分web应用都具备的功能,例如用户上传附件,修改头像,分享图片/视频等,web应用收集之后后台存储,需要的时候再调用出来。如果恶意文件如PHP,ASP等执行文件绕过web应用,并顺利执行,相当于黑客直接拿到了webshell,就可以拿到web应用的数据,对文件系统删除,增加,修改,甚至本地提权,进一步拿下整个服务器甚至内网渗透。文件上传漏洞主要攻击web服务,SQL注入攻击的对象是数据库服务,实际渗透过程一般结合起来,达到对目标服务的深度控制

分类及常用工具

webshell定义,web后端脚本语言一般具备系统相关的函数,用这些系统函数可以执行操作系统命令,包含这些函数的文件称为webshell,根据功能级别,又称为“小马”或者“大马”,例如一句话木马便是“小马”,webshell可以根据网站权重、shell权限等产生不同的商业价值,已经形成了一条webshell买卖的黑色完整产业链

一句话木马也称为小马,即整个shell代码量只有一行,一般是系统执行函数
webshell大马代码量和功能比小马多,一般会进行二次编码加密,防止被安全防火墙/入侵系统检测到
常用工具分类:中国菜刀,Cknife,edjpgcom,XISE WBMS,Weevely

用法

上传``````脚本,测试如下
http://757dfa27d49049248e26a62056b6d9d55c527af0e8b24fa0.changame.ichunqiu.com/upload/456.php?1=phpinfo();有返回即漏洞验证成功

防御思路

  1. 文件类型/大小/后缀检测,前端通过JavaScript验证,文件扩展,文件大小,后端检测MIME类型等,白名单过滤,文件重命名,文件大小
  2. 最小权限运行web服务
  3. 上传文件目录修改权限,不给上传文件执行权限,即使上传了木马也无法执行,读写权限分离
  4. 安装WAF进入深度检测,安全狗,阿里云盾等

你可能感兴趣的:(WEB安全,安全)