{"answers":{"affected":"4 open source packages ship an affected version, including org.asynchttpclient:async-http-client.","exploited":"There is no known exploitation of CVE-2026-107231 in the wild and no public exploit code.","fix":"Upgrade org.asynchttpclient:async-http-client to a fixed version for your release line: 2.16.1 or 3.0.13.","what":"CVE-2026-107231 is a high-severity vulnerability in AsyncHttpClient async-http-client, published on 7 Oct 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-107231 and fix it if it is affected.\n\nWhat it is: CVE-2026-107231 is a high-severity vulnerability in AsyncHttpClient async-http-client, published on 7 Oct 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-107231 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- org.asynchttpclient:async-http-client (Maven): affected from 2.0.0; fixed in 2.16.1\n- org.asynchttpclient:async-http-client (Maven): affected from 2.0.0; fixed in 2.16.1\n- org.asynchttpclient:async-http-client (Maven): affected from 3.0.0.Beta1; fixed in 3.0.13\n- org.asynchttpclient:async-http-client (Maven): affected from 3.0.0.Beta1; fixed in 3.0.13\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-107231/ (Markdown: https://insights.sbomify.com/CVE-2026-107231/index.md)","id":"CVE-2026-107231","markdown":"https://insights.sbomify.com/CVE-2026-107231/index.md","name":"CVE-2026-107231","record":{"aliases":["DEBIAN-CVE-2026-107231","ECHO-32cd-c594-6bfe","GHSA-rqf5-2wxv-rjf4","MINI-cmq8-5hpf-jc57","MINI-mcwr-r6q6-7hcq","MINI-qrr3-j75j-6g4f","MINI-wpfq-xc34-fh8r","ROOT-APP-MAVEN-CVE-2026-107231","UBUNTU-CVE-2026-107231"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["data_read","security_bypass"],"network_reachable":"yes","non_default_config":false,"product_category":"Java HTTP client library","requires_auth":"none","summary":"A malicious server or proxy can force the AsyncHttpClient library to downgrade Digest authentication to Basic, exposing user credentials in cleartext.","user_interaction":"not_required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":8.7,"severity":"high","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-757","name":"Selection of Less-Secure Algorithm During Negotiation"},{"id":"CWE-522","name":"Insufficiently Protected Credentials"},{"id":"CWE-319","name":"Cleartext Transmission of Sensitive Information"}],"description":"The AsyncHttpClient (AHC) library allows Java applications to easily execute HTTP requests and asynchronously process HTTP responses. Prior to 3.0.13 and 2.16.1, Realm.Builder treats a Digest challenge that yields no usable nonce as a Basic challenge. A malicious origin or proxy can label a challenge Digest while omitting or emptying the nonce, causing the client to resend the username and password using reversible Basic authentication. Both origin and proxy challenge parsers are affected. This issue is fixed in versions 3.0.13 and 2.16.1.","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":"AsyncHttpClient: Digest challenge without a usable nonce downgrades to Basic and sends the password in cleartext","id":"CVE-2026-107231","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Maven","product":null,"products":[],"type":"information_disclosure","year":"2026"},"n_packages":4,"n_references":5,"next":{"headline":"AsyncHttpClient: Origin credentials sent in cleartext to a proxy that rejects the CONNECT","id":"CVE-2026-107232"},"packages":[{"ecosystem":"Maven","fixed":["2.16.1"],"introduced":["2.0.0"],"last_affected":[],"package":"org.asynchttpclient:async-http-client","purl":null,"source":"GHSA-rqf5-2wxv-rjf4"},{"ecosystem":"Maven","fixed":["2.16.1"],"introduced":["2.0.0"],"last_affected":[],"package":"org.asynchttpclient:async-http-client","purl":"pkg:maven/org.asynchttpclient/async-http-client","source":"GHSA-rqf5-2wxv-rjf4"},{"ecosystem":"Maven","fixed":["3.0.13"],"introduced":["3.0.0.Beta1"],"last_affected":[],"package":"org.asynchttpclient:async-http-client","purl":null,"source":"GHSA-rqf5-2wxv-rjf4"},{"ecosystem":"Maven","fixed":["3.0.13"],"introduced":["3.0.0.Beta1"],"last_affected":[],"package":"org.asynchttpclient:async-http-client","purl":"pkg:maven/org.asynchttpclient/async-http-client","source":"GHSA-rqf5-2wxv-rjf4"}],"prev":{"headline":"AsyncHttpClient: Pooled connections can still be shared across NTLM, Negotiate and proxy logins","id":"CVE-2026-107230"},"products":["async-http-client"],"published":"2026-10-07","related":[],"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":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"yes","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-10-10","vendors":["AsyncHttpClient"]},"summary":"A malicious server or proxy can force the AsyncHttpClient library to downgrade Digest authentication to Basic, exposing user credentials in cleartext.","url":"https://insights.sbomify.com/CVE-2026-107231/"}