{"answers":{"affected":"1 open source package ship an affected version, including gitlab. It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-2904 exists.","fix":"Upgrade gitlab to a fixed version for your release line: 15.2.5, 15.3.4 or 15.4.1.","what":"CVE-2022-2904 is a high-severity cross-site scripting vulnerability in Gitlab Gitlab, published on 2 Nov 2022. An attacker needs administrator access to exploit it, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2022-2904 and fix it if it is affected.\n\nWhat it is: CVE-2022-2904 is a high-severity cross-site scripting vulnerability in Gitlab Gitlab, published on 2 Nov 2022. An attacker needs administrator access to exploit it, and only if a user opens a file or follows a link.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-2904 exists.\n\nAffected packages and fixed versions:\n- gitlab (Bitnami): affected from 15.2.0; fixed in 15.2.5, 15.3.4, 15.4.1\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-2022-2904/ (Markdown: https://insights.sbomify.com/CVE-2022-2904/index.md)","id":"CVE-2022-2904","markdown":"https://insights.sbomify.com/CVE-2022-2904/index.md","name":"CVE-2022-2904","record":{"aliases":["BIT-gitlab-2022-2904","GHSA-pfg9-h349-wqvq","UBUNTU-CVE-2022-2904"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["account_takeover","data_modify"],"network_reachable":"yes","non_default_config":true,"product_category":"GitLab","requires_auth":"high_privilege","summary":"Stored XSS in GitLab's external status checks allows attackers to perform arbitrary actions on behalf of victims.","user_interaction":"required","vuln_class":"xss"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitLab","cpe":[{"product":"gitlab","vendor":"gitlab"}],"cvss":{"score":7.3,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:N","version":"3.1"},"cwes":[{"id":"CWE-79","name":"Improper Neutralization of Input During Web Page Generation"}],"description":"A cross-site scripting issue has been discovered in GitLab CE/EE affecting all versions starting from 15.2 before 15.2.5, all versions starting from 15.3 before 15.3.4, all versions starting from 15.4 before 15.4.1 It was possible to exploit a vulnerability in the external status checks feature which could lead to a stored XSS that allowed attackers to perform arbitrary actions on behalf of victims at client side.","ecosystems":["Bitnami"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":true,"headline":"Cross-site scripting in GitLab","id":"CVE-2022-2904","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Bitnami","product":"gitlab:gitlab","products":["gitlab:gitlab"],"type":"xss","year":"2022"},"n_packages":1,"n_references":3,"next":{"headline":"Information disclosure in kernel","id":"CVE-2022-2905"},"packages":[{"ecosystem":"Bitnami","fixed":["15.2.5","15.3.4","15.4.1"],"introduced":["15.2.0","15.3.0","15.4.0"],"last_affected":[],"package":"gitlab","purl":"pkg:bitnami/gitlab","source":"BIT-gitlab-2022-2904"}],"prev":{"headline":"NinjaForms \u003c 3.6.13 - Admin+ PHP Objection Injection","id":"CVE-2022-2903"},"products":["GitLab"],"published":"2022-11-02","related":[{"cvss_score":10,"headline":"GitLab Community Edition and Enterprise Edition Integer Overflow or Wraparound","id":"CVE-2026-97229","kev_date_added":"2026-10-29","published":"2026-10-13"},{"cvss_score":10,"headline":"GitLab Community Edition and Enterprise Edition Path Traversal","id":"CVE-2026-85706","kev_date_added":"2026-09-11","published":"2026-09-12"},{"cvss_score":10,"headline":"GitLab Community and Enterprise Editions Improper Access Control","id":"CVE-2023-7028","kev_date_added":"2024-05-01","published":"2024-01-12"},{"cvss_score":10,"headline":"GitLab Community and Enterprise Editions Remote Code Execution","id":"CVE-2021-22205","kev_date_added":"2021-11-03","published":"2021-04-23"},{"cvss_score":6.8,"headline":"GitLab Community and Enterprise Editions Server-Side Request Forgery (SSRF)","id":"CVE-2021-39935","kev_date_added":"2026-02-03","published":"2021-12-13"},{"cvss_score":6.8,"headline":"GitLab Server-Side Request Forgery (SSRF)","id":"CVE-2021-22175","kev_date_added":"2026-02-18","published":"2021-06-11"},{"cvss_score":10,"headline":"Integer Overflow or Wraparound in GitLab","id":"CVE-2026-110264","kev_date_added":null,"published":"2026-10-22"}],"sources":[{"class":"attribution","licence":"Apache-2.0","name":"Bitnami","prefix":"BIT"},{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2025-05-02","vendors":["GitLab"]},"summary":"Stored XSS in GitLab's external status checks allows attackers to perform arbitrary actions on behalf of victims.","url":"https://insights.sbomify.com/CVE-2022-2904/"}