{"answers":{"affected":"","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-46820 exists.","fix":"No fix has been published for CVE-2025-46820 yet. Limit exposure of the affected software until one is available.","what":"CVE-2025-46820 is a high-severity vulnerability in phpgt Dom, published on 6 May 2025. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2025-46820 and fix it if it is affected.\n\nWhat it is: CVE-2025-46820 is a high-severity vulnerability in phpgt Dom, published on 6 May 2025. An attacker can exploit it over the internet without logging in, 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-2025-46820 exists.\n\nAffected product: phpgt Dom. No package-level version data is available, so check the vendor advisory linked from the reference page.\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-2025-46820/ (Markdown: https://insights.sbomify.com/CVE-2025-46820/index.md)","id":"CVE-2025-46820","markdown":"https://insights.sbomify.com/CVE-2025-46820/index.md","name":"CVE-2025-46820","record":{"aliases":["GHSA-cwj7-6v67-2cm4"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["data_read","code_execution"],"network_reachable":"yes","non_default_config":false,"product_category":"PHP DOM library","requires_auth":"none","summary":"Attackers can extract GitHub tokens from workflow artifacts to push malicious code or rewrite commits in the repository.","user_interaction":"required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":7.1,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-538","name":"Insertion of Sensitive Information into Externally-Accessible File or Directory"},{"id":"CWE-522","name":"Insufficiently Protected Credentials"},{"id":"CWE-312","name":"Cleartext Storage of Sensitive Information"},{"id":"CWE-200","name":"Exposure of Sensitive Information to an Unauthorized Actor"}],"description":"phpgt/Dom provides access to modern DOM APIs. Versions of phpgt/Dom prior to 4.1.8 expose the GITHUB_TOKEN in the Dom workflow run artifact. The ci.yml workflow file uses actions/upload-artifact@v4 to upload the build artifact. This artifact is a zip of the current directory, which includes the automatically generated .git/config file containing the run's GITHUB_TOKEN. Seeing as the artifact can be downloaded prior to the end of the workflow, there is a few seconds where an attacker can extract the token from the artifact and use it with the GitHub API to push malicious code or rewrite release commits in your repository. Any downstream user of the repository may be affected, but the token should only be valid for the duration of the workflow run, limiting the time during which exploitation could occur. Version 4.1.8 fixes the issue.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":"2026-09-04","github_poc":1,"max_poc_stars":1,"metasploit":0,"nuclei":0,"refs":[{"date":"2026-09-04T01:06:45Z","kind":"github_poc","ref":"https://github.com/pvharmo2/gha-lab-fb6df3d456","stars":1,"title":"Authorized security-research lab reproducing CVE-2025-46820 (GHSA-cwj7-6v67-2cm4): GITHUB_TOKEN persisted into publicly downloadable CI artifacts in phpgt/Dom. Snapshot of phpgt/Dom @ b73d7e8."}],"tier":"weaponised"},"has_fix":false,"headline":"phpgt/Dom exposes the GITHUB_TOKEN in Dom workflow run artifact","id":"CVE-2025-46820","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"information_disclosure","year":"2025"},"n_packages":0,"n_references":2,"next":{"headline":"Envoy vulnerable to bypass of RBAC uri_template permission","id":"CVE-2025-46821"},"packages":[],"prev":{"headline":"Redis is vulnerable to DoS via specially crafted LUA scripts","id":"CVE-2025-46819"},"products":["Dom"],"published":"2025-05-06","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"},{"class":"open","licence":"CC0","name":"PoC-in-GitHub"}],"ssvc":{"automatable":"no","exploitation":"poc","technical_impact":"total"},"state":"PUBLISHED","updated":"2025-05-06","vendors":["phpgt"]},"summary":"Attackers can extract GitHub tokens from workflow artifacts to push malicious code or rewrite commits in the repository.","url":"https://insights.sbomify.com/CVE-2025-46820/"}