{"answers":{"affected":"2 open source packages ship an affected version, including @backstage/plugin-app-backend.","exploited":"There is no known exploitation of CVE-2024-47762 in the wild and no public exploit code.","fix":"Upgrade @backstage/plugin-app-backend to 0.3.75 or later.","what":"CVE-2024-47762 is a medium-severity vulnerability in backstage, published on 3 Oct 2024. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2024-47762 and fix it if it is affected.\n\nWhat it is: CVE-2024-47762 is a medium-severity vulnerability in backstage, published on 3 Oct 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2024-47762 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- @backstage/plugin-app-backend (npm): affected all versions; fixed in 0.3.75\n- @backstage/plugin-app-backend (npm): affected all versions; fixed in 0.3.75\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2024-47762/ (Markdown: https://insights.sbomify.com/CVE-2024-47762/index.md)","id":"CVE-2024-47762","markdown":"https://insights.sbomify.com/CVE-2024-47762/index.md","name":"CVE-2024-47762","record":{"aliases":["GHSA-qc4v-xq2m-65wc"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["data_read"],"network_reachable":"yes","non_default_config":true,"product_category":"Backstage developer portal","requires_auth":"none","summary":"Attackers can read sensitive configuration secrets exposed via environment variables in Backstage developer portals, bypassing intended visibility restrictions.","user_interaction":"not_required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":5.8,"severity":"medium","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N","version":"3.1"},"cwes":[{"id":"CWE-440","name":"Expected Behavior Violation"}],"description":"Backstage is an open framework for building developer portals. Configuration supplied through APP_CONFIG_* environment variables, for example APP_CONFIG_backend_listen_port=7007, where unexpectedly ignoring the visibility defined in configuration schema. This occurred even if the configuration schema specified that they should have backend or secret visibility. This was an intended feature of the APP_CONFIG_* way of supplying configuration, but now clearly goes against the expected behavior of the configuration system. This behavior leads to a risk of potentially exposing sensitive configuration details intended to remain private or restricted to backend processes. The issue has been resolved in version 0.3.75 of the @backstage/plugin-app-backend package. As a temporary measure, avoid supplying secrets using the APP_CONFIG_ configuration pattern. Consider alternative methods for setting secrets, such as the environment substitution available for Backstage configuration.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Unexpected visibility of environment variable configurations in @backstage/plugin-app-backend","id":"CVE-2024-47762","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":null,"products":[],"type":"information_disclosure","year":"2024"},"n_packages":2,"n_references":2,"next":{"headline":"Wasmtime runtime crash when combining tail calls with trapping imports","id":"CVE-2024-47763"},"packages":[{"ecosystem":"npm","fixed":["0.3.75"],"introduced":["0"],"last_affected":[],"package":"@backstage/plugin-app-backend","purl":null,"source":"GHSA-qc4v-xq2m-65wc"},{"ecosystem":"npm","fixed":["0.3.75"],"introduced":["0"],"last_affected":[],"package":"@backstage/plugin-app-backend","purl":"pkg:npm/%40backstage/plugin-app-backend","source":"GHSA-qc4v-xq2m-65wc"}],"prev":{"headline":"GLPI vulnerable to account takeover via the password reset feature","id":"CVE-2024-47761"},"products":["backstage"],"published":"2024-10-03","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"yes","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2024-10-03","vendors":["backstage"]},"summary":"Attackers can read sensitive configuration secrets exposed via environment variables in Backstage developer portals, bypassing intended visibility restrictions.","url":"https://insights.sbomify.com/CVE-2024-47762/"}