Bjørn Erik Pedersen
79f030be5b
config/security: Add "! " negation to Whitelist, harden default http.urls
...
Whitelist now treats any pattern prefixed with "! " (the same negation
prefix used by hglob/predicate) as a deny rule. Deny matches take
precedence over allow, and a whitelist made up exclusively of deny
rules implicitly allows everything it does not deny.
The default security.http.urls now reads:
urls = ['(?i)^https?://[a-z]', '! (?i)localhost', '! @']
i.e. allow URLs whose host starts with a letter (the common
"https://example.com " shape), deny anything that looks like localhost,
and deny URLs with userinfo to foil "http://user@127.0.0.1/ " bypasses.
Public IP literals are collateral blocks; users who need them (or their
own private hosts) override security.http.urls as before, mixing allow
and deny rules with the same "! " prefix, e.g.
[security.http]
urls = ['.*', '! ^https?://evil\.example\.com']
Fixes #14792
2026-04-22 20:15:19 +02:00
..
2026-03-07 18:30:42 +01:00
2026-04-22 15:47:34 +02:00
2026-03-28 21:32:28 +01:00
2025-11-05 20:39:25 +01:00
2026-01-22 12:03:02 +01:00
2026-01-16 11:47:46 +01:00
2026-04-15 20:34:34 +02:00
2023-05-20 20:16:45 +02:00
2022-02-23 22:43:19 +01:00
2026-01-23 18:53:32 +01:00
2025-12-20 13:42:21 +01:00
2026-02-08 17:35:32 +01:00
2026-01-10 15:34:51 +01:00
2024-01-27 16:28:14 +01:00
2026-04-07 13:58:06 +02:00
2023-05-16 18:01:29 +02:00
2025-11-05 20:39:25 +01:00
2025-11-27 12:08:08 +01:00
2026-04-03 21:17:45 +02:00
2026-02-12 13:50:37 +01:00
2025-11-27 12:00:15 +01:00
2025-04-27 13:18:43 +02:00
2026-04-20 18:33:59 +02:00
2026-02-20 21:23:20 +01:00
2026-02-20 21:23:20 +01:00
2026-04-14 16:33:38 +02:00
2026-04-03 21:17:45 +02:00
2026-04-14 16:33:38 +02:00
2025-11-27 12:00:15 +01:00
2026-03-21 19:09:14 +01:00
2026-03-21 19:09:14 +01:00
2026-02-23 12:22:39 +01:00
2026-01-26 22:45:16 +01:00
2019-08-12 13:26:32 +02:00
2025-11-05 20:39:25 +01:00
2026-04-03 21:17:45 +02:00
2026-02-25 14:26:50 +01:00
2026-02-25 14:26:50 +01:00
2026-03-21 19:09:14 +01:00
2026-03-07 18:30:42 +01:00
2026-03-07 18:30:42 +01:00
2026-03-21 19:09:14 +01:00
2026-03-18 08:47:26 +01:00
2026-04-20 18:33:59 +02:00
2026-04-07 13:58:06 +02:00
2026-04-03 21:17:45 +02:00
2026-04-22 15:47:34 +02:00
2026-04-07 13:58:06 +02:00
2026-03-08 21:43:37 +01:00
2026-02-25 17:35:20 +01:00
2025-11-27 12:00:15 +01:00
2026-03-21 19:09:14 +01:00
2026-02-17 19:10:47 +01:00
2026-04-07 22:05:42 +02:00
2025-11-05 20:39:25 +01:00
2026-04-03 21:17:45 +02:00
2025-11-05 20:39:25 +01:00
2025-11-27 12:00:15 +01:00
2026-03-15 10:17:45 +01:00
2025-11-05 20:39:25 +01:00
2026-01-23 18:52:35 +01:00
2024-01-27 16:28:14 +01:00
2026-04-19 19:45:45 +02:00
2026-04-04 14:53:20 +02:00
2026-02-12 19:33:58 +01:00
2025-11-05 20:39:25 +01:00
2025-11-25 11:37:05 +01:00
2023-07-28 15:14:23 +02:00
2025-11-27 12:00:15 +01:00
2026-04-03 21:17:45 +02:00
2022-03-17 22:03:27 +01:00
2024-01-27 16:28:14 +01:00
2026-03-15 18:32:41 +01:00
2026-04-03 21:17:45 +02:00
2026-04-03 21:17:45 +02:00
2025-11-05 20:39:25 +01:00
2025-11-05 20:39:25 +01:00
2025-11-27 12:00:15 +01:00
2026-03-07 18:30:42 +01:00
2026-03-07 18:30:42 +01:00
2026-04-07 13:58:06 +02:00
2020-12-03 13:12:58 +01:00
2023-05-16 18:01:29 +02:00
2026-04-08 13:19:45 +02:00
2026-04-07 22:05:42 +02:00
2026-04-03 21:17:45 +02:00
2026-04-22 20:15:19 +02:00
2025-11-10 12:00:58 +01:00
2025-11-27 12:00:15 +01:00
2026-04-22 20:15:19 +02:00
2024-11-03 13:33:31 +01:00
2025-11-18 19:17:15 +01:00
2026-04-04 14:53:20 +02:00
2026-03-15 18:32:41 +01:00
2025-11-27 12:00:15 +01:00
2025-11-05 20:39:25 +01:00
2026-02-18 14:34:47 +01:00
2026-03-07 18:30:42 +01:00
2026-04-03 21:17:45 +02:00
2025-11-27 12:00:15 +01:00
2026-04-04 14:53:20 +02:00
2025-11-27 12:00:15 +01:00
2025-11-27 12:00:15 +01:00
2026-03-07 18:30:42 +01:00
2026-04-03 21:17:45 +02:00