CVE-2026-55518 json
Avo: Missing Authorization in Avo Association Attach Endpoint Allows Unauthorized Relationship Manipulation and Privilege Escalation
published 2026-06-17 4 mo ago modified 2026-10-24 15 d ago also EUVD-2026-45334 , GHSA-8fq9-273g-6mrg
- cvss
- 9.6
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 35%
- public exploits
- 0
- none known
Summary
Avo is a framework to create admin panels for Ruby on Rails apps. Prior to 3.32.1 and 4.0.0.beta.51, Avo's association attach workflow checks attach_<association>? in the UI and GET /resources/:resource/:id/:related/new path, but the actual write endpoint, POST /resources/:resource/:id/:related, does not run the same authorization check before mutating the association through Avo::AssociationsController#create. An authenticated low-privileged Avo user can bypass hidden or disabled attach controls and directly attach related records to a parent record by sending a crafted POST request, which can lead to privilege escalation and cross-tenant data exposure where associations represent authorization-bearing relationships. This issue is fixed in versions 3.32.1 and 4.0.0.beta.51.
Patch / fix
- rubygems avo 3.32.1, 4.0.0.beta.51
- avohq avo 3.32.1, 4.0.0.beta.51
- github.com/avo-hq/avo@995928e commit
- github.com/avo-hq/avo#4568 pull request
- github.com/avo-hq/avo/releases/tag/v3.32.1 release
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 3 mo ago
Exploit prediction
0.41% chance of exploitation in the next 30 days, higher than 35% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/avo-hq/avo/security/advisories/GHSA-8fq9-273g-6mrg referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 9.6 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N |
| GitHub | 3.1 | 9.6 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | avo | <3.32.1 >=4.0.0.beta.1, <4.0.0.beta.51 |
3.32.1 4.0.0.beta.51 |
Affected products
- avo-hq avo
Classification
References
-
github.com
/avo-hq/avo/pull/4568
web
-
github.com
/avo-hq/avo/commit/995928e586fd1788dd496bd51c4dbe4a79cb2b9c
web
-
github.com
/avo-hq/avo/security/advisories/GHSA-8fq9-273g-6mrg
exploit, web
-
github.com
/avo-hq/avo/releases/tag/v3.32.1
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-55518
advisory
-
github.com
/avo-hq/avo
package
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/avo/CVE-2026-55518.yml
web
-
cve.org
/CVERecord?id=CVE-2026-55518
web
Sources
- CVE List CVE-2026-55518
- GitHub Advisory GHSA-8fq9-273g-6mrg
- NVD CVE-2026-55518
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.