web渗透之文件上传漏洞知识总结

一、文件上传漏洞思路:

第一步:

        首先看中间件:因为第一步看中间件就是确定是否存在解析漏洞(学习整理几种解析漏洞的对应版本,有些低版本有解析漏洞,有些高版本就没有。)中间件版本确定了,解析漏洞就确定了,有些解析漏洞只要有上传点就能实现提权,有些会受到权限就不行

第二步:

        然后有了解析漏洞,我们就要找文件上传来配合。

  • scan字典扫描(就通过网站字典扫描)
  • 会员中心(这种很有可能是文件上传的地方)

        扫描后去到验证/绕过的环节,判断验证方式:黑名单?、白名单?、文件内容?

第三步:

        上面都不行,最后再测试解析漏洞,这个时候就看他属于网站的哪个CMS。

解析漏洞→CMS漏洞→编辑器漏洞→CVE漏洞

web渗透之文件上传漏洞知识总结_第1张图片

二、文件上传漏洞

1.什么是文件上传漏洞?

答:文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。常见场景是web服务器允许用户上传图片或者普通文本文件保存,而用户绕过上传机制上传恶意代码并执行从而控制服务器。

文件上传漏洞就是利用网页代码中的文件上传路径变量过滤不严将可执行的文件上传到一个到服务器中,再通过URL去访问以执行恶意代码。

2.文件上传漏洞有哪些危害?

答:WEB应用开发人员在实现文件上传功能过程中,如果没有对文件格式、后缀严格校验,WEB中存在文件上传漏洞,攻击者可能利用此漏洞直接上传病毒、木马、钓鱼图片、包含了脚本的图片、恶意脚本文件、WebShell等,再通过访问这些恶意的脚本中的恶意代码,最终可能会导致用户信息泄露,被钓鱼、欺诈,甚至使攻击者可以直接上传WebShell到服务器,进而得到自己想要的信息和权限,最终达到对数据库执行、服务器文件管理、服务器命令执行等恶意操作,甚至完全控制服务器系统,在服务器系统中为所欲为。

获取权限,getshell

服务器提权,获取内网权限......

3.文件上传漏洞如何查找及判断?

黑盒:对方的网站情况,源码我们是不知道的。通过目录扫描获取到文件上传地址,功能查找,看网站有没有文件上传功能,比如会员中心上传头像等等。

白盒:有了源码,通过代码分析,本地测试

web渗透之文件上传漏洞知识总结_第2张图片

4.文件上传漏洞产生的原因?

一些web应用程序中允许上传图片,文本或者其他资源到指定的位置,文件上传漏洞就是利用这些可以上传的地方将恶意代码植入到服务器中,再通过url去访问以执行代码.

造成文件上传漏洞的原因是:

          • 服务器配置不当
          • 开源编辑器上传漏洞
          • 本地文件上传限制被绕过
          • 过滤不严或被绕过
          • 文件解析漏洞导致文件执行
          • 文件路径截断

5.关于文件上传在实际应用中的说明?

1、任意文件上传漏洞描述

答:任意文件上传就是在支持文件上传的地方,上传任意类型的文件,我们可以上传恶意木马文件对其服务器进行攻击,得到webshell,危险等级超级高,也是现在入侵上传漏洞中常见的漏洞。

导致该漏洞的原因在于代码作者没有对访客提交的数据进行检验或者过滤不严,可以直接提交修改过的数据 绕过扩展名的检验。

2.web中间件解析漏洞描述

答:解析漏洞指的是服务器应用程序在解析某些精心构造的后缀文件时,会将其解析成网页脚本,从而导致网站的沦陷。大部分解析漏洞的产生都是由应用程序本身的漏洞导致的。

web渗透之文件上传漏洞知识总结_第3张图片

IIS漏洞: IIS漏洞是Internet information Services的缩写,意为互联网信息服务。目前只适用于window系统,不适用其他操作系统。

Apache:Apache是世界使用排名第一的web服务器软件,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。

Nginx:Nginx是一款轻量级的web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

Tomcat:Tomcat服务器是一个免费的开放源代码的web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache服务器的扩展,但运行时它是独立运行的,所以当运行tomcat时,它实际上作为一个与Apache独立的进程 单独进行。

3.CMS漏洞

关于cms,译名是“内容管理系统”,来有效解决用户网站建设与信息发布中常见的问题和需求。对网站内容管理是该软件的最大优势,它流程完善、功能丰富,可把稿件分门别类并授权给合法用户编辑管理,而不需要用户去理会那些难懂的SQL语法。(百度)

简单来说,这就是一个网站开发的工具。很多的网站都是通过cms进行搭建的,虽然功能强大,但只要出现漏洞,那么很多网站都会遭殃。需要及时的修补漏洞。

关于一个cms网站的渗透大致可以分为以下几个步骤(对于像我这种小白来说):

1、判断cms类型(可利用公开漏洞网站查询)

2、根据cms类型,搜索已知漏洞,搜集敏感信息(找到后台管理员入口,找到管理员账号、密码等)

3、上传一句话木马(getshell)

4、扩大战果(得到数据库,远程控制等)

web渗透之文件上传漏洞知识总结_第4张图片

4.编辑器漏洞

常见的一些编辑器: eWebEditor、 FCKeditor、 Cute Editor、......

编辑器利用:

  • 查找编辑器目录(通常在网站根目录、用户目录、管理员目录下)
  • 目录扫描:御剑等
  • 目录遍历
  • 蜘蛛爬行:AWVS、BP、菜刀

        常见的目录:

           editor、edit、upfile.asp、up.html、upimg.htm

   图片上传的目录:

                admin、editor(根据分析网站的编辑器得出)

   eweb的默认路径如下:

           uploadfile/时间戳.jpg

   fck默认的路径如下:

           userfile/images/x.jpg

漏洞利用:

  1.    百度相关编辑器的漏洞利用
  2.    site:站点 inurl:editor/
  3.    site:站点 inurl:fckeditor/
  4.    需要记得常见的编辑器的图片上传路径

编辑器手册: 编辑器漏洞手册 | NaviSec.it – 纳威安全导航

资料收集:

渗透测试学习 十六、 常见编辑器漏洞解析 - Yuuki丶 - 博客园

6.防范文件上传漏洞常见的几种方法

1、文件上传的目录设置为不可执行

只要web容器无法解析该目录下面的文件,即使攻击者上传了脚本文件,服务器本身也不会受到影响,因此这一点至关重要。

2、判断文件类型

在判断文件类型时,可以结合使用MIME Type、后缀检查等方式。在文件类型检查中,强烈推荐白名单方式,黑名单的方式已经无数次被证明是不可靠的。此外,对于图片的处理,可以使用压缩函数或者resize函数,在处理图片的同时破坏图片中可能包含的HTML代码。

3、使用随机数改写文件名和文件路径

文件上传如果要执行代码,则需要用户能够访问到这个文件。在某些环境中,用户能上传,但不能访问。如果应用了随机数改写了文件名和路径,将极大地增加攻击的成本。再来就是像shell.php.rar.rar和crossdomain.xml这种文件,都将因为重命名而无法攻击。

4、单独设置文件服务器的域名

由于浏览器同源策略的关系,一系列客户端攻击将失效,比如上传crossdomain.xml、上传包含Javascript的XSS利用等问题将得到解决。

文件上传漏洞详解 - FreeBuf网络安全行业门户

web渗透之文件上传漏洞知识总结_第5张图片

你可能感兴趣的:(安全学习日志,安全,web安全,渗透测试)