{"answers":{"affected":"3 open source packages ship an affected version, including github.com/microstack-tech/parallax.","exploited":"There is no known exploitation of GHSA-xc79-566c-j4qx in the wild and no public exploit code.","fix":"Upgrade github.com/microstack-tech/parallax to 0.1.4 or later.","what":"GHSA-xc79-566c-j4qx is a vulnerability in github.com/microstack-tech/parallax, published on 10 Oct 2025. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for GHSA-xc79-566c-j4qx and fix it if it is affected.\n\nWhat it is: GHSA-xc79-566c-j4qx is a vulnerability in github.com/microstack-tech/parallax, published on 10 Oct 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of GHSA-xc79-566c-j4qx in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- github.com/microstack-tech/parallax (Go): affected all versions; fixed in 0.1.4\n- github.com/microstack-tech/parallax (Go): affected all versions; fixed in 0.1.4\n- github.com/microstack-tech/parallax (Go): affected all versions; fixed in 0.1.4\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/GHSA-xc79-566c-j4qx/ (Markdown: https://insights.sbomify.com/GHSA-xc79-566c-j4qx/index.md)","id":"GHSA-xc79-566c-j4qx","markdown":"https://insights.sbomify.com/GHSA-xc79-566c-j4qx/index.md","name":"GHSA-xc79-566c-j4qx","record":{"aliases":["GO-2025-4019"],"analysis":{"component_type":"server_software","fix_type":"upgrade","impacts":["denial_of_service"],"network_reachable":"yes","non_default_config":false,"product_category":"Parallax blockchain client","requires_auth":"none","summary":"An attacker can cause a Parallax node to consume excessive memory and crash by sending a crafted peer-to-peer message exploiting an integer overflow.","user_interaction":"not_required","vuln_class":"integer_overflow"},"analysis_generated_by":"qwen3.8-flash-next","assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"### Impact\n\nA vulnerable node can be made to consume very large amounts of memory when handling specially crafted p2p messages sent from an attacker node.\n\nIn order to carry out the attack, the attacker establishes a peer connections to the victim, and sends a malicious `GetBlockHeadersRequest` message with a `count` of `0`, using the `Parallax` protocol.\n\nIn `descendants := chain.GetHeadersFrom(num+count-1, count-1)`, the value of `count-1` is passed to the function `GetHeadersFrom(number, count uint64)` as parameter `count`. Due to integer overflow, `UINT64_MAX` value is then passed as the `count` argument to function `GetHeadersFrom(number, count uint64)`. This allows an attacker to bypass `maxHeadersServe` and request all headers from the latest block back to the genesis block.\n\n### Patches\n\nThe fix has been included in the Parallax client version `0.1.4` and onwards.\n\nThe vulnerability was patched in: https://github.com/microstack-tech/parallax/commit/f759e9090aaf00a43c616d7cbd133c44bb1ed01e\n\n### Workarounds\n\nNo workarounds have been made public.\n\n### Credit\n\nThis issue was disclosed responsibly by DongHan Kim via the Ethereum bug bounty program, the cooperation is appreciated.","ecosystems":["Go"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":true,"headline":"Parallax is vulnerable to DoS via malicious p2p message","id":"GHSA-xc79-566c-j4qx","indexable":true,"kev":null,"kind":"advisory","links":{"ecosystem":"Go","product":null,"products":[],"type":"integer_overflow","year":"2025"},"n_packages":3,"n_references":null,"packages":[{"ecosystem":"Go","fixed":["0.1.4"],"introduced":["0"],"last_affected":[],"package":"github.com/microstack-tech/parallax","purl":null,"source":"GHSA-xc79-566c-j4qx"},{"ecosystem":"Go","fixed":["0.1.4"],"introduced":["0"],"last_affected":[],"package":"github.com/microstack-tech/parallax","purl":"pkg:golang/github.com/microstack-tech/parallax","source":"GHSA-xc79-566c-j4qx"},{"ecosystem":"Go","fixed":["0.1.4"],"introduced":["0"],"last_affected":[],"package":"github.com/microstack-tech/parallax","purl":"pkg:golang/github.com/microstack-tech/parallax","source":"GO-2025-4019"}],"products":null,"published":"2025-10-10","related":[],"sources":[{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CC BY 4.0","name":"Go Vulnerability Database","prefix":"GO"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":"An attacker can cause a Parallax node to consume excessive memory and crash by sending a crafted peer-to-peer message exploiting an integer overflow.","url":"https://insights.sbomify.com/GHSA-xc79-566c-j4qx/"}