八大中间件介绍以及漏洞分析

admin 2023年10月23日22:32:16评论22 views字数 5949阅读19分49秒阅读模式

中间件是一种独立的系统软件服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

当然你也可以把它理解为一个桥梁或者调解者,它位于客户机和服务器之间,帮助它们进行通信和资源共享。就像一个桥梁连接两个岸边,中间件连接不同的技术和系统,使它们能够相互交流和合作
这里我一共总结了市面上流行和实战中常遇到的八大中间件以及目前还流行的漏洞进行分析,没有利用价值的或是利用条件太苛刻复杂,实战基本用不到的 没有进行编写和分析,下面我们开始分别进行介绍

1.IIS 端口号 80 加密443
互联网信息服务IIS是Microsoft公司提供的可扩展Web服务器,支持HTTP,HTTP/2,HTTPS,FTP,FTPS,SMTP和NNTP等。起初用于Windows NT系列,随后内置在Windows 2000、Windows XP Professional、Windows Server 2003和后续版本一起发行。
IIS目前只适用于Windows系统,不适用于其他操作系统。
 
1.知名PUT漏洞
IIS Server 在 Web 服务扩展中开启了 WebDAV ,配置了可以写入的权限,造成任意文件上传。
版本:IIS 6.0
2.解析漏洞
IIS 7.x版本在 Fast-CGI运行模式下,在任意文件后加上/.php,会解析为php文件。
 
3.短文件名 泄漏
漏洞影响版本:IIS 5.0-10.0全系列版本
由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息。
 
4.HTTP.SYS远程代码执行 蓝屏漏洞
存在于 HTTP 协议堆栈 (HTTP.sys) 中,当 HTTP.sys 未正确分析经特殊设计的 HTTP 请求时会导致此漏洞,成功利用此漏洞的攻击者可以在系统帐户的上下文中执行任意代码
影响范围
  1. Windows Server 2008 R2

  2. Windows 8

  3. Windows Server 2012

  4. Windows 8.1

  5. Windows Server 2012 R2

 
5.CVE-2017-7269 条件苛刻无意义
Windows server 2003 R2版本IIS6.0的WebDAV服务中的ScStorgPathFromUrl函数存在缓冲区溢出漏洞,远程攻击者通过以“if:
 
2.Nginx 端口号80
Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并且cpu、内存等资源消耗却非常低,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载不会因为某台服务器负载高宕机而某台服务器闲置的情况

1.后缀解析 文件名解析 CVE-2013-4547
用户配置不当造成的解析漏洞。由于nginx.conf配置导致nginx把以’.php’结尾的文件交给fastcgi处理, 任意文件名,在后面添加/xxx.php(xxx)为任意字符后,即可将文件作为php解析
 
2.CVE-2021-23017(明星漏洞)命令执行 无EXP有poc
影响范围 NGINX 0.6.18 – 1.20.0
漏洞原因:Nginx在处理DNS响应时候,当在配置文件中使用 “resolver ”指令时,远程攻击者可以通过伪造来自DNS服务器的UDP数据包,构造DNS响应造成1-byte内存覆盖,从而导致拒绝服务或任意代码执行,该漏洞仅在配置了一个或多个“resolver”指令的情况下存在,而默认情况下没有配置
 
3.CVE-2017-7529 整数溢出漏洞
影响范围:nginx 0.5.6 – 1.13.2全版本
当使用Nginx并且开启缓存功能时,攻击者可以构造特定header头字段,能越界读取到缓存文件的文件头信息。文件头信息中可能会包含Nginx代理站点的真实IP,造成敏感信息泄露
3.Apache 80
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中
 
Apache_log4j2(CVE-2021-44228) 组件漏洞
Log4j是一个基于Java的日志记录组件 被广泛应用于业务系统开发,用以记录程序输入输出日志信息。
影响版本:Apache Log4j2 2.0 – 2.15.0-rc1
漏洞原因:由于Log4j2组件在处理程序日志记录时存在JNDI注入缺陷,未经授权的攻击者利用该漏洞,可向目标服务器发送精心构造的恶意数据,触发Log4j2组件解析缺陷,实现目标服务器的任意代码执行,获得目标服务器权限
 
