Описание
ProxySQL is a proxy for MySQL and its forks, as well as PostgreSQL. In versions 2.0.0 through 3.0.8, the ProxySQL MySQL frontend accepts the PROXY UNKNOWN <addr> <addr> <port> <port>\r\n PP1 frame as a well-formed PROXY protocol header. The HAProxy PROXY protocol v1 specification says that when the protocol token is UNKNOWN, the receiver MUST ignore any address fields that follow it, because the proxy has declared it cannot determine the client identity. ProxySQL parses those address fields anyway via sscanf and writes the spoofed source address into the session's addr.addr field. From there it flows directly into the query-rule matcher, where the client_addr predicate decides routing and ACL. When mysql-proxy_protocol_networks = '*' (the default), any TCP peer can send a PP1 frame and choose any source IP claim. With that, any mysql_query_rules row pinned to a client_addr value is forgeable: the attacker writes the address they want to match into the PP1 line, and Prox
EPSS
10 Critical
CVSS3
Дефекты
Связанные уязвимости
ProxySQL is a proxy for MySQL and its forks, as well as PostgreSQL. In ...
Уязвимость реализации протокола PROXY прокси-сервера для баз данных ProxySQL, позволяющая нарушителю обойти ограничения безопасности и получить доступ на чтение и изменение данных
EPSS
10 Critical
CVSS3