{"answers":{"affected":"2 open source packages ship an affected version, including crypton-x509-store and x509-store.","exploited":"There is no known exploitation of HSEC-2025-0006 in the wild and no public exploit code.","fix":"Upgrade crypton-x509-store to 1.6.12 or later.","what":"HSEC-2025-0006 is a vulnerability in crypton-x509-store, published on 17 Nov 2025."},"fix_prompt":"Check this codebase for HSEC-2025-0006 and fix it if it is affected.\n\nWhat it is: HSEC-2025-0006 is a vulnerability in crypton-x509-store, published on 17 Nov 2025. \nExploitation: There is no known exploitation of HSEC-2025-0006 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- crypton-x509-store (Hackage): affected from 1.6.9; fixed in 1.6.12\n- x509-store (Hackage): affected from 0.1; no fix listed\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/HSEC-2025-0006/ (Markdown: https://insights.sbomify.com/HSEC-2025-0006/index.md)","id":"HSEC-2025-0006","markdown":"https://insights.sbomify.com/HSEC-2025-0006/index.md","name":"HSEC-2025-0006","record":{"aliases":[],"analysis":{"component_type":"library","fix_type":"patch","impacts":["data_read"],"network_reachable":"unknown","non_default_config":false,"product_category":"Haskell X.509 library","requires_auth":"none","summary":"An attacker with local access to spawn child processes can read private keys due to missing close-on-exec flags in the X.509 key reading function.","user_interaction":"not_required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"# Private key leak via inherited file descriptor\n\nThe X.509 key reading function `readKeyFile` opened a file\ndescriptor to the private key without setting the *close-on-exec*\nflag. If a child process is `exec`ed at the same time, it would\ninherit that file descriptor and could read the private key\nmaterial.\n\nImpact is limited to child processes that run untrusted code, but\nthat do not close inherited file descriptors. (For example, the\n`su(1)` command.)\n\nThis leak was fixed by setting the *close-on-exec* flag on\nunix-based systems.","ecosystems":["Hackage"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":true,"headline":"Private key leak via inherited file descriptor","id":"HSEC-2025-0006","indexable":true,"kev":null,"kind":"advisory","links":{"ecosystem":null,"product":null,"products":[],"type":"information_disclosure","year":"2025"},"n_packages":2,"n_references":null,"packages":[{"ecosystem":"Hackage","fixed":["1.6.12"],"introduced":["1.6.9"],"last_affected":[],"package":"crypton-x509-store","purl":"pkg:hackage/crypton-x509-store","source":"HSEC-2025-0006"},{"ecosystem":"Hackage","fixed":[],"introduced":["0.1"],"last_affected":[],"package":"x509-store","purl":"pkg:hackage/x509-store","source":"HSEC-2025-0006"}],"products":null,"published":"2025-11-17","related":[],"sources":[{"class":"open","licence":"CC0 1.0","name":"Haskell Security Response Team","prefix":"HSEC"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":"An attacker with local access to spawn child processes can read private keys due to missing close-on-exec flags in the X.509 key reading function.","url":"https://insights.sbomify.com/HSEC-2025-0006/"}