01.啥子是文件上传漏洞

文件上传漏洞实在是难以简单进行表述,这里请了ai小姐姐帮忙~~

文件上传漏洞是一种高危漏洞,它发生在应用程序允许用户上传文件到服务器时,但没有对这些文件进行适当的验证或限制。攻击者可以利用这种漏洞上传恶意文件,比如脚本文件(如PHP、JSP等),一旦上传成功并且能够被执行,攻击者就可能获取服务器的控制权或者泄露敏感信息。

一般来讲,文件上传是为了,直接获得对方权限之类的,所以开发者也会很关注这个问题,会给出很多的屏蔽方式。

有时也不是完全为了,也可能是进一步渗透的前置条件,比如夹杂js代码的pdf文件用来获取,或者传入极其庞大的文件造成服务器过载,或者传入指定的文件造成文件覆盖。。。

【所以不必在意是否可以传入木马,有时候传入点奇怪的东西会有意外收获】

02.常见限制策略

文件后缀名,MIME,文件内容(文件头,文件关键词php,jsp等)

一些简单的绕过:

01.js前端检测:

这个就很简单了,禁用js就好了,或者直接给他改了…

var ext_name = file.substring(file.lastIndexOf("."));//提取上传文件的类型var allow_ext = ".jpg|.png|.gif";//定义允许上传的文件类型

02.后缀绕过:

开发者是知道哪些文件后缀会存在危险的,他们会限制很多后缀名,就好像一个上传头像的互动点,为什么要给你上传php文件的可能呢?

但很多时候,开发者使用的第三方插件或者模板会开放一些危险的后缀名,或者配置存在错误,会把其他后缀名的文件当作其他后缀的文件进行打开【txt被当作php执行等。。。】

下面是一些可能会被当作php执行的文件名:

php3 php5 phtml pht。。。

实际上这种很少见,更多的是自己构造后缀名进行绕过。

03.覆盖文件,改变文件的打开方式:

例:

<FilesMatch "abc">SetHandler application/x-httpd-php

将名为abc的文件作为php文件运行AddType application/x-httped-php .txt .jpg将所有的txt jpg文件当作php运行

这个相当于覆盖了对方的配置文件,平时不要尝试…

【同时部分网站不依赖这个配置】

04.user.ini文件【这个相对会广泛一点】:

新建一个文件名为.user.ini的文件,并将内容写为:

=test.txt

将.user.ini上传至服务器

新建一个文件名为test.txt的文件,并将内容写为:

或者

上传之后一般会可以成功解析

05.结尾后缀绕过:

使用. 或者 “空格”

开发者设计的检测策略会识别整个传入的字符串,然后再进行识别过滤

使用一些奇怪的后缀进行结尾,概率会绕过这些识别策略,使得文件成功上传。

当然系统自己存在着文件命名的规范问题,在保存文件时会自己删除掉文件后缀最后的,不规范的空格和点,使得文件正常上传。

::$DATA 这也是自己存在的问题,当处理文件名的时候,假若文件名是::$DATA,系统会把后缀之后的数据当作文件流进行处理,从而绕过。

06.zip类文件自动解压:

有时候php发现可以解压的文件名的时候,会自动进行解压。

这种方式不仅方便文件名后缀绕过,文件内容也是压缩的,更难被识别出来。

07.文件头特点绕过:

这是标准的gif文件头,其他的文件头都有可能是存在随机性质的,gif的文件头却是明确的,稳定的,这使得它成了一个优秀的工具。

08.文件内容识别绕过:

一般来讲开发者会识别例如:

php eval exec 之类的敏感文件内容

有时候需要使用有趣的加密或者分割进行绕过。

比如下面这个也是一个可以运行的php代码…

<?=eval($_POST[123]);?>

编程很神奇吧~~

这里也可以把之前xss的绕过方式拿过来

换行,大小写,另类的文字,假注释之类的。。。

—————————————————–

好了,今天就到这里,辛苦大佬观看。

麻烦各位大佬指点,week给大佬趴下了。

加入IP合伙人(站长加盟) | 全面包装你的品牌,搭建一个全自动交付的网赚资源独立站 | 晴天实测8个月运营已稳定月入3W+
限时特惠:本站每日持续更新海量内部创业教程,一年会员只需98元,全站资源免费无限制下载点击查看会员权益

站长微信: qtw123cn

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注