{"answers":{"affected":"2 open source packages ship an affected version, including org.apache.storm:storm-client. It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-41081 in the wild and no public exploit code.","fix":"Upgrade org.apache.storm:storm-client to 2.8.7 or later.","what":"CVE-2026-41081 is a medium-severity authentication bypass vulnerability in Apache Storm Client, published on 27 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-41081 and fix it if it is affected.\n\nWhat it is: CVE-2026-41081 is a medium-severity authentication bypass vulnerability in Apache Storm Client, published on 27 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-41081 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- org.apache.storm:storm-client (Maven): affected all versions; fixed in 2.8.7\n- org.apache.storm:storm-client (Maven): affected all versions; fixed in 2.8.7\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-2026-41081/ (Markdown: https://insights.sbomify.com/CVE-2026-41081/index.md)","id":"CVE-2026-41081","markdown":"https://insights.sbomify.com/CVE-2026-41081/index.md","name":"CVE-2026-41081","record":{"aliases":["GHSA-j2q8-xx3q-8fqh"],"analysis":{"component_type":"server_software","fix_type":"upgrade","impacts":["security_bypass","data_read"],"network_reachable":"yes","non_default_config":false,"product_category":"Apache Storm Client","requires_auth":"none","summary":"Unauthenticated clients can bypass TLS authentication and gain anonymous access to Apache Storm services if authorization rules are permissive.","user_interaction":"not_required","vuln_class":"auth_bypass"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"apache","cpe":[{"product":"storm","vendor":"apache"}],"cvss":{"score":6.5,"severity":"medium","source":"cisa-adp","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N","version":"3.1"},"cwes":[{"id":"CWE-287","name":"Improper Authentication"}],"description":"Improper Handling of TLS Client Authentication Failure Leading to Anonymous Principal Assignment in Apache Storm\n\nVersions Affected: up to 2.8.7\n\nDescription: When TLS transport is enabled in Apache Storm without requiring client certificate authentication (the default configuration), the TlsTransportPlugin assigns a fallback principal (CN=ANONYMOUS) if no client certificate is presented or if certificate verification fails. The underlying SSLPeerUnverifiedException is caught and suppressed rather than rejecting the connection.\n\nThis fail-open behavior means an unauthenticated client can establish a TLS connection and receive a valid principal identity. If the configured authorizer (e.g., SimpleACLAuthorizer) does not explicitly deny access to CN=ANONYMOUS, this may result in unauthorized access to Storm services. The condition is logged at debug level only, reducing visibility in production.\n\nImpact: Unauthenticated clients may be assigned a principal identity, potentially bypassing authorization in permissive or misconfigured environments.\n\nMitigation: Users should upgrade to 2.8.7 in which TLS authentication failures are handled in a fail-closed manner.\n\nUsers who cannot upgrade immediately should:\n- Enable mandatory client certificate authentication (nimbus.thrift.tls.client.auth.required: true)\n- Ensure authorization rules explicitly deny access to CN=ANONYMOUS\n- Review all ACL configurations for implicit default-allow behavior","ecosystems":["Maven"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Apache Storm Client: Anonymous principal assigned on TLS client certificate verification failure","id":"CVE-2026-41081","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Maven","product":null,"products":[],"type":"auth_bypass","year":"2026"},"n_packages":2,"n_references":1,"next":{"headline":"Path traversal in opam","id":"CVE-2026-41082"},"packages":[{"ecosystem":"Maven","fixed":["2.8.7"],"introduced":["0"],"last_affected":[],"package":"org.apache.storm:storm-client","purl":null,"source":"GHSA-j2q8-xx3q-8fqh"},{"ecosystem":"Maven","fixed":["2.8.7"],"introduced":["0"],"last_affected":[],"package":"org.apache.storm:storm-client","purl":"pkg:maven/org.apache.storm/storm-client","source":"GHSA-j2q8-xx3q-8fqh"}],"prev":{"headline":"Denial of service in libexpat","id":"CVE-2026-41080"},"products":["Apache Storm Client"],"published":"2026-04-27","related":[{"cvss_score":9.8,"headline":"Shell Command Injection Vulnerability in Nimbus Thrift Server","id":"CVE-2021-38294","kev_date_added":null,"published":"2021-10-25"},{"cvss_score":9.8,"headline":"Unsafe Pre-Authentication Deserialization In Workers","id":"CVE-2021-40865","kev_date_added":null,"published":"2021-10-25"},{"cvss_score":9.8,"headline":"Deserialization of Untrusted Data in Apache Storm","id":"CVE-2018-11779","kev_date_added":null,"published":"2019-07-25"},{"cvss_score":9.8,"headline":"Apache Storm remote code execution vulnerability","id":"CVE-2015-3188","kev_date_added":null,"published":"2017-01-13"},{"cvss_score":8.8,"headline":"Apache Storm Client: RCE through Unsafe Deserialization via Kerberos TGT Credential Handling","id":"CVE-2026-35337","kev_date_added":null,"published":"2026-04-13"},{"cvss_score":8.8,"headline":"Code execution in org.apache.storm:storm-core","id":"CVE-2018-1331","kev_date_added":null,"published":"2018-07-10"},{"cvss_score":8.8,"headline":"Apache Storm it is possible for the owner of a topology to trick the supervisor to launch a worker as a different, non-root, user","id":"CVE-2017-9799","kev_date_added":null,"published":"2017-08-09"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"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":"yes","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-04-27","vendors":["Apache Software Foundation"]},"summary":"Unauthenticated clients can bypass TLS authentication and gain anonymous access to Apache Storm services if authorization rules are permissive.","url":"https://insights.sbomify.com/CVE-2026-41081/"}