上传漏洞

作者: _return_ | 来源:发表于2018-05-14 11:39 被阅读64次
文件上传简介:

为了让用户将文件上传到网站,就像是给危机服务器的恶意用户打开了另一扇门。即便如此,在今天的现代互联网的Web应用程序,它是一种常见的要求,因为它有助于提高业务效率。企业支持门户,给用户各企业员工有效地共享文件。允许用户上传图片,视频,头像和许多其他类型的文件。向用户提供的功能越多,Web应用受到攻击的风险和机会就越大,这种功能会被恶意用户利用,获得到一个特定网站的权限,或危及服务器的可能性是非常高的。

WebShell

就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称之为一种网页后门。攻击者在入侵了一个网站后,通常会将这些asp或php后门文件与网站服务器web目录下正常的网页文件混在一起,然后使用浏览器来访问这些后门,得到一个命令执行环境,以达到控制网站服务器的目的(可以上传下载或者修改文件,操作数据库,执行任意命令等)。

WebShell后门隐蔽较性高,可以轻松穿越防火墙,访问WebShell时不会留下系统日志,只会在网站的web日志中留下一些数据提交记录,没有经验的管理员不容易发现入侵痕迹。攻击者可以将WebShell隐藏在正常文件中并修改文件时间增强隐蔽性,也可以采用一些函数对WebShell进行编码或者拼接以规避检测。除此之外,通过一句话木马的小马来提交功能更强大的大马可以更容易通过应用本身的检测。<?php eval($_POST[a]); ?>就是一个最常见最原始的小马,以此为基础也涌现了很多变种,如<script language="php">eval($_POST[a]);</script>等。

存在漏洞与webshell
  • 上传文件的时候,如果服务器脚本语言,未对上传的文件进行严格的验证和过滤,就容易造成上传任意文件,包括上传脚本文件。

  • 如果是正常的PHP文件,对服务器则没有任何危害。

  • PHP可以像其他的编程语言一样,可以查看目录下的文件,查看文件中的内容,可以执行系统命令等。

  • 上传文件的时候,如果服务器端脚本语言,未对上传的文件进行严格的验证和过滤,就有可能上传恶意的PHP文件,从而控制整个网站,甚至是服务器。这个恶意的PHP文件,又被称为WebShell。

效果
  • 上传文件是病毒或者木马时,主要用于诱骗用户或者管理员下载执行或者直接自动运行;

  • 上传文件是WebShell时,攻击者可通过这些网页后门执行命令并控制服务器;

  • 上传文件是其他恶意脚本时,攻击者可直接执行脚本进行攻击;

  • 上传文件是恶意图片时,图片中可能包含了脚本,加载或者点击这些图片时脚本会悄无声息的执行;

  • 上传文件是伪装成正常后缀的恶意脚本时,攻击者可借助本地文件包含漏洞(Local File Include)执行该文件。如将bad.php文件改名为bad.doc上传到服务器,再通过PHP的include,include_once,require,require_once等函数包含执行。

造成恶意上传的原因
一、客户端检测

程序员使用JavaScript来拒绝非法文件上传。
绕过方法:
FireBug插件:将用于检验文件扩展名的onsubmit事件删除。
中间人攻击:使用Burp Suite。首先把木马扩展名改为一张正常图片的扩展名,比如JPG扩展名,在上传时使用Burp Suite拦截上传数据,再将其中的扩展名JPG修改为PHP,就可以绕过客户端验证。(可能还需要相应地修改Content-Length)
任何客户端验证都是不安全的。客户端验证是防止用户输入错误,减少服务器开销,而服务器端验证才可以真正防御攻击者。

二、服务器端检测

2.1 白名单与黑名单验证
黑名单过滤方法:定义不允许上传的文件扩展名
黑名单的绕过方法:1.攻击者可以从黑名单中找到Web开发人员忽略的扩展名,如:cer
2.对文件的后缀名进行大小写转换,比如黑名单中有php,可以将文件的后缀改为pHp,仅限windows平台
3.在windows系统下,如果文件名以“.”或者空格作为结尾,系统会自动删除“.”与空格,利用此特性也可以绕过黑名单验证。(asp.或asp_)
白名单过滤方法:定义允许上传的文件扩展名
白名单的绕过方法:结合Web容器的解析漏洞

2.2 MIME验证
php中通过$_FILE['file']['type']来检验
绕过方法:可以在Burp Suite中更改Content-Type的内容为image/jpeg

以上,仅仅是简单的原理描述,至于实战,一无所知。具体的操作,实战的工具,步骤,遇上再更。

就别提问了,反正不会......

相关文章

  • 2018-08-10 web渗透(完)

    今天主要学习的是文件上传漏洞和xss漏洞 文件上传漏洞 【漏洞描述】 文件上传漏洞是指网络攻击者上传了一个可执行的...

  • 文件上传(upload-labs详细全解)

    文件上传漏洞 常见的漏洞分类服务器配置不当导致文件上传开源编辑器存在上传漏洞本地文件上传限制可以上传被绕过服务器端...

  • 文件上传下载中的安全问题

    上传漏洞 目录遍历

  • 上传漏洞

    Webshell 文件上传漏洞 WebShell是利用asp或php等语言编写的基于web的木马后门,通过webs...

  • 上传漏洞

    文件上传简介: 为了让用户将文件上传到网站,就像是给危机服务器的恶意用户打开了另一扇门。即便如此,在今天的现代互联...

  • 上传漏洞

    转载自公众号:newdooneSec 以下是斗哥总结的一部分上传漏洞的场景,如果你有积累别的上传绕过姿势也可以和斗...

  • 文件上传漏洞

    文件上传漏洞 权限 漏洞分类 利用条件 漏洞挖掘 常见可执行文件后缀

  • 【漏洞复现】CVE-2017-12615 Tomcat任意文件上

    0x01 漏洞复现 本次复现的漏洞如题,是一个任意文件文件上传漏洞,但是此处的上传不需要页面有一个上传功能的界面,...

  • web安全(五)上传漏洞(一)

    只要web应用程序允许上传文件就有可能存在文件上传漏洞。那么如何确认web应用程序是否存在上传漏洞?比如:我...

  • 中间件漏洞总结报告

    中间件漏洞总结报告 一、 IIS解析漏洞 首先一般文件解析漏洞用于各种上传漏洞中,在文件上传的地方一般会限制用户上...

网友评论

本文标题:上传漏洞

本文链接:https://www.haomeiwen.com/subject/wcjqdftx.html