1.cve-2021-41773 目录穿越
影响版本 Apache HTTP Server 2.4.49
漏洞成因:版本引入了一个具有路径穿越漏洞的新函数,但需要配合穿越的目录配置 Require all granted,攻击者可利用该漏洞实现路径穿越从而读取任意文件,或者在配置了cgi的httpd程序中执行bash指令,从而有机会控制服务器。
2.cve-2021-42013 RCE
影响版本 :Apache HTTP Server 2.4.50 Apache HTTP Server 2.4.49
漏洞原因:该漏洞是因为对CVE-2021-41773的修复不够充分,攻击者可以使用路径遍历攻击将URL映射到由类似别名的指令配置的目录之外的文件。如果这些目录之外的文件不受通常的默认配置“要求全部拒绝”的保护,则这些文件会被访问到。攻击者可以利用此漏洞读取到Web目录之外的其他文件。
 
3.cve-2017-15715 文件解析
影响版本:Apache HTTPd 2.4.0~2.4.29
此漏洞的出现是由于apache在修复第一个后缀名解析漏洞时,用正则来匹配后缀。在解析php时xxx.phpx0A将被按照php后缀进行解析,导致绕过部分服务器的安全策略
4.cve-2021-37580 插件问题
Apache ShenYu()个异步的、跨语言的、多协议的高性能响应式API 网关,并可应用于所有微服务场景,由于ShenyuAdminBootstrap中JWT的错误使用,导致攻击者可以绕过身份验证,直接进入目标系统后台。
5.cve-2017-9788 内存破坏漏洞 实用性不高
 
6.cve-2018-11759 mod_jk访问控制的绕过 实用价值不高
 
4.Tomcat 8080
Tomcat 技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到部分软件开发者认可 成为比较流行的文本应用服务器
属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选
漏洞:
口令猜解 本身问题
配置不当导致后台弱口令 可通过上传jsp压缩包改名的zip拿shell
Tomcat有一个管理后台,用户名和密码是在Tomcat安装目录下的conftomcat-users.xml配置文件中,并且Tomcat是支持后台部署war,可以直接将webshell通过Tomcat部署到web目录下去,如果Tomcat的后台存在弱口令,那么可以直接getshelll。
 
1.CVE-2023-42795:Tomcat信息泄露漏洞(高危)
由于在请求https的时候可重定向到http连接,过程会导致会话劫持风险,造成Cookie或Session不安全传输,攻击者可利用该漏洞可在未授权的情况下泄漏 Cookie 或 Session,最终造成服务器敏感性信息泄露
影响范围 :11.0.0-M1 ≤ Apache Tomcat ≤ 11.0.0-M2 10.1.0-M1 ≤ Apache Tomcat ≤ 10.1.5 9.0.0-M1 ≤ Apache Tomcat ≤ 9.0.71 8.5.0 ≤ Apache Tomcat ≤ 8.5.85
2.CVE-2017-12615 文件上传
漏洞原因:当存在漏洞的Tomcat 运行在 Windows 主机上,且启用了HTTP PUT请求方法(例如,将 readonly 初始化参数由默认值设置为 false),攻击者将有可能可通过精心构造的攻击请求数据包向服务器上传包含任意代码的 JSP 的webshell文件,JSP文件中的恶意代码将能被服务器执行,导致服务器上的数据泄露或获取服务器权限
影响范围:Apache Tomcat 7.0.0 – 7.0.79
 
3.cve-2020-1938文件包含 需有上传后门
AJP 协议设计上存在缺陷,攻击者通过 Tomcat AJP Connector 可以读取或包含 Tomcat 上所有 webapp 目录下的任意文件
影响范围:Apache Tomcat 6 Apache Tomcat 7 < 7.0.100 Apache Tomcat 8 < 8.5.51 Apache Tomcat 9 < 9.0.31
 
4.cve-2020-11996 拒绝服务 一般 用不了
HTTP/2 请求的特制序列可能会在数秒内引发较高的 CPU 使用率,如果有足够数量的此类请求在并发 HTTP/2 连接上进行连接时,服务器可能无响应,即造成拒绝服务
 
