Chris Lu and GitHub
4f43153918
filer: reject a proxyChunkId that isn't a well-formed fid ( #10436 )
...
LookupFileId only requires the fid to contain a single comma, and the value
is pasted straight into the volume server URL path, so ?proxyChunkId=3,x/../../status
resolves to volume 3 and then addresses an endpoint the caller never named:
Go sends the dot segments verbatim, the volume server's mux cleans the path
and redirects to /status, and the filer follows the redirect and relays the
body. That reaches any handler on the volume server -- status, stats, the UI --
past a filer that operators expect to be the only exposed surface.
Parse the fid before the lookup and answer 400 when it doesn't parse.
A trailing _N delta suffix from batch assigns is legal, so it is stripped
first, but only when it is a non-empty run of digits. The volume server strips
at the last "_" unconditionally, which is safe there because its fid came out
of a path the mux parsed and so cannot hold a "/"; here the value is raw query
input, and an unguarded strip would reduce "3,01637037d6_1/../../status" to a
valid fid and wave the traversal through.
2026-07-25 10:42:33 -07:00
..
2025-11-04 13:02:22 -08:00
2026-05-06 19:14:36 -07:00
2026-03-18 13:20:55 -07:00
2026-06-24 20:05:43 -07:00
2026-01-03 22:45:48 -08:00
2026-06-23 20:20:11 -07:00
2026-06-23 20:20:11 -07:00
2026-06-01 15:11:02 -07:00
2026-07-21 00:19:15 -07:00
2026-07-21 00:19:15 -07:00
2026-07-21 00:19:15 -07:00
2026-05-23 14:22:42 -07:00
2026-03-30 23:29:56 -07:00
2026-03-30 23:29:56 -07:00
2026-01-07 13:06:08 -08:00
2026-04-21 23:00:11 -07:00
2026-04-21 23:00:11 -07:00
2026-07-08 18:50:54 -07:00
2026-07-02 11:56:49 -07:00
2026-05-25 13:14:05 -07:00
2026-05-25 13:14:05 -07:00
2026-06-06 18:02:28 -07:00
2026-07-23 17:44:02 -07:00
2026-07-23 17:44:02 -07:00
2026-07-23 17:44:02 -07:00
2026-04-21 11:25:09 -07:00
2026-04-21 11:25:09 -07:00
2026-04-21 11:25:09 -07:00
2026-04-21 11:25:09 -07:00
2026-06-10 13:08:34 -07:00
2026-06-10 13:08:34 -07:00
2026-07-15 02:32:05 -07:00
2026-06-14 21:44:10 -07:00
2026-03-29 14:18:24 -07:00
2026-06-03 10:28:42 -07:00
2026-06-03 10:28:42 -07:00
2026-07-23 17:44:02 -07:00
2026-06-11 21:56:16 -07:00
2026-03-23 18:35:15 -07:00
2026-06-24 19:36:42 -07:00
2026-05-15 13:15:20 -07:00
2026-05-15 13:15:20 -07:00
2026-07-25 10:42:33 -07:00
2026-07-25 10:42:33 -07:00
2026-01-07 13:06:08 -08:00
2026-07-16 16:58:45 -07:00
2026-05-23 21:40:41 -07:00
2026-05-23 21:40:41 -07:00
2025-08-21 08:28:07 -07:00
2026-04-16 15:51:13 -07:00
2026-06-11 21:56:16 -07:00
2026-07-11 22:45:28 -07:00
2026-02-20 18:42:00 -08:00
2026-07-11 22:45:28 -07:00
2026-07-11 22:45:28 -07:00
2026-07-11 22:45:28 -07:00
2026-07-11 22:45:28 -07:00
2026-06-24 10:47:11 -07:00
2026-05-21 10:19:59 -07:00
2026-07-17 12:30:42 -07:00
2026-07-02 15:13:46 -07:00
2026-07-16 13:55:38 -07:00
2026-01-07 13:06:08 -08:00
2025-12-19 00:15:39 -08:00
2026-04-04 11:50:43 -07:00
2026-06-01 20:33:37 -07:00
2026-07-12 12:56:10 -07:00
2026-06-30 19:31:12 -07:00
2026-06-01 20:33:37 -07:00
2025-11-26 08:01:19 -08:00
2026-07-16 13:55:38 -07:00
2026-06-04 22:26:08 -07:00
2026-03-18 23:28:07 -07:00
2026-02-09 07:46:34 -08:00
2026-03-18 23:28:07 -07:00
2026-04-15 12:29:31 -07:00
2026-04-10 17:31:14 -07:00
2026-06-26 14:22:57 -07:00
2026-05-11 13:50:48 -07:00
2026-07-15 23:24:04 -07:00
2026-06-26 14:22:57 -07:00
2026-06-26 14:22:57 -07:00
2026-06-13 20:05:33 -07:00
2026-05-31 23:42:33 -07:00
2026-07-11 13:49:36 -07:00
2026-06-14 01:54:04 -07:00
2026-07-10 22:06:36 -07:00
2026-06-25 10:38:14 -07:00
2026-06-25 10:38:14 -07:00
2026-07-10 22:06:36 -07:00
2026-07-21 08:59:14 -07:00
2026-07-15 23:24:04 -07:00
2026-05-11 13:50:19 -07:00
2026-04-22 11:22:21 -07:00
2026-05-12 10:11:20 -07:00
2026-06-13 21:52:59 -07:00
2026-06-30 23:20:50 -07:00
2026-02-06 10:58:43 -08:00
2026-02-02 13:21:02 -08:00
2026-07-07 23:03:17 -07:00
2026-07-07 23:03:17 -07:00
2026-06-13 15:11:39 -07:00
2026-06-13 15:11:39 -07:00
2026-05-04 21:14:55 -07:00
2026-04-03 16:04:27 -07:00
2026-04-27 12:22:42 -07:00
2025-11-26 08:01:19 -08:00
2026-07-15 23:24:04 -07:00
2026-06-04 22:26:08 -07:00
2026-07-15 23:24:04 -07:00
2026-06-04 22:26:08 -07:00
2026-07-23 17:44:02 -07:00
2026-06-11 21:56:16 -07:00
2026-06-11 21:56:16 -07:00