{"id":"CVE-2026-55600","kind":"vulnerability","aliases":["CVE-2026-55600"],"related":[],"title":"Part-DB: stored HTML injection in BOM validation page via part names","description":"Part-DB is an open source inventory management system for electronic components. Prior to version 2.12.2, Part-DB renders BOM validation information messages using Twig's |raw filter. These messages include translated placeholders populated with user-controlled Part names. A user who can edit a Part name can store HTML markup in the Part name. When another user imports a BOM CSV referencing that Part ID, the malicious Part name is rendered as HTML in the victim's BOM validation result page. This results in a cross-user stored HTML injection issue. JavaScript execution appears to be blocked by the current Content Security Policy, but arbitrary HTML links, forms, images, and CSS-based UI elements can still be injected into a trusted Part-DB page. This issue has been patched in version 2.12.2.","summary":"Part-DB renders BOM validation messages with Twig's raw filter, so a part name containing HTML is output unescaped. A user who can edit a part name can inject HTML, links, forms and images into another user's BOM import result page, though the current Content Security Policy appears to block JavaScript execution.","severity":"medium","cvss":5.7,"epss":0.00297,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["package","part-db","php","self-hosted"],"not_affected_if":["single-user","trusted-editors-only","version-2.12.2-or-later"],"how_to_check":"- Check the installed Part-DB version (for example in the admin info page or the composer.lock file) and see whether it is below `2.12.2`\n- Look for part names containing HTML tags such as `<a`, `<form` or `<img` in the parts table","fix":"- Upgrade Part-DB to `2.12.2` or later\n- Until upgraded, restrict who can edit part names","status":"open","published_at":"2026-10-23T04:18:17+00:00","first_seen_at":"2026-10-23T21:57:32+00:00","triaged_at":"2026-10-25T04:10:24+00:00","updated_at":"2026-10-25T04:10:24+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-25T04:10:24Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Part-DB to `2.12.2` or later\n- Until upgraded, restrict who can edit part names","reach":"internet","title":"Part-DB: stored HTML injection in BOM validation page via part names","impact":"low","summary":"Part-DB renders BOM validation messages with Twig's raw filter, so a part name containing HTML is output unescaped. A user who can edit a part name can inject HTML, links, forms and images into another user's BOM import result page, though the current Content Security Policy appears to block JavaScript execution.","category":"package","nicknames":[],"who_cares":["self-hosted","part-db","php"],"confidence":0.7,"needs_auth":"yes","worst_case":"Attacker injects phishing links and fake forms into a trusted inventory page.","analyst_note":"","how_to_check":"- Check the installed Part-DB version (for example in the admin info page or the composer.lock file) and see whether it is below `2.12.2`\n- Look for part names containing HTML tags such as `<a`, `<form` or `<img` in the parts table","needs_analyst":false,"not_affected_if":["version-2.12.2-or-later","single-user","trusted-editors-only"],"who_is_affected":"Instances of Part-DB before 2.12.2 where more than one user can edit part names and other users import BOM CSV files referencing those parts. Single-user installations or installations where only trusted staff edit parts have a much smaller exposure. Deployments already on 2.12.2 or later are not affected.","user_interaction":"yes","needs_special_setup":"no","severity_if_unknown":"medium"},"cost_usd":0.000625,"input_tokens":3493,"output_tokens":552,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-2026':15A,18A '-55600':16A,19A '2.12.2':99C,221C 'anoth':65B,142C 'appear':78B,181C 'arbitrari':192C 'base':200C 'block':80B,184C 'bom':8A,32B,68B,104C,146C,164C 'compon':95C 'contain':44B 'content':75B,188C 'control':122C 'cross':173C 'cross-us':172C 'css':199C 'css-base':198C 'csv':147C 'current':74B,187C 'cve':14A,17A 'db':3A,23B,30B,85C,102C,212C 'edit':53B,129C 'electron':94C 'element':202C 'execut':82B,180C 'filter':39B,112C 'form':61B,195C 'host':27B 'html':5A,45B,59B,135C,159C,176C,193C 'id':151C 'imag':63B,196C 'import':69B,144C 'includ':115C 'inform':106C 'inject':6A,58B,177C,206C 'inventori':90C 'issu':178C,215C 'javascript':81B,179C 'link':60B,194C 'malici':153C 'manag':91C 'markup':136C 'messag':34B,107C,114C 'name':13A,43B,56B,124C,132C,140C,155C 'open':88C 'output':47B 'packag':20B 'page':10A,71B,167C,213C 'part':2A,12A,22B,29B,42B,55B,84C,101C,123C,131C,139C,150C,154C,211C 'part-db':1A,21B,28B,83C,100C,210C 'patch':218C 'php':24B 'placehold':117C 'polici':77B,190C 'popul':118C 'prior':96C 'raw':38B,111C 'referenc':148C 'render':31B,103C,157C 'result':70B,166C,169C 'secur':76B,189C 'self':26B 'self-host':25B 'sourc':89C 'still':204C 'store':4A,134C,175C 'system':92C 'though':72B 'translat':116C 'trust':209C 'twig':36B,109C 'ui':201C 'unescap':48B 'use':108C 'user':50B,66B,121C,126C,143C,174C 'user-control':120C 'valid':9A,33B,105C,165C 'version':98C,220C 'via':11A 'victim':162C","nicknames":[],"mitigations":[],"who_affected":"Instances of Part-DB before 2.12.2 where more than one user can edit part names and other users import BOM CSV files referencing those parts. Single-user installations or installations where only trusted staff edit parts have a much smaller exposure. Deployments already on 2.12.2 or later are not affected.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-23T04:18:17+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:A/VC:N/VI:H/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":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-55600","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55600","severity":null,"published_at":"2026-10-23T04:18:17+00:00","modified_at":"2026-10-23T19:36:32+00:00","first_seen_at":"2026-10-23T21:57:32+00:00","fetched_at":"2026-10-23T22:29:03+00:00","note":null},{"source":"epss","external_id":"CVE-2026-55600","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-55600","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-24T07:15:51+00:00","fetched_at":"2026-10-24T07:15:51+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"}