{"id":"CVE-2026-80343","kind":"vulnerability","aliases":["CVE-2026-80343"],"related":[],"title":"Apache Camel Netty HTTP: path case mismatch skips security constraints","description":"Improper Handling of Case Sensitivity vulnerability in Apache Camel Netty HTTP component.\n\n\n\nThis issue affects Apache Camel: from 4.0.0 before 4.18.5, from 4.19.0 before 4.22.1.\n\n\n\nThe camel-netty-http security constraint compared the request path against the configured context path using a case-sensitive match, while the routing that dispatches the request to the endpoint did not apply the same rule. The two comparisons therefore disagreed for any path whose case differed from the configured value. An external caller could alter the case of a character in a path segment so that the security constraint no longer recognised the path as protected, while the request still dispatched to the same endpoint. The result is that the constraint is skipped and the protected route is reached without satisfying it. No credential, prior access or special configuration is required beyond being able to send a request to the consumer.\n\n\n\nUpgrade to Apache Camel 4.23.0, which fixes the issue. Users on the 4.18.x LTS releases stream should upgrade to 4.18.5. Users on the 4.22.x LTS releases stream should upgrade to 4.22.1. The constraint now matches the request path with the same case rules the dispatch uses, so the two can no longer disagree. For deployments that cannot upgrade immediately, place the authorization decision in front of the Camel consumer, for example in a reverse proxy that normalises the request path before forwarding.","summary":"The camel-netty-http component checks its security constraint with a case-sensitive path match, but routing dispatches without that rule. A caller who changes the case of a path character can reach a protected endpoint without satisfying the constraint.","severity":"high","cvss":8.2,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["apache-camel","camel-netty-http","java","package","self-hosted"],"not_affected_if":["fixed-version","not-using-camel-netty-http"],"how_to_check":"- Check the Apache Camel version in the project build file (for example `mvn dependency:tree | grep camel-netty-http`) and confirm whether it falls in 4.0.0 to before 4.18.5, or 4.19.0 to before 4.22.1.\n- Look for camel-netty-http consumers that use a security constraint or context path to protect routes.","fix":"- Upgrade Apache Camel to `4.23.0`.\n- Users on the 4.18.x LTS stream: upgrade to `4.18.5`.\n- Users on the 4.22.x LTS stream: upgrade to `4.22.1`.\n- If an immediate upgrade is not possible, enforce authorization in a reverse proxy that normalises request paths before forwarding.","status":"open","published_at":"2026-10-19T11:17:21+00:00","first_seen_at":"2026-10-23T21:57:17+00:00","triaged_at":"2026-10-25T03:04:22+00:00","updated_at":"2026-10-25T03:04:22+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-25T03:04:22Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Apache Camel to `4.23.0`.\n- Users on the 4.18.x LTS stream: upgrade to `4.18.5`.\n- Users on the 4.22.x LTS stream: upgrade to `4.22.1`.\n- If an immediate upgrade is not possible, enforce authorization in a reverse proxy that normalises request paths before forwarding.","reach":"internet","title":"Apache Camel Netty HTTP: path case mismatch skips security constraints","impact":"high","summary":"The camel-netty-http component checks its security constraint with a case-sensitive path match, but routing dispatches without that rule. A caller who changes the case of a path character can reach a protected endpoint without satisfying the constraint.","category":"package","nicknames":[],"who_cares":["apache-camel","java","camel-netty-http","self-hosted"],"confidence":0.8,"needs_auth":"no","worst_case":"Attacker reaches protected routes without the required authorization check","analyst_note":"","how_to_check":"- Check the Apache Camel version in the project build file (for example `mvn dependency:tree | grep camel-netty-http`) and confirm whether it falls in 4.0.0 to before 4.18.5, or 4.19.0 to before 4.22.1.\n- Look for camel-netty-http consumers that use a security constraint or context path to protect routes.","needs_analyst":false,"not_affected_if":["not-using-camel-netty-http","fixed-version"],"who_is_affected":"Applications that run Apache Camel's camel-netty-http consumer and rely on its security constraint to protect routes by path. Exposure depends on the configured context path and on whether the consumer can receive requests from callers who should not reach the protected route. Teams not using camel-netty-http or running a fixed version can skip it.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.000695,"input_tokens":3670,"output_tokens":656,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':12A,15A '-80343':13A,16A '4.0.0':89C '4.18':232C '4.18.5':91C,240C '4.19.0':93C '4.22':244C '4.22.1':95C,252C '4.23.0':224C 'abl':212C 'access':204C 'affect':85C 'alter':153C 'apach':1A,18B,78C,86C,222C 'apache-camel':17B 'appli':130C 'author':283C 'beyond':210C 'caller':53B,151C 'camel':2A,19B,21B,31B,79C,87C,98C,223C,289C 'camel-netty-http':20B,30B,97C 'cannot':278C 'case':6A,42B,57B,74C,115C,143C,155C,263C 'case-sensit':41B,114C 'chang':55B 'charact':61B,158C 'check':35B 'compar':103C 'comparison':136C 'compon':34B,82C 'configur':109C,147C,207C 'constraint':10A,38B,70B,102C,167C,189C,254C 'consum':219C,290C 'context':110C 'could':152C 'credenti':202C 'cve':11A,14A 'decis':284C 'deploy':276C 'differ':144C 'disagre':138C,274C 'dispatch':48B,122C,179C,266C 'endpoint':66B,127C,183C 'exampl':292C 'extern':150C 'fix':226C 'forward':303C 'front':286C 'handl':72C 'host':28B 'http':4A,23B,33B,81C,100C 'immedi':280C 'improp':71C 'issu':84C,228C 'java':24B 'longer':169C,273C 'lts':234C,246C 'match':45B,117C,256C 'mismatch':7A 'netti':3A,22B,32B,80C,99C 'normalis':298C 'packag':25B 'path':5A,44B,60B,106C,111C,141C,161C,172C,259C,301C 'place':281C 'prior':203C 'protect':65B,174C,194C 'proxi':296C 'reach':63B,197C 'recognis':170C 'releas':235C,247C 'request':105C,124C,177C,216C,258C,300C 'requir':209C 'result':185C 'revers':295C 'rout':47B,120C,195C 'rule':51B,133C,264C 'satisfi':68B,199C 'secur':9A,37B,101C,166C 'segment':162C 'self':27B 'self-host':26B 'send':214C 'sensit':43B,75C,116C 'skip':8A,191C 'special':206C 'still':178C 'stream':236C,248C 'therefor':137C 'two':135C,270C 'upgrad':220C,238C,250C,279C 'use':112C,267C 'user':229C,241C 'valu':148C 'vulner':76C 'whose':142C 'without':49B,67B,198C 'x':233C,245C","nicknames":[],"mitigations":[],"who_affected":"Applications that run Apache Camel's camel-netty-http consumer and rely on its security constraint to protect routes by path. Exposure depends on the configured context path and on whether the consumer can receive requests from callers who should not reach the protected route. Teams not using camel-netty-http or running a fixed version can skip it.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-19T11:17:21+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N","cvss_by":"security@apache.org","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-80343","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-80343","severity":null,"published_at":"2026-10-19T11:17:21+00:00","modified_at":"2026-10-19T20:45:51+00:00","first_seen_at":"2026-10-23T21:57:17+00:00","fetched_at":"2026-10-23T22:28:57+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}