{"id":"CVE-2026-118276","kind":"vulnerability","aliases":["CVE-2026-118276"],"related":[],"title":"a2ui web renderer expression parser lets remote input exhaust resources","description":"A vulnerability was determined in a2ui-project a2ui up to 0.10.6. This vulnerability affects the function formatString of the file renderers/web_core/src/v0_9/basic_catalog/expressions/expression_parser.ts of the component Parser. This manipulation causes resource consumption. The attack may be initiated remotely. The exploit has been publicly disclosed and may be utilized. Patch name: 1f71d1aac1b145ef57c7526f9e0cff316f5934e2. Applying a patch is the recommended action to fix this issue.","summary":"The formatString function in the a2ui web renderer's expression parser can be driven into heavy resource consumption by crafted input. An attacker who can send that input remotely can slow down or stall the rendering process.","severity":"medium","cvss":4.0,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["a2ui","javascript","package","typescript","web-renderer"],"not_affected_if":["not-using-a2ui-web-renderer"],"how_to_check":"- Check the installed a2ui version and see whether it is `0.10.6` or earlier\n- Check whether the web renderer's `renderers/web_core/src/v0_9/basic_catalog/expressions/expression_parser.ts` file contains the fix from commit `1f71d1aac1b145ef57c7526f9e0cff316f5934e2`","fix":"- Apply patch commit `1f71d1aac1b145ef57c7526f9e0cff316f5934e2` to the a2ui web renderer\n- Move to an a2ui release newer than `0.10.6` that includes this patch (exact release version unknown)","status":"open","published_at":"2026-10-28T04:18:01+00:00","first_seen_at":"2026-10-28T04:30:58+00:00","triaged_at":"2026-10-28T04:32:10+00:00","updated_at":"2026-10-28T04:32:10+00:00","category":"package","confidence":0.6,"triage":{"at":"2026-10-28T04:32:10Z","model":"claude-haiku-5-5","output":{"fix":"- Apply patch commit `1f71d1aac1b145ef57c7526f9e0cff316f5934e2` to the a2ui web renderer\n- Move to an a2ui release newer than `0.10.6` that includes this patch (exact release version unknown)","reach":"internet","title":"a2ui web renderer expression parser lets remote input exhaust resources","impact":"low","summary":"The formatString function in the a2ui web renderer's expression parser can be driven into heavy resource consumption by crafted input. An attacker who can send that input remotely can slow down or stall the rendering process.","category":"package","nicknames":[],"who_cares":["a2ui","web-renderer","javascript","typescript"],"confidence":0.6,"needs_auth":"unknown","worst_case":"Remote input stalls or exhausts resources in the rendering process","analyst_note":"Find the a2ui release version that contains commit 1f71d1aac1b145ef57c7526f9e0cff316f5934e2 and confirm the NVD entry's exposure conditions.","how_to_check":"- Check the installed a2ui version and see whether it is `0.10.6` or earlier\n- Check whether the web renderer's `renderers/web_core/src/v0_9/basic_catalog/expressions/expression_parser.ts` file contains the fix from commit `1f71d1aac1b145ef57c7526f9e0cff316f5934e2`","needs_analyst":true,"not_affected_if":["not-using-a2ui-web-renderer"],"who_is_affected":"Teams that run the a2ui web renderer up to version 0.10.6 with the basic catalog expression parser exposed to input they do not fully control. The sources do not say which deployments route untrusted input into formatString. Teams not using the a2ui web renderer can skip it.","user_interaction":"unknown","needs_special_setup":"unknown","severity_if_unknown":"unknown"},"cost_usd":0.000907,"input_tokens":3393,"output_tokens":1135,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-118276':13A,16A '-2026':12A,15A '0.10.6':72C '1f71d1aac1b145ef57c7526f9e0cff316f5934e2':110C 'a2ui':1A,17B,29B,67C,69C 'a2ui-project':66C 'action':117C 'affect':75C 'appli':111C 'attack':46B,93C 'caus':89C 'compon':85C 'consumpt':41B,91C 'craft':43B 'cve':11A,14A 'determin':64C 'disclos':103C 'driven':37B 'exhaust':9A 'exploit':99C 'express':4A,33B 'file':81C 'fix':119C 'formatstr':25B,78C 'function':26B,77C 'heavi':39B 'initi':96C 'input':8A,44B,51B 'issu':121C 'javascript':18B 'let':6A 'manipul':88C 'may':94C,105C 'name':109C 'packag':19B 'parser':5A,34B,86C 'patch':108C,113C 'process':60B 'project':68C 'public':102C 'recommend':116C 'remot':7A,52B,97C 'render':3A,23B,31B,59B 'renderers/web_core/src/v0_9/basic_catalog/expressions/expression_parser.ts':82C 'resourc':10A,40B,90C 'send':49B 'slow':54B 'stall':57B 'typescript':20B 'util':107C 'vulner':62C,74C 'web':2A,22B,30B 'web-render':21B","nicknames":[],"mitigations":[],"who_affected":"Teams that run the a2ui web renderer up to version 0.10.6 with the basic catalog expression parser exposed to input they do not fully control. The sources do not say which deployments route untrusted input into formatString. Teams not using the a2ui web renderer can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-28T04:18:01+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P/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":"cna@vuldb.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-118276","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-118276","severity":null,"published_at":"2026-10-28T04:18:01+00:00","modified_at":"2026-10-28T04:18:01+00:00","first_seen_at":"2026-10-28T04:30:58+00:00","fetched_at":"2026-10-28T04:30:58+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"}