{"answers":{"affected":"2 open source packages ship an affected version, including openmls.","exploited":"There is no known exploitation of GHSA-8x3w-qj7j-gqhf in the wild and no public exploit code.","fix":"Upgrade openmls to 0.7.2 or later.","what":"GHSA-8x3w-qj7j-gqhf is a vulnerability in openmls, published on 4 Feb 2026. An attacker needs administrator access to exploit it, with no action from the victim."},"fix_prompt":"Check this codebase for GHSA-8x3w-qj7j-gqhf and fix it if it is affected.\n\nWhat it is: GHSA-8x3w-qj7j-gqhf is a vulnerability in openmls, published on 4 Feb 2026. An attacker needs administrator access to exploit it, with no action from the victim.\nExploitation: There is no known exploitation of GHSA-8x3w-qj7j-gqhf in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- openmls (crates.io): affected all versions; fixed in 0.7.2\n- openmls (crates.io): affected all versions; fixed in 0.7.2\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-8x3w-qj7j-gqhf/ (Markdown: https://insights.sbomify.com/GHSA-8x3w-qj7j-gqhf/index.md)","id":"GHSA-8x3w-qj7j-gqhf","markdown":"https://insights.sbomify.com/GHSA-8x3w-qj7j-gqhf/index.md","name":"GHSA-8x3w-qj7j-gqhf","record":{"aliases":[],"analysis":{"component_type":"library","fix_type":"patch","impacts":["security_bypass"],"network_reachable":"yes","non_default_config":true,"product_category":"Rust MLS library","requires_auth":"high_privilege","summary":"An attacker with a compromised signature key can bypass post-compromise security in public MLS messages by exploiting improper tag validation.","user_interaction":"not_required","vuln_class":"security_feature_bypass"},"analysis_generated_by":"qwen3.8-flash-next","assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"Membership and confirmation tags may not be checked correctly due to a missing length check. Any tag that is shorter than the expected tag, but matches up to its length, as well as any empty tag is considered valid.\n\n### Impact\n\nThe vulnerability affects a secondary authentication guarantee that MLS provides in certain scenarios. The primary authentication guarantee for all messages comes from the signature on MLS messages. This guarantee is *not* affected by the vulnerability.  \nThe secondary authentication attests to the group membership of the message author. For MLS private messages, it is implied in the AEAD. For MLS public messages, it is expressed as the ‘membership tag’, a MAC whose key is derived from the private group state only known to group members.\n\nIn addition, for public Commit messages, the ‘confirmation tag’ works in a similar manner. Its purpose is to help members who processed the Commit message to ascertain that they now have the same view on the group as the creator of the Commit message for both the private and public group state. \n\nThe vulnerability lets an attacker create MLS messages with a truncated tag that are considered valid nonetheless.\n\nThe vulnerability does not affect the primary authentication guarantees of MLS, but breaks post-compromise security (PCS) of the MLS authentication guarantees. As a consequence, an adversary that has compromised a member’s signature key can create valid-looking proposals even after the affected member has successfully updated its key material. However, this is only possible in applications where the following conditions are met:\n\n- The application uses public MLS messages (i.e. it has not restricted the wire format type to private MLS messages only), and  \n- the application supports proposals by reference (aka standalone proposals).\n\nNote that, in deployments that allow external Commits, an attacker in possession of a member’s signature key can insert itself into the group without having to forge a membership tag.\n\n### Patches\n\nThere are two ways to mitigate the issue:\n\n- Upgrade to openmls v0.7.2: This minor release includes a fix for the issue and bumps the libcrux dependencies. This release does not contain any breaking changes from v0.7.1.  \n- Upgrade to openmls v0.8.0: This release contains the fix, as well as other improvements. The list of changes is in [CHANGELOG.md](https://github.com/openmls/openmls/blob/main/CHANGELOG.md). Some of the changes are breaking API changes.","ecosystems":["crates.io"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":true,"headline":"openmls has improper tag validation","id":"GHSA-8x3w-qj7j-gqhf","indexable":true,"kev":null,"kind":"advisory","links":{"ecosystem":"crates.io","product":null,"products":[],"type":"security_feature_bypass","year":"2026"},"n_packages":2,"n_references":null,"packages":[{"ecosystem":"crates.io","fixed":["0.7.2"],"introduced":["0"],"last_affected":[],"package":"openmls","purl":null,"source":"GHSA-8x3w-qj7j-gqhf"},{"ecosystem":"crates.io","fixed":["0.7.2"],"introduced":["0"],"last_affected":[],"package":"openmls","purl":"pkg:cargo/openmls","source":"GHSA-8x3w-qj7j-gqhf"}],"products":null,"published":"2026-02-04","related":[],"sources":[{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":"An attacker with a compromised signature key can bypass post-compromise security in public MLS messages by exploiting improper tag validation.","url":"https://insights.sbomify.com/GHSA-8x3w-qj7j-gqhf/"}