{"id":"CVE-2026-121823","kind":"vulnerability","aliases":["CVE-2026-121823"],"related":[],"title":"Armeria: inconsistent path normalization lets requests bypass access controls","description":"A vulnerability has been identified in armeria versions prior to 1.43.0, where inconsistent request path normalization can allow unauthenticated attackers to bypass path-based access controls and access protected resources.","summary":"Armeria, a Java microservice framework, normalizes request paths inconsistently, so an unauthenticated attacker can send a crafted path. That path can bypass path-based access controls and reach protected resources.","severity":"high","cvss":8.7,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["armeria","java","microservices","package"],"not_affected_if":["armeria-1.43.0-or-later"],"how_to_check":"- Check the Armeria version in your build file (for example `pom.xml` or `build.gradle`) and confirm whether it is below `1.43.0`.\n- Review any path-based access rules (such as route-level authorization) that depend on Armeria's request path.","fix":"- Armeria: upgrade to `1.43.0` or later.","status":"open","published_at":"2026-11-06T08:17:20+00:00","first_seen_at":"2026-11-06T08:40:33+00:00","triaged_at":"2026-11-06T08:42:26+00:00","updated_at":"2026-11-06T08:42:26+00:00","category":"package","confidence":0.6,"triage":{"at":"2026-11-06T08:42:26Z","model":"claude-haiku-5-5","output":{"fix":"- Armeria: upgrade to `1.43.0` or later.","reach":"network","title":"Armeria: inconsistent path normalization lets requests bypass access controls","impact":"medium","summary":"Armeria, a Java microservice framework, normalizes request paths inconsistently, so an unauthenticated attacker can send a crafted path. That path can bypass path-based access controls and reach protected resources.","audience":"developers","category":"package","nicknames":[],"who_cares":["armeria","java","microservices"],"confidence":0.6,"fix_status":"available","needs_auth":"no","worst_case":"unauthenticated attacker reaches protected resources behind path-based access controls","analyst_note":"Check the vendor advisory on github.com for the affected path patterns and whether the fix is only in 1.43.0.","how_to_check":"- Check the Armeria version in your build file (for example `pom.xml` or `build.gradle`) and confirm whether it is below `1.43.0`.\n- Review any path-based access rules (such as route-level authorization) that depend on Armeria's request path.","plain_action":"","needs_analyst":true,"not_affected_if":["armeria-1.43.0-or-later"],"who_is_affected":"Teams running Armeria versions before 1.43.0 that enforce access control based on request paths are exposed. Services that do not rely on path-based access rules in Armeria are less exposed, but the sources do not say more than that.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"high"},"cost_usd":0.000684,"input_tokens":4203,"output_tokens":527,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-121823':12A,15A '-2026':11A,14A '1.43.0':61C 'access':8A,45B,76C,79C 'allow':68C 'armeria':1A,16B,20B,57C 'attack':32B,70C 'base':44B,75C 'bypass':7A,41B,72C 'control':9A,46B,77C 'craft':36B 'cve':10A,13A 'framework':24B 'identifi':55C 'inconsist':2A,28B,63C 'java':17B,22B 'let':5A 'microservic':18B,23B 'normal':4A,25B,66C 'packag':19B 'path':3A,27B,37B,39B,43B,65C,74C 'path-bas':42B,73C 'prior':59C 'protect':49B,80C 'reach':48B 'request':6A,26B,64C 'resourc':50B,81C 'send':34B 'unauthent':31B,69C 'version':58C 'vulner':52C","nicknames":[],"mitigations":[],"who_affected":"Teams running Armeria versions before 1.43.0 that enforce access control based on request paths are exposed. Services that do not rely on path-based access rules in Armeria are less exposed, but the sources do not say more than that.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["armeria","high","java","microservices","package"],"campaign_type":null,"search_a":"'-121823':12A,15A '-2026':11A,14A 'access':8A 'armeria':1A 'bypass':7A 'control':9A 'cve':10A,13A 'inconsist':2A 'let':5A 'normal':4A 'path':3A 'request':6A","search_b":"'access':45B 'armeria':16B,20B 'attack':32B 'base':44B 'bypass':41B 'control':46B 'craft':36B 'framework':24B 'inconsist':28B 'java':17B,22B 'microservic':18B,23B 'normal':25B 'packag':19B 'path':27B,37B,39B,43B 'path-bas':42B 'protect':49B 'reach':48B 'request':26B 'resourc':50B 'send':34B 'unauthent':31B","search_c":"'1.43.0':61C 'access':76C,79C 'allow':68C 'armeria':57C 'attack':70C 'base':75C 'bypass':72C 'control':77C 'identifi':55C 'inconsist':63C 'normal':66C 'path':65C,74C 'path-bas':73C 'prior':59C 'protect':80C 'request':64C 'resourc':81C 'unauthent':69C 'version':58C 'vulner':52C","first_public_at":"2026-11-06T07:17:54+00:00","kev":null,"cvss_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/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":"dl_cve@linecorp.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-121823","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-121823","severity":null,"published_at":"2026-11-06T08:17:20+00:00","modified_at":"2026-11-06T08:17:20+00:00","first_seen_at":"2026-11-06T08:40:33+00:00","fetched_at":"2026-11-06T08:40:33+00:00","note":null}],"documents":[{"id":84763,"url":"https://github.com/line/armeria/security/advisories/GHSA-xqhm-4ph4-423v","title":"Vendor advisory: github.com","kind":"vendor","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-11-06T07:17:54+00:00","relation":"advisory","confidence":null,"note":"Vendor advisory: github.com"}],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}