File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ ---
2+ layout : advisory
3+ title : ' GHSA-r766-3v88-pfcf (where_is_waldo): where_is_waldo authenticates ActionCable
4+ connections from a client-supplied subject_id when no authenticate_proc is configured'
5+ comments : false
6+ categories :
7+ - where_is_waldo
8+ advisory :
9+ gem : where_is_waldo
10+ ghsa : r766-3v88-pfcf
11+ url : https://github.com/byscott-io/where_is_waldo/security/advisories/GHSA-r766-3v88-pfcf
12+ title : where_is_waldo authenticates ActionCable connections from a client-supplied
13+ subject_id when no authenticate_proc is configured
14+ date : 2026-07-25
15+ description : |-
16+ WhereIsWaldo::ApplicationCable::Connection (the gem's built-in ActionCable
17+ connection) authenticated the connection from `request.params[:subject_id]`
18+ whenever no `authenticate_proc` was configured. Because request params are
19+ client-controlled, a client could connect with `?subject_id=<any id>` and be
20+ authenticated as that subject, enabling impersonation and cross-account
21+ presence-roster disclosure (authentication bypass by spoofing, CWE-290).
22+
23+ Only applications that mount the built-in connection without configuring
24+ `authenticate_proc` are affected; applications that supply their own
25+ authenticated ActionCable connection (e.g. deriving current_user from a
26+ verified JWT) or configure `authenticate_proc` are not.
27+
28+ Fixed in 0.1.6: the params path is permitted only in local development/test;
29+ in production the connection fails closed unless an authenticated source
30+ establishes the subject.
31+ patched_versions :
32+ - " >= 0.1.6"
33+ notes : " - A CVE has been requested for this GHSA and can be added once assigned.\n "
34+ ---
You can’t perform that action at this time.
0 commit comments