Описание
Integer overflow in the packet buffer growth logic in PgBouncer through 1.25.2 allows an unauthenticated remote attacker to cause a denial of service. Sufficiently large input makes the buffer size computation overflow, leaving the growth loop unable to terminate. Because PgBouncer serves all clients from a single process, this saturates a CPU core and stalls every pooled connection until the process is killed. Both unauthenticated and authenticated code paths can reach the overflow.
A flaw was found in PgBouncer. An unauthenticated remote attacker can exploit an integer overflow in the packet buffer growth logic by providing sufficiently large input. This causes the buffer size computation to overflow, leading to an infinite loop. As a result, a CPU core is saturated, and all pooled connections are stalled, causing a Denial of Service.
Отчет
This vulnerability is rated as Important severity because unauthenticated remote attackers can induce an infinite execution loop, exhausting CPU resources and completely halting connection pooling for all clients. In typical Red Hat deployments, PgBouncer operates as an intermediary connection pooler directly accessible by client applications, leaving its listener exposed to network traffic prior to authentication. Because PgBouncer handles client sessions within a single event loop process, stalling this execution thread disrupts database availability across the entire instance without requiring credentials.
Меры по смягчению последствий
To mitigate this issue, restrict network access to the PgBouncer service to only trusted clients or the local host. This can be achieved by configuring firewall rules to limit incoming connections to the PgBouncer port. Ensure that any changes to network configurations are applied and services are reloaded or restarted as necessary, which may temporarily disrupt existing connections.
Дополнительная информация
Статус:
EPSS
7.5 High
CVSS3
Связанные уязвимости
Integer overflow in the packet buffer growth logic in PgBouncer through 1.25.2 allows an unauthenticated remote attacker to cause a denial of service. Sufficiently large input makes the buffer size computation overflow, leaving the growth loop unable to terminate. Because PgBouncer serves all clients from a single process, this saturates a CPU core and stalls every pooled connection until the process is killed. Both unauthenticated and authenticated code paths can reach the overflow.
Integer overflow in the packet buffer growth logic in PgBouncer through 1.25.2 allows an unauthenticated remote attacker to cause a denial of service. Sufficiently large input makes the buffer size computation overflow, leaving the growth loop unable to terminate. Because PgBouncer serves all clients from a single process, this saturates a CPU core and stalls every pooled connection until the process is killed. Both unauthenticated and authenticated code paths can reach the overflow.
Integer overflow causes an infinite loop in packet buffer growth in PgBouncer
Integer overflow in the packet buffer growth logic in PgBouncer throug ...
Integer overflow in the packet buffer growth logic in PgBouncer through 1.25.2 allows an unauthenticated remote attacker to cause a denial of service. Sufficiently large input makes the buffer size computation overflow, leaving the growth loop unable to terminate. Because PgBouncer serves all clients from a single process, this saturates a CPU core and stalls every pooled connection until the process is killed. Both unauthenticated and authenticated code paths can reach the overflow.
EPSS
7.5 High
CVSS3