Linus Rath
6ff94d439e
fix: pin Lite pages to their own inline scripts and guard the Stalwart bundle
...
The static export's header policy has to allow inline scripts (the
hydration scripts differ per page and one header cannot list them all),
so any injected inline script ran. The Stalwart bundle had no policy at
all: Stalwart sends no security headers for an Application, and nothing
stopped another site from framing it.
- Postbuild gives every page of the static target a `<meta>` CSP that
allows exactly the page's own inline scripts; enforced together with
the host's header, it takes away `'unsafe-inline'`. `verify` fails a
page whose inline scripts are not all pinned.
- The Stalwart entry document carries a `<meta>` CSP (no plugins, eval,
foreign scripts or moved `<base>`; its shells are rewritten at runtime,
so hashes are not possible there) and refuses to run inside a frame
of another origin.
- The nginx and Caddy examples send the same CSP as `_headers`.
2026-09-26 17:27:00 +02:00
..
2026-09-26 17:27:00 +02:00
2026-09-26 17:03:24 +02:00
2026-09-26 17:15:55 +02:00
2026-09-20 19:59:37 +02:00
2026-09-26 14:30:19 +02:00
2026-09-22 21:04:18 +02:00
2026-09-26 16:34:58 +02:00
2026-09-26 16:06:28 +02:00
2026-09-26 15:13:41 +02:00
2026-09-26 16:47:29 +02:00
2026-08-06 16:47:20 +02:00
2026-09-26 16:27:03 +02:00
2026-09-26 16:32:38 +02:00
2026-09-26 14:56:01 +02:00
2026-09-26 14:59:55 +02:00
2026-09-26 15:15:23 +02:00
2026-08-29 12:46:39 +02:00
2026-08-25 19:16:20 +02:00
2026-09-26 16:40:46 +02:00
2026-09-26 15:34:13 +02:00
2026-09-10 10:14:25 +02:00
2026-09-10 10:45:45 +02:00
2026-06-19 12:31:07 +02:00
2026-09-19 00:53:53 +02:00
2026-09-19 13:01:07 +02:00
2026-07-07 23:26:36 +02:00
2026-08-16 21:18:57 +02:00
2026-09-03 22:12:15 -07:00
2026-08-29 11:03:48 +02:00
2026-04-21 17:42:52 +02:00
2026-04-16 16:54:09 +02:00
2026-09-07 16:48:26 +08:00
2026-09-09 18:27:01 +02:00
2026-09-09 16:38:55 +02:00
2026-08-25 18:50:50 +02:00
2026-02-17 01:09:57 +01:00
2026-04-12 01:10:28 +02:00
2026-09-01 20:55:13 +02:00
2026-09-26 16:12:20 +02:00
2026-09-17 21:42:16 +02:00
2026-09-21 20:52:02 +02:00
2026-08-31 20:41:45 +02:00
2026-09-26 15:48:27 +02:00
2026-08-25 19:36:04 +02:00
2026-09-23 19:41:44 +02:00
2026-09-26 14:13:33 +02:00
2026-09-26 15:11:46 +02:00
2026-06-25 01:04:26 +02:00
2026-05-06 20:07:36 +02:00
2026-05-22 15:22:33 +02:00
2026-08-20 16:49:31 +02:00
2026-09-22 20:54:01 +02:00
2026-09-26 14:30:19 +02:00
2026-08-20 14:21:41 +02:00
2026-07-29 11:41:34 +12:00
2026-06-15 23:15:04 +02:00
2026-09-24 21:15:22 +02:00
2026-05-18 16:01:29 +02:00
2026-07-08 15:42:42 +02:00
2026-07-21 23:26:51 +02:00
2026-08-06 18:44:14 +02:00
2026-07-29 17:18:38 +02:00
2026-07-29 17:18:42 +02:00
2026-09-23 18:09:35 +02:00
2026-09-21 23:45:08 +02:00
2026-09-18 22:16:57 +02:00
2026-09-19 00:53:53 +02:00
2026-09-17 23:54:33 +02:00
2026-09-19 00:53:53 +02:00
2026-02-16 18:51:30 +01:00
2026-06-24 19:32:13 +02:00
2026-09-17 20:55:39 +02:00
2026-09-23 21:01:48 +02:00
2026-07-04 14:52:26 +02:00
2026-08-29 18:11:50 +02:00
2026-08-31 09:55:06 +02:00
2026-05-30 15:56:55 +02:00
2026-08-31 09:55:06 +02:00
2026-06-25 01:04:26 +02:00
2026-09-26 16:55:34 +02:00
2026-09-26 14:36:02 +02:00
2026-09-26 14:36:02 +02:00
2026-08-16 23:04:22 +02:00
2026-07-22 19:17:23 +02:00
2026-06-25 00:25:28 +02:00
2026-04-09 22:13:08 +02:00
2026-09-26 15:45:59 +02:00
2026-09-23 13:40:01 +02:00
2026-09-23 13:40:01 +02:00
2026-08-25 21:13:34 +02:00
2026-09-09 19:27:08 +02:00
2026-08-16 21:12:21 +02:00
2026-08-06 19:19:18 +02:00
2026-09-22 17:25:43 +02:00
2026-08-29 17:47:23 +02:00
2026-08-25 20:09:18 +02:00
2026-09-23 18:31:27 +02:00
2026-09-26 12:54:30 +02:00
2026-05-09 17:37:41 +02:00
2026-05-31 15:52:27 +02:00
2026-09-19 13:32:41 +02:00
2026-09-26 16:55:34 +02:00
2026-08-16 22:20:49 +02:00
2026-09-26 15:31:05 +02:00
2026-05-06 20:07:36 +02:00
2026-08-18 15:48:05 +02:00
2026-07-19 10:10:31 +02:00
2026-08-16 22:20:49 +02:00
2026-08-06 18:23:21 +02:00
2026-09-26 14:36:02 +02:00
2026-09-19 13:32:41 +02:00
2026-09-26 14:36:02 +02:00
2026-08-16 02:19:04 +02:00
2026-09-18 18:33:02 +02:00
2026-09-22 20:42:07 +02:00
2026-09-26 14:15:10 +02:00
2026-09-26 15:43:32 +02:00
2026-08-23 19:44:56 +06:00
2026-09-24 17:47:33 +02:00
2026-09-26 14:41:14 +02:00
2026-08-31 23:53:24 +02:00
2026-05-21 23:35:58 +02:00
2026-09-23 05:56:28 +02:00