手机厂商

十大常见web漏洞——文件上传漏洞

编辑/作者:安安 2020-05-20 我要评论

漏洞介绍 在我们浏览网页时,文件上传是非常常见的,比如我们会上传头像、附件、视频等文件,文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严造成的...

  漏洞介绍

  在我们浏览网页时,文件上传是非常常见的,比如我们会上传头像、附件、视频等文件,文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严造成的,如果文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,比如上传头像的时候,按道理用户只能上传图片类型的文件,但是如果代码没有限制文件类型,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。

十大常见web漏洞——文件上传漏洞

  文件传输

  漏洞演示

  下面我们在DVWA环境下进行演示,如下图红框中要求我们选择一张图片去上传,正常用户会选择后缀为“.jpg”、“png”等类型的图片上传,但如果后台代码没有对文件类型进行限制,我们选择了一个后缀为“”.php的“webshell.php”文件,它是一个包含了恶意代码文件,点击“upload”,提示“succesfully uploaded!”,上传成功!攻击者会通过访问此文件,进而控制我们的网站服务器。

十大常见web漏洞——文件上传漏洞

  没有限制文件类型的上传

  当然,现在没有限制的上传页面几乎不存在了,我们大部分遇到的情况会是如下图所示:

十大常见web漏洞——文件上传漏洞

  限制了文件类型的上传界面

  它会提示“Your image was not uploaded. We can only accept JPEG or PNG images.”上传失败,并要求你只能上传JPEG或PNG格式的文件,我们打开后台代码,发现它只允许image/jpeg和image/png类型文件上传,如下图:

十大常见web漏洞——文件上传漏洞

  限制了文件上传类型

  这时候我们需要抓取上传文件时的数据请求包,如下图所示,将加深部分的信息(Content-Type: application/octet-stream)修改为:Content-Type: image/jpeg,点击forward

十大常见web漏洞——文件上传漏洞

  上传文件时的请求数据包

  系统就会提示上传成功,因为我们修改了文件类型为系统所允许的类型,所以上传成功,如下图:

十大常见web漏洞——文件上传漏洞

  修改请求数据包后上传成功

  此时此刻,系统虽然进行了文件类型的限制,但是攻击者还是会通过各种各样的手段将自己想要上传的文件类型,上传到系统服务器,文件上传漏洞依然存在,需要更严格的限制,这里我们就不再演示,因为魔高一尺道高一丈,我们只需要了解文件上传漏洞的原因及危害即可,防护的问题交给专业的技术人员来完成,下面介绍三个主要防御措施。

  漏洞防御

  1、设置文件上传类型白名单;

  2、指定文件上传的路径,并禁止路径下文件的执行权限;

  3、隐藏上传路径。

  没有网络安全,就没有国家安全

文章来源:浩瀚兴空

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。4、对于网友投稿的文章请仔细核对其真实性,如遇要求汇款转账情况,请格外谨慎。

相关文章
  • 5G时代“线上消遣”有多重要?2020年智能手机行

    5G时代“线上消遣”有多重要?2020年智能手机行

  • 2020手机升值榜,华为独占鳌头,小米证明自己,

    2020手机升值榜,华为独占鳌头,小米证明自己,

  • vivo这次真的太拼了

    vivo这次真的太拼了

  • 华为发布鸿蒙OS 2.0手机开发者Beta版:P40、Mate 3

    华为发布鸿蒙OS 2.0手机开发者Beta版:P40、Mate 3