5.cve2020-9484 反序列化 利用条件太苛刻 几乎遇不到
1.攻击者能够控制服务器上文件的内容和文件名称
2.服务器PersistenceManager配置中使用了FileStore
3.PersistenceManager中的sessionAttributeValueClassNameFilter被配置为“null”,或者过滤器不够严格,导致允许攻击者提供反序列化数据的对象
4.攻击者知道使用的FileStore存储位置到攻击者可控文件的相对路径
 
 
5.weblogic 7001
基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器
一般利用工具 weblogic漏洞扫描工具 weblogictooi
常用弱口令:参考四千个厂商默认登录账号密码
明星漏洞 Weblogic远程代码执行漏洞(CVE-2023-21839)
影响范围:Weblogic 12.2.1.3.0, 12.2.1.4.0, 14.1.1.0.0
该漏洞允许未经身份验证的攻击者通过IIOP协议网络访问并破坏易受攻击的WebLogic Server,成功的漏洞利用可导致WebLogic Server被攻击者接管,从而造成远程代码执行
6.Jenkins 8080
Jenkins是一种开源持续集成服务器,由Java编写,具有丰富的插件,自由组合足以支持许多业务开展,如持续集成和持续交付
持续集成(简称CI)是一种软件开发实践,旨在通过频繁地将开发人员的代码变更合并到主干代码库中,从而促进团队成员之间的协作和代码质量的保证。在持续集成中,开发人员通常会使用版本控制系统(如Git)将其代码变更提交到共享代码库,并自动触发构建和测试流程,以确保新的代码变更与现有代码的集成不会引入错误或导致系统崩溃。
持续交付(简称CD)则是在持续集成的基础上进一步扩展,旨在通过自动化的构建、测试和部署流程,将经过验证的软件交付到生产环境中。持续交付的目标是确保软件随时都处于可部署的状态,以便在需要时能够快速、可靠地发布新的功能或修复。
CI/CD通过自动化和频繁的集成、构建、测试和部署流程,有助于提高软件开发的效率和质量。它可以减少手动操作的错误和重复工作,提供及时的反馈,帮助开发团队更快地识别和解决问题,并快速交付高质量的软件产品。同时,CI/CD也为持续集成和持续交付提供了一致的流程和规范,促进团队的协作和沟通,加快软件交付的速度,并降低发布新功能或修复的风险。
如果你看不懂上面 没关系 举个栗子
CI/CD就像是在厨房里做菜的过程。CI是持续尝试和调整,以确保菜肴的味道和质量。CD则是将最终的菜肴交付给客人,涉及到流程的自动化和组织,以确保菜肴的一致性和及时性。通过CI/CD,开发团队可以频繁地集成和交付软件,快速发现和解决问题,并确保高质量的软件产品最终交付给用户。
知名漏洞:CVE-2023-27898 与 CVE-2023-27905
影响范围 :Jenkins服务器和更新中心,并被云安全公司Aqua统称为CorePlague。2.319.2之前所有版本的Jenkins都存在这个漏洞并可被利用。
漏洞原因:DOM-XSS漏洞。该漏洞是由于在呈现插件版本与Jenkins plugin manager版本不兼容的错误信息时没有进行转义,攻击者可向Jenkins实例中配置的更新站点提供插件,当Jenkins实例加载插件时,错误信息处的JavaScript代码便会被浏览器执行。 
7.jetty 端口 8080
Jetty 是一个开源的servlet 引擎,它为基于Java的web容器,例如JSP和servlet提供运行环境,API以一组JAR包的形式发布
Servlet引擎 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页,主要作用:接收请求:解码请求:处理请求:格式化响应:发送响应:
Jetty信息泄露漏洞(CVE-2023-26049)
Jetty 中的非标准 cookie 解析可能允许攻击者在其他 cookie 中走私 cookie,或者通过篡改 cookie 解析机制来执行意外行为
 
Jetty 安全漏洞(CVE-2022-2048)
漏洞影响:Eclipse Jetty 9.4.46及之前版本、10.0.9 及之前版本、11.0.9及之前版本
漏洞原因:漏洞源于无效的 HTTP/2 请求可能占用连接导致拒绝服务
 
8.glassFish 4848
glassFish是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。开发者可以免费获得源代码,还可以对代码进行更改
任意文件读取漏洞(CVE-2017-1000028)
影响范围:GlassFish Server Open Source Edition 4.1版本
漏洞成因:能够读取服务器任意文件,包括读取包含敏感信息(如数据库连接密码等),攻击者有可能通过敏感信息访问核心数据,包括窃取,修复,破坏等操作,甚至是进一步获取服务器控制权限
以上便是分析的目前常见的八大中间件以及漏洞,有不足之处还望私信


原文始发于微信公众号(安全客):八大中间件介绍以及漏洞分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年10月23日22:32:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   八大中间件介绍以及漏洞分析http://cn-sec.com/archives/2138421.html

发表评论

匿名网友 填写信息