【学习笔记】文件上传漏洞--中间件解析漏洞、编辑器安全

目录

一、IIS

[二、Apache HTTP Server](#二、Apache HTTP Server)

[三、Apache HTTPD 未知后缀解析漏洞](#三、Apache HTTPD 未知后缀解析漏洞)

[四、Apache HTTPD 换行解析漏洞](#四、Apache HTTPD 换行解析漏洞)

五、黑、白名单

六、nginx解析漏洞

七、编辑器漏洞


一、IIS

文件夹

正常:image/qq.jpg

执行:image.asp/qq.jpg

qq.jpg就会被当做asp解析执行

文件

正常:image.jpg

执行:image.asp;jpg或image.asp;image.jpg

image.jpg 就会被当做asp解析执行

asp可以换做php,如果换了php,那么就当php执行

详细操作:"文件上传"配合中间件"解析漏洞"

二、Apache HTTP Server

Apache HTTP Server ,通常简称为 Apachehttpd,是由 Apache 软件基金会开发和维护的一个开源的网页服务器软件。它是全球使用最广泛的 Web 服务器之一,能够在几乎所有的计算机平台上运行,包括各种 Unix 系统、Linux 系统和大多数 Windows 平台。

三、Apache HTTPD 未知后缀解析漏洞

Apache HTTPD不安全的配置导致未知后缀解析漏洞

Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。比如,如下配置文件:

复制代码
AddType text/html .html
AddLanguage zh-CN .cn

其给.html后缀增加了media-type,值为text/html给.cn后缀增加了语言,值为zh-CN此时,如果用户请求文件index.cn.html,他将返回一个中文的html页面。

以上就是Apache多后缀的特性。如果运维人员给.php后缀增加了处理器:

复制代码
AddHandler application/x-httpd-php .php

那么,在有多个后缀的情况下,只要一个文件含有**.php**后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。

即:xxx.php.jpg会被当做php文件解析。

Apache HTTPD 未知后缀解析漏洞复现

四、Apache HTTPD 换行解析漏洞

Apache在2.4.0-2.4.29版本中存在一个解析漏洞。程序在解析PHP时,如果文件名最后有一个换行符x0A,apache依然会将其当成php解析,但是在上传文件时可以成功的绕过黑名单。(如果上传文件的php程序是设置的白名单,那么这个漏洞将无法利用。)

详细操作:Apache HTTPD 换行解析漏洞复现

五、黑、白名单

白名单黑名单是两种常用的网络安全措施。

白名单是一种安全程序,它限制用户只能访问网络所有者定义的受信任内容。而黑名单则会阻止特定的网站、用户和应用程序。

白名单是以「正向表列」的方式允许某些行为;黑名单则是以「负面表列」的方式禁止某些行为。因此,白名单又称为「通行名单」,而黑名单又称为「阻挡名单」。

凡是涉及到网络控制的各种机制,都会应用到白名单和黑名单规则。这些规则都能保护您免受恶意软件、病毒、电子邮件、IP地址、网站的攻击。

六、nginx解析漏洞

这个漏洞其实是由php.ini中cgi.fix pathinfo选项与php-fpm的配置一起导致的,防范的话,只需在php-fpm配置文件中设置security.limit_extensions=.php,重启一下服务即可。

该漏洞与nginx、php版本无关,属于用户配置不当造成的解析漏洞。

详细操作:Nginx解析漏洞分析:环境配置、复现与防范策略

七、编辑器漏洞

编辑器目录:ewebeditor、Ueditor、kindeditor、Fckeditor

各类编辑器漏洞:常见编辑器漏洞汇总

相关推荐
weixin_514221852 小时前
FDTD与matlab、python耦合
python·学习·matlab·fdtd
递归不收敛3 小时前
吴恩达机器学习课程(PyTorch 适配)学习笔记大纲
pytorch·学习·机器学习
不太可爱的叶某人4 小时前
【学习笔记】kafka权威指南——第10章 监控kafka (7-10章只做了解)
笔记·学习·kafka
张人玉5 小时前
C# TCP 客户端开发笔记(TcpClient)
笔记·tcp/ip·c#
递归不收敛6 小时前
吴恩达机器学习课程(PyTorch适配)学习笔记:2.4 激活函数与多类别处理
pytorch·学习·机器学习
加油20196 小时前
如何快速学习一个网络协议?
网络·网络协议·学习·方法论
A9better7 小时前
嵌入式开发学习日志36——stm32之USART串口通信前述
stm32·单片机·嵌入式硬件·学习
不太可爱的叶某人7 小时前
【学习笔记】kafka权威指南——第6章 可靠的数据传递
笔记·学习·kafka
研猛男9 小时前
0、FreeRTOS编码和命名规则
笔记·stm32·freertos
2301_7909949910 小时前
仿神秘海域/美末环境交互的程序化动画学习
学习·microsoft·交互