CVE-2023-50448
Potential CSV export data leak
In ActiveAdmin (aka Active Admin) before 2.12.0, a concurrency issue allows a malicious actor to access potentially private data (that belongs to another user) by making CSV export requests at certain specific times.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
6.5
In ActiveAdmin (aka Active Admin) before 2.12.0, a concurrency issue allows a malicious actor to access potentially private data (that belongs to another user) by making CSV export requests at certain specific times.
- Record
CVE-2023-50448- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N - Weakness
- CWE-1236
- Updated
- 2026-11-02
CVE List No score
In ActiveAdmin (aka Active Admin) before 2.12.0, a concurrency issue allows a malicious actor to access potentially private data (that belongs to another user) by making CSV export requests at certain specific times.
- Record
CVE-2023-50448- Updated
- 2026-11-02
EUVDEUVD-2023-3078 No score
In ActiveAdmin (aka Active Admin) before 2.12.0, a concurrency issue allows a malicious actor to access potentially private data (that belongs to another user) by making CSV export requests at certain specific times.
- Record
EUVD-2023-3078- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-356j-hg45-x525
8.4
Potential CSV export data leak
Impact
In ActiveAdmin versions prior to 2.12.0, a concurrency issue was found that could allow a malicious actor to be able to access potentially private data that belongs to another user.
The bug affects the functionality to export data as CSV files, and was caused by a variable holding the collection to be exported being shared across threads and not properly synchronized.
The attacker would need access to the same ActiveAdmin application as the victim, and could exploit the issue by timing their request immediately before when they know someone else will request a CSV (e.g. via phishing) or request CSVs frequently and hope someone else makes a concurrent request.
Patches
Versions 2.12.0 and above fixed the problem by completely removing the shared state.
- Record
GHSA-356j-hg45-x525- CVSS 3.1
- 8.4 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:H - Weakness
- CWE-200, CWE-1236
- Updated
- 2026-11-02
OSVGHSA-356j-hg45-x525
8.4
Potential CSV export data leak
Impact
In ActiveAdmin versions prior to 2.12.0, a concurrency issue was found that could allow a malicious actor to be able to access potentially private data that belongs to another user.
The bug affects the functionality to export data as CSV files, and was caused by a variable holding the collection to be exported being shared across threads and not properly synchronized.
The attacker would need access to the same ActiveAdmin application as the victim, and could exploit the issue by timing their request immediately before when they know someone else will request a CSV (e.g. via phishing) or request CSVs frequently and hope someone else makes a concurrent request.
Patches
Versions 2.12.0 and above fixed the problem by completely removing the shared state.
- Record
GHSA-356j-hg45-x525- CVSS 3.1
- 8.4 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:H - Weakness
- CWE-1236, CWE-200
- Updated
- 2026-11-02
OSV No score
In ActiveAdmin (aka Active Admin) before 2.12.0, a concurrency issue allows a malicious actor to access potentially private data (that belongs to another user) by making CSV export requests at certain specific times.
- Record
CVE-2023-50448- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
activeadminRubyGems |
before 2.12.0 | 2.12.0 |
activeadminRubyGems |
before 2.12.0, plus listed versions 0.1.00.1.10.2.00.2.10.2.2 Show 45 moreShow less0.3.00.3.10.3.20.3.30.3.40.4.00.4.10.4.20.4.30.4.40.5.00.5.0.pre0.5.0.pre10.5.10.6.00.6.10.6.20.6.30.6.40.6.50.6.61.0.01.0.0.pre11.0.0.pre21.0.0.pre31.0.0.pre41.0.0.pre51.1.01.2.01.2.11.3.01.3.11.4.01.4.11.4.21.4.32.0.02.0.0.rc12.0.0.rc22.1.02.10.02.10.12.11.02.11.12.11.2 |
2.12.0 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-50448 is a medium vulnerability (CVSS 6.5) in Activeadmin, published December 15, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.50%, the 42nd percentile. Fixed in activeadmin 2.12.0.
References
github.com/activeadmin/activeadmin/pull/7336
github.com/activeadmin/activeadmin/security/advisories/GHSA-356j-hg45-x525
github.com/rubysec/ruby-advisory-db/blob/master/gems/activeadmin/CVE-2023-50448.yml
nvd.nist.gov/vuln/detail/CVE-2023-50448
github.com/advisories/GHSA-356j-hg45-x525
github.com/CVEProject/cvelistV5/tree/main/cves/2023/50xxx/CVE-2023-50448.json
github.com/activeadmin/activeadmin
Left out here: 11 versions. The JSON record has them.