Ecosyste.ms: Advisories

An open API service providing security vulnerability metadata for many open source software ecosystems.

Security Advisories: GSA_kwCzR0hTQS0yNDZwLXhtZzgtd21jcc4AA6RW

OneUptime Vulnerable to a Privilege Escalation via Local Storage Key Manipulation

Summary

A security vulnerability exists in oneuptime's local storage handling, where a regular user can escalate privileges by modifying the is_master_admin key to true. This allows unauthorized access to administrative functionalities.

Details

The vulnerability lies in the improper validation of client-side stored data within the web application. Specifically, the is_master_admin key, stored in the local storage of the browser, can be manipulated by an attacker. By changing this key from false to true, the application grants administrative privileges to the user, without proper server-side validation.

POC

(I am using Firefox Developer to demonstrate this vulnerability)
Log in as a normal user. Open developer tools (hit F12), click Storage, then Local Storage. Modify the is_master_admin key from false to true.

Impact

This vulnerability represents a high security risk as it allows any authenticated user to gain administrative privileges through client-side manipulation. Most of the admin previlages were disabled except the user list. Where an attacker could see all the list of users who signed up to OneUptome.

Patch

This has been patched in 7.0.1815

Permalink: https://github.com/advisories/GHSA-246p-xmg8-wmcq
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yNDZwLXhtZzgtd21jcc4AA6RW
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: about 1 month ago
Updated: about 1 month ago


CVSS Score: 8.3
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L

Identifiers: GHSA-246p-xmg8-wmcq, CVE-2024-29194
References: Repository: https://github.com/OneUptime/oneuptime
Blast Radius: 1.0

Affected Packages

npm:@oneuptime/common-server
Dependent packages: 0
Dependent repositories: 0
Downloads: 3,233 last month
Affected Version Ranges: < 7.0.1815
Fixed in: 7.0.1815
All affected versions: 7.0.141, 7.0.142, 7.0.143, 7.0.401, 7.0.402, 7.0.1744, 7.0.1745, 7.0.1747, 7.0.1748, 7.0.1751, 7.0.1752, 7.0.1758, 7.0.1762, 7.0.1763, 7.0.1765, 7.0.1767, 7.0.1769, 7.0.1775, 7.0.1780, 7.0.1787, 7.0.1790, 7.0.1791, 7.0.1792, 7.0.1794, 7.0.1797, 7.0.1800, 7.0.1803, 7.0.1814
All unaffected versions: 7.0.1815, 7.0.1829, 7.0.1830, 7.0.1843, 7.0.1852, 7.0.1854, 7.0.1856, 7.0.1858, 7.0.1860, 7.0.1862, 7.0.1866, 7.0.1867, 7.0.1870, 7.0.1871, 7.0.1874, 7.0.1880, 7.0.1881, 7.0.1886, 7.0.1888, 7.0.1891, 7.0.1894, 7.0.1901, 7.0.1902, 7.0.1910, 7.0.1914, 7.0.1916, 7.0.1920, 7.0.1921, 7.0.1924, 7.0.1929, 7.0.1930, 7.0.1931, 7.0.1934, 7.0.1935, 7.0.1940, 7.0.1945, 7.0.1947, 7.0.1948, 7.0.1965, 7.0.1966, 7.0.1978, 7.0.1982, 7.0.1985, 7.0.1987, 7.0.1989, 7.0.2004, 7.0.2009, 7.0.2012, 7.0.2014, 7.0.2016, 7.0.2018, 7.0.2022, 7.0.2032, 7.0.2033, 7.0.2051, 7.0.2055, 7.0.2057, 7.0.2062, 7.0.2063, 7.0.2066, 7.0.2084, 7.0.2086, 7.0.2088
npm:@oneuptime/model
Dependent packages: 0
Dependent repositories: 0
Downloads: 3,864 last month
Affected Version Ranges: < 7.0.1815
Fixed in: 7.0.1815
All affected versions: 1.0.0, 7.0.141, 7.0.142, 7.0.143, 7.0.401, 7.0.402, 7.0.1744, 7.0.1745, 7.0.1747, 7.0.1748, 7.0.1751, 7.0.1752, 7.0.1758, 7.0.1762, 7.0.1763, 7.0.1765, 7.0.1767, 7.0.1769, 7.0.1775, 7.0.1780, 7.0.1787, 7.0.1790, 7.0.1791, 7.0.1792, 7.0.1794, 7.0.1797, 7.0.1800, 7.0.1803, 7.0.1814
All unaffected versions: 7.0.1815, 7.0.1829, 7.0.1830, 7.0.1843, 7.0.1852, 7.0.1854, 7.0.1856, 7.0.1858, 7.0.1860, 7.0.1862, 7.0.1866, 7.0.1867, 7.0.1870, 7.0.1871, 7.0.1874, 7.0.1880, 7.0.1881, 7.0.1886, 7.0.1888, 7.0.1891, 7.0.1894, 7.0.1901, 7.0.1902, 7.0.1910, 7.0.1914, 7.0.1916, 7.0.1920, 7.0.1921, 7.0.1924, 7.0.1929, 7.0.1930, 7.0.1931, 7.0.1934, 7.0.1935, 7.0.1940, 7.0.1945, 7.0.1947, 7.0.1948, 7.0.1965, 7.0.1966, 7.0.1978, 7.0.1982, 7.0.1985, 7.0.1987, 7.0.1989, 7.0.2004, 7.0.2009, 7.0.2012, 7.0.2014, 7.0.2016, 7.0.2018, 7.0.2022, 7.0.2032, 7.0.2033, 7.0.2051, 7.0.2055, 7.0.2057, 7.0.2062, 7.0.2063, 7.0.2066, 7.0.2084, 7.0.2086, 7.0.2088, 7.0.2091, 7.0.2092