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-02 02:23:37 -07:00
2026-04-26 18:50:49 -07:00
2026-05-02 02:23:37 -07:00
2026-04-29 21:56:51 -07:00
2026-04-30 19:59:38 -07:00
2026-05-01 13:33:06 -07:00
2026-05-02 02:23:37 -07:00
2026-05-02 02:23:37 -07:00
2026-05-03 03:44:55 -07:00
2026-04-30 04:28:08 -07:00
2026-04-17 19:04:11 -07:00
2026-04-28 06:46:45 -07:00
2026-05-02 02:23:37 -07:00
2026-04-30 19:58:16 -07:00
2026-03-26 14:36:07 -07:00
2026-04-28 02:00:37 -07:00
2026-04-30 04:28:08 -07:00
2026-04-30 04:28:08 -07:00
2026-05-02 02:23:37 -07:00
2026-05-01 14:01:26 -07:00
2026-04-11 14:05:38 -07:00
2026-04-24 14:31:04 -07:00
2026-05-02 01:55:04 -07:00
2026-04-29 21:56:51 -07:00
2026-05-02 02:23:37 -07:00
2026-04-11 15:22:49 -07:00
2026-05-02 02:23:37 -07:00
2026-05-03 01:51:33 -07:00
2026-05-02 02:23:37 -07:00
2026-04-28 06:46:45 -07:00
2026-04-28 06:46:45 -07:00
2026-04-26 18:50:49 -07:00
2026-04-30 23:57:55 -07:00