文件上传_解析漏洞
作者:@星火不辍
本文为作者原创,转载请注明出处:https://www.cnblogs.com/buchuo/p/12691900.html
文件解析漏洞是将静态文件错误的解析为动态文件的漏洞
1.IIS/Nginx + PHP fashcgi取值错误解析漏洞(配置错误)
开启了cgi.fix_pathinfo,如果开启以后,所执行文件不存在,会继续查找上一级文件是否存在。
index.php/id/2
并且未设置security.limit_extensions,该选项限制可以执行的文件类型
示例:abcde.jpg/.php
2.Nginx文件名逻辑漏洞(CVE-2013-4547)
影响版本:Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7
上传一个以空格(%20)为结尾的文件,例如“abcde.jpg ”
当访问abcde.jpg%20%00.php时,会将刚刚上传的文件,当做PHP进行执行
一般的php匹配正则: .php$
存在漏洞时,Nginx将abcde.jpg%20当做了脚本文件名
3.Apache解析漏洞(配置错误)
如果在Apache的conf文件中有如下配置
AddHandler application/x-httpd-php .php
则abcde.php.jpg也会被当做php去执行
如果在.htaccess中有如下配置,可以将扩展名.xxx当做php执行
AddType application/x-httpd-php xxx
4.IIS 5.x/6.0解析漏洞
(1)上传文件名:abcde.asp;.jpg
服务器默认不解析;后面的内容,因此文件被当做asp文件解析
(2)向xxx.asp目录下面上传abcde.jpg
服务器会将xxx.asp目录下的文件都当做asp文件解析
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用