{"id":"CVE-2026-73117","kind":"vulnerability","aliases":["CVE-2026-73117"],"related":[],"title":"Apache Juneau: unchecked response headers let attackers inject headers and redirects","description":"Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Response Splitting') vulnerability in Apache Juneau.\n\nThe Apache Juneau REST server passed response header values and redirect targets to the servlet container unchecked. An application that sets a response header or redirect target from request data could let a remote client inject header lines (where the servlet container does not itself reject CR/LF) or redirect users to an arbitrary external site. The framework itself does not build headers or redirects from request data; exposure depends on application code.\n\nThis issue affects Apache Juneau: through 9.2.0.\n\nUsers are recommended to upgrade to version 9.2.1, which fixes the issue. Header values are now sanitized by default; applications that build redirect targets from request data must also switch from sendRedirect() to the new sendSafeRedirect().","summary":"Apache Juneau's REST server passed response header values and redirect targets through without checking for CR/LF characters. An attacker can inject extra HTTP header lines or redirect users to an arbitrary external site when application code sets these values from request data.","severity":"critical","cvss":10.0,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["apache-juneau","java","package","rest-server"],"not_affected_if":["no-request-data-in-headers","no-request-data-in-redirects"],"how_to_check":"- Check the Juneau version in the build file, e.g. `mvn dependency:tree | grep juneau`, and confirm whether it is `9.2.0` or earlier\n- Search application code for calls that set response headers or call `sendRedirect()` using request parameters\n- Confirm whether the servlet container rejects CR/LF in headers (unknown from sources)","fix":"- Apache Juneau: upgrade to `9.2.1`\n- Applications that build redirect targets from request data: switch from `sendRedirect()` to `sendSafeRedirect()`","status":"open","published_at":"2026-11-05T12:17:51+00:00","first_seen_at":"2026-11-05T12:38:48+00:00","triaged_at":"2026-11-05T12:40:01+00:00","updated_at":"2026-11-05T12:40:01+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-11-05T12:40:01Z","model":"claude-haiku-5-5","output":{"fix":"- Apache Juneau: upgrade to `9.2.1`\n- Applications that build redirect targets from request data: switch from `sendRedirect()` to `sendSafeRedirect()`","reach":"internet","title":"Apache Juneau: unchecked response headers let attackers inject headers and redirects","impact":"high","summary":"Apache Juneau's REST server passed response header values and redirect targets through without checking for CR/LF characters. An attacker can inject extra HTTP header lines or redirect users to an arbitrary external site when application code sets these values from request data.","audience":"developers","category":"package","nicknames":[],"who_cares":["apache-juneau","java","rest-server"],"confidence":0.7,"fix_status":"available","needs_auth":"unknown","worst_case":"Remote clients inject HTTP header lines or redirect users externally.","analyst_note":"Confirm from NVD or Apache advisory whether the CVSS 10.0 score reflects the default config and which servlet containers reject CR/LF.","how_to_check":"- Check the Juneau version in the build file, e.g. `mvn dependency:tree | grep juneau`, and confirm whether it is `9.2.0` or earlier\n- Search application code for calls that set response headers or call `sendRedirect()` using request parameters\n- Confirm whether the servlet container rejects CR/LF in headers (unknown from sources)","plain_action":"","needs_analyst":true,"not_affected_if":["no-request-data-in-headers","no-request-data-in-redirects"],"who_is_affected":"Exposure depends on application code. The framework does not build headers or redirects from request data, so applications that copy request input into response headers or redirect targets are the ones at risk. Applications that never do this can skip the immediate change, but upgrading to 9.2.1 is still the stated fix.","user_interaction":"unknown","needs_special_setup":"yes","severity_if_unknown":"critical"},"cost_usd":0.000773,"input_tokens":4413,"output_tokens":664,"severity_before":"critical"},"analyst_status":null,"analyst_note":null,"search":"'-2026':13A,16A '-73117':14A,17A '9.2.0':162C '9.2.1':170C 'affect':158C 'also':191C 'apach':1A,19B,26B,82C,85C,159C 'apache-juneau':18B 'applic':61B,102C,154C,182C 'arbitrari':57B,136C 'attack':7A,45B 'build':144C,184C 'charact':43B 'check':40B 'client':118C 'code':62B,155C 'contain':99C,125C 'could':114C 'cr/lf':42B,130C 'crlf':72C 'cve':12A,15A 'data':68B,113C,150C,189C 'default':181C 'depend':152C 'exposur':151C 'extern':58B,137C 'extra':48B 'fix':172C 'framework':140C 'header':5A,9A,33B,50B,76C,91C,107C,120C,145C,175C 'http':49B,75C,77C 'improp':69C 'inject':8A,47B,119C 'issu':157C,174C 'java':21B 'juneau':2A,20B,27B,83C,86C,160C 'let':6A,115C 'line':51B,121C 'must':190C 'neutral':70C 'new':197C 'packag':22B 'pass':31B,89C 'recommend':165C 'redirect':11A,36B,53B,94C,109C,132C,147C,185C 'reject':129C 'remot':117C 'request':67B,112C,149C,188C 'respons':4A,32B,78C,90C,106C 'rest':24B,29B,87C 'rest-serv':23B 'sanit':179C 'sendredirect':194C 'sendsaferedirect':198C 'sequenc':73C 'server':25B,30B,88C 'servlet':98C,124C 'set':63B,104C 'site':59B,138C 'split':79C 'switch':192C 'target':37B,95C,110C,186C 'uncheck':3A,100C 'upgrad':167C 'user':54B,133C,163C 'valu':34B,65B,92C,176C 'version':169C 'vulner':80C 'without':39B","nicknames":[],"mitigations":[],"who_affected":"Exposure depends on application code. The framework does not build headers or redirects from request data, so applications that copy request input into response headers or redirect targets are the ones at risk. Applications that never do this can skip the immediate change, but upgrading to 9.2.1 is still the stated fix.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["apachejuneau","critical","java","package","restserver"],"campaign_type":null,"first_public_at":"2026-11-05T12:17:51+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"security@apache.org","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-73117","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-73117","severity":null,"published_at":"2026-11-05T12:17:51+00:00","modified_at":"2026-11-05T12:17:51+00:00","first_seen_at":"2026-11-05T12:38:48+00:00","fetched_at":"2026-11-05T12:38:48+00:00","note":null}],"documents":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}