A Denial of Service (DoS) vulnerability exists in the jaraco/zipp library, affecting all versions prior to 3.19.1. The vulnerability is triggered when processing a specially crafted zip file that leads to an infinite loop. This issue also impacts the zipfile module of CPython, as features from the third-party zipp library are later merged into CPython, and the affected code is identical in both projects. The infinite loop can be initiated through the use of functions affecting the Path
module in both zipp and zipfile, such as joinpath
, the overloaded division operator, and iterdir
. Although the infinite loop is not resource exhaustive, it prevents the application from responding. The vulnerability was addressed in version 3.19.1 of jaraco/zipp.
The product does not properly control the allocation and maintenance of a limited resource.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Red Hat Ansible Automation Platform 2.4 for RHEL 8 | RedHat | python3x-zipp-0:3.19.2-1.el8ap | * |
Red Hat Ansible Automation Platform 2.4 for RHEL 9 | RedHat | python-zipp-0:3.19.2-1.el9ap | * |
Red Hat OpenShift Container Platform 4.16 | RedHat | python-zipp-0:3.19.1-1.el9 | * |
Red Hat OpenShift Container Platform 4.17 | RedHat | python-zipp-0:3.19.1-1.el9 | * |
Red Hat OpenStack Platform 17.1 for RHEL 9 | RedHat | python-zipp-0:3.4.0-3.el9ost | * |
Red Hat Satellite 6.16 for RHEL 8 | RedHat | python-zipp-0:3.20.2-1.el8pc | * |
Red Hat Satellite 6.16 for RHEL 8 | RedHat | python-zipp-0:3.20.2-1.el8pc | * |
Red Hat Satellite 6.16 for RHEL 9 | RedHat | python-zipp-0:3.20.2-1.el9pc | * |
Red Hat Satellite 6.16 for RHEL 9 | RedHat | python-zipp-0:3.20.2-1.el9pc | * |
Python-zipp | Ubuntu | esm-infra/focal | * |
Python-zipp | Ubuntu | focal | * |
Python-zipp | Ubuntu | jammy | * |
Python-zipp | Ubuntu | mantic | * |
Python-zipp | Ubuntu | noble | * |
Python-zipp | Ubuntu | upstream | * |
Mitigation of resource exhaustion attacks requires that the target system either:
The first of these solutions is an issue in itself though, since it may allow attackers to prevent the use of the system by a particular valid user. If the attacker impersonates the valid user, they may be able to prevent the user from accessing the server in question.
The second solution is simply difficult to effectively institute – and even when properly done, it does not provide a full solution. It simply makes the attack require more resources on the part of the attacker.