0xyg3n
19ba9e43b6
fix(gateway/discord): require allowlist auth on slash commands
Slash commands (_run_simple_slash, _handle_thread_create_slash) bypassed
every DISCORD_ALLOWED_* gate enforced by on_message. Any guild member
could invoke /background (RCE via terminal), /restart, /model, /skill,
etc. CVSS 9.8 Critical.
- _evaluate_slash_authorization mirrors on_message gates (user, role,
channel, ignored channel) with fail-closed semantics
- _check_slash_authorization sends ephemeral reject + logs + admin alert
- Auth gate runs before defer() so rejections are ephemeral
- /skill autocomplete returns [] for unauthorized users (no catalog leak)
- Component views (ExecApproval, SlashConfirm, UpdatePrompt, ModelPicker)
now honor role allowlists via shared _component_check_auth helper
- Optional DISCORD_HIDE_SLASH_COMMANDS defense-in-depth
- Cross-platform admin alert (Telegram/Slack fallback) on unauthorized attempts
Based on PR #18125 by @0xyg3n.
2026-05-03 03:44:55 -07:00
..
2026-05-03 01:44:23 -07:00
2026-04-30 22:45:14 -07:00
2026-05-03 01:54:24 -07:00
2026-04-30 23:03:54 -07:00
2026-04-30 23:04:50 -07:00
2026-04-28 01:40:28 -07:00
2026-04-07 17:28:37 -07:00
2026-03-14 14:27:20 +03:00
2026-05-03 03:44:55 -07:00
2026-05-03 03:25:45 -07:00
2026-04-24 03:04:42 -07:00
2026-04-27 12:37:33 -07:00
2026-04-16 16:50:15 -07:00
2026-04-30 02:35:29 -07:00
2026-04-30 13:36:47 -07:00
2026-05-03 01:54:24 -07:00
2026-04-28 04:58:13 -07:00
2026-04-30 13:36:47 -07:00
2026-05-02 01:29:57 -07:00
2026-04-30 19:56:18 -07:00
2026-04-27 03:38:39 -07:00
2026-04-29 23:18:55 -07:00
2026-03-17 02:53:33 -07:00
2026-04-21 01:56:35 -07:00
2026-04-28 04:58:22 -07:00
2026-04-21 06:06:16 -07:00
2026-04-24 14:32:21 -07:00
2026-04-21 08:00:00 -07:00
2026-04-28 05:21:49 -07:00
2026-04-29 23:18:55 -07:00
2026-04-13 10:50:24 -07:00
2026-04-12 03:53:30 -07:00
2026-03-15 21:59:53 -07:00
2026-04-30 04:32:06 -07:00
2026-04-12 16:36:11 -07:00
2026-05-02 01:49:55 -07:00
2026-04-26 19:01:26 -07:00
2026-04-30 20:40:28 -07:00
2026-04-02 15:33:51 -07:00
2026-04-28 06:45:55 -07:00
2026-04-11 23:12:11 -07:00
2026-03-29 15:47:19 -07:00
2026-04-20 12:23:05 -07:00
2026-04-19 22:44:47 -07:00
2026-04-29 09:53:42 -07:00
2026-03-24 08:19:23 -07:00
2026-04-07 17:59:42 -07:00
2026-04-29 05:00:40 -07:00
2026-04-29 12:43:39 -07:00
2026-04-07 22:23:28 -07:00
2026-03-30 17:34:43 -07:00
2026-04-17 00:20:40 -07:00
2026-04-17 13:31:53 -07:00
2026-04-08 00:41:36 -07:00
2026-03-19 15:16:35 +01:00
2026-04-10 13:37:45 -07:00
2026-04-17 14:21:22 -07:00
2026-02-26 13:54:20 +03:00
2026-04-25 04:50:14 -07:00
2026-04-20 12:23:05 -07:00
2026-04-20 12:23:05 -07:00
2026-04-20 23:20:33 -07:00
2026-04-30 20:37:37 -07:00
2026-03-30 13:28:10 +09:00
2026-04-26 18:50:49 -07:00
2026-04-26 18:50:49 -07:00
2026-04-26 18:50:49 -07:00
2026-04-26 18:50:49 -07:00