Benoit Chesneau 112d5353c1 fix: enforce proxy_allow_ips and tighten PROXY parsing in ASGI
Three findings against the ASGI PROXY protocol path:

- High: an untrusted peer could send a PROXY v1/v2 header and have the
  client address surfaced to the app. _setup_callback_parser now passes
  proxy_protocol='off' to the parser when the peer is not in
  proxy_allow_ips. _effective_peername adds a defensive re-check.
- Medium: PROXY v1 TCP4/TCP6 addresses were copied as strings without
  validation. Validate with socket.inet_pton, mirroring the WSGI parser.
- Medium: PROXY v2 quietly mapped non-STREAM (DGRAM) protocols to
  UDP4/UDP6. gunicorn is an HTTP server; reject non-STREAM with
  InvalidProxyHeader, mirroring the WSGI parser.
2026-05-03 22:28:48 +02:00
..
2010-06-03 16:11:18 -04:00
2026-02-06 08:21:18 +01:00
2010-06-03 16:11:18 -04:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2010-06-03 16:11:18 -04:00
2026-02-06 08:21:18 +01:00
2010-06-03 16:11:18 -04:00
2026-02-06 08:21:18 +01:00
2012-02-20 09:56:06 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2012-09-27 19:14:40 +02:00
2026-02-06 08:21:18 +01:00
2012-09-27 19:14:40 +02:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2016-11-04 21:16:01 +03:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2019-11-18 19:44:01 -05:00
2026-02-06 08:21:18 +01:00
2019-11-18 21:16:12 -05:00
2026-02-06 08:21:18 +01:00
2023-05-30 20:42:13 -05:00
2026-02-06 08:21:18 +01:00
2023-05-30 20:42:13 -05:00
2026-02-06 08:21:18 +01:00
2023-05-30 20:42:13 -05:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2012-09-27 19:14:40 +02:00
2026-02-06 08:21:18 +01:00
2012-09-27 19:14:40 +02:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2026-02-06 08:21:18 +01:00
2023-12-15 13:33:31 +01:00
2026-02-06 08:21:18 +01:00
2023-12-15 13:33:31 +01:00
2026-02-06 08:21:18 +01:00
2023-12-15 13:33:31 +01:00
2026-02-06 08:21:18 +01:00