{"id":"CVE-2026-122188","kind":"vulnerability","aliases":["CVE-2026-122188"],"related":[],"title":"KnowledgeGraphEmbedding: path traversal in checkpoint loading lets attackers read files","description":"A flaw has been found in DeepGraphLearning KnowledgeGraphEmbedding up to 2e440e0f9c687314d5ff67ead68ce985dc446e3a. Impacted is the function override_config of the file codes/run.py of the component Checkpoint Loading. This manipulation of the argument data_path causes path traversal. The attack can be initiated remotely. The exploit has been published and may be used. Continious delivery with rolling releases is used by this product. Therefore, no version details of affected nor updated releases are available. The project was informed of the problem early through an issue report but has not responded yet.","summary":"DeepGraphLearning KnowledgeGraphEmbedding's override_config function in codes/run.py does not restrict the data_path argument, so a crafted path can escape the intended directory. An attacker who can supply that argument can read files the process can reach on the host.","severity":"high","cvss":7.5,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["knowledgegraphembedding","other","python","research-code","self-hosted"],"not_affected_if":["cli-only-trusted-user","no-untrusted-input","offline-only-use"],"how_to_check":"- Check whether you cloned DeepGraphLearning/KnowledgeGraphEmbedding or vendored codes/run.py (any commit up to and including 2e440e0f9c687314d5ff67ead68ce985dc446e3a, which is the latest as far as the sources say).\n- Check whether --data_path, --init_checkpoint or a checkpoint's config.json can be set by anyone you do not trust (a web service, job queue, notebook or shared checkpoint wrapped around run.py). Plain local command-line use by the person running it is not an exposure.\n- Files read must match the fixed names (entities.dict, relations.dict, train.txt, valid.txt, test.txt) under the supplied path, and contents are parsed as tab-separated triples, so impact is mainly limited to those files and their parse errors.","fix":null,"status":"open","published_at":"2026-11-05T03:17:21+00:00","first_seen_at":"2026-11-05T03:31:40+00:00","triaged_at":"2026-11-05T03:33:26+00:00","updated_at":"2026-11-05T03:34:16+00:00","category":"other","confidence":0.7,"triage":{"at":"2026-11-05T03:33:26Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"internet","title":"KnowledgeGraphEmbedding: path traversal in checkpoint loading lets attackers read files","impact":"medium","summary":"DeepGraphLearning KnowledgeGraphEmbedding's override_config function in codes/run.py does not restrict the data_path argument, so a crafted path can escape the intended directory. An attacker who can supply that argument can read files the process can reach on the host.","audience":"developers","category":"other","nicknames":[],"who_cares":["knowledgegraphembedding","python","self-hosted"],"confidence":0.6,"fix_status":"unknown","needs_auth":"unknown","worst_case":"Arbitrary server files readable through the data_path argument","analyst_note":"Exploit is published and no fix or version range is stated; confirm from the NVD entry and the project's repository whether any commit or patch addresses override_config.","how_to_check":"- Check whether the repository is cloned or deployed and whether `codes/run.py` is present\n- Look for calls to `override_config` or use of the `data_path` argument in your own wrappers\n- Confirm the exact commit in use; the sources say no version range exists (rolling releases)","plain_action":"","needs_analyst":true,"not_affected_if":["no-untrusted-input","offline-only-use"],"who_is_affected":"Teams that run the KnowledgeGraphEmbedding code, especially if the checkpoint loading path accepts input from outside the team. The sources say the product uses rolling releases with no version details, and the project has not responded to an early issue report. Teams that only use the code offline with trusted arguments are unlikely to be exposed.","user_interaction":"unknown","needs_special_setup":"unknown","severity_if_unknown":"high"},"cost_usd":0.000736,"input_tokens":4346,"output_tokens":603,"severity_before":"high"},"analyst_status":"done","analyst_note":"Exploit is published and no fix or version range is stated; confirm from the NVD entry and the project's repository whether any commit or patch addresses override_config.","search":"'-122188':13A,16A '-2026':12A,15A '2e440':77C 'affect':134C 'argument':40B,56B,98C 'attack':8A,51B,105C 'avail':139C 'caus':101C 'checkpoint':5A,92C 'code':22B 'codes/run.py':33B,88C 'compon':91C 'config':30B,84C 'contini':119C 'craft':43B 'cve':11A,14A 'data':38B,99C 'deepgraphlearn':26B,73C 'deliveri':120C 'detail':132C 'directori':49B 'e0f9c687314d5ff67ead68ce985dc446e3a':78C 'earli':147C 'escap':46B 'exploit':111C 'file':10A,59B,87C 'flaw':68C 'found':71C 'function':31B,82C 'host':25B,66B 'impact':79C 'inform':143C 'initi':108C 'intend':48B 'issu':150C 'knowledgegraphembed':1A,17B,27B,74C 'let':7A 'load':6A,93C 'manipul':95C 'may':116C 'overrid':29B,83C 'path':2A,39B,44B,100C,102C 'problem':146C 'process':61B 'product':128C 'project':141C 'publish':114C 'python':19B 'reach':63B 'read':9A,58B 'releas':123C,137C 'remot':109C 'report':151C 'research':21B 'research-cod':20B 'respond':155C 'restrict':36B 'roll':122C 'self':24B 'self-host':23B 'suppli':54B 'therefor':129C 'travers':3A,103C 'updat':136C 'use':118C,125C 'version':131C 'yet':156C","nicknames":[],"mitigations":[],"who_affected":"Teams that wrap codes/run.py of KnowledgeGraphEmbedding in a service, pipeline or shared notebook where someone else can supply --data_path or a checkpoint directory with a crafted config.json. The script is a research command-line tool, so running it yourself with your own arguments is not exposed. No fixed version exists: the project uses rolling commits and has not answered the issue report.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"none","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["high","knowledgegraphembedding","other","python","researchcode","selfhosted"],"campaign_type":null,"first_public_at":"2026-11-05T03:17:21+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/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-122188","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-122188","severity":null,"published_at":"2026-11-05T03:17:21+00:00","modified_at":"2026-11-05T03:17:21+00:00","first_seen_at":"2026-11-05T03:31:40+00:00","fetched_at":"2026-11-05T03:31:40+00:00","note":null},{"source":"analyst","external_id":"CVE-2026-122188:1750","url":"https://github.com/DeepGraphLearning/KnowledgeGraphEmbedding/blob/master/codes/run.py","severity":null,"published_at":"2026-11-05T03:34:16+00:00","modified_at":"2026-11-05T03:34:16+00:00","first_seen_at":"2026-11-05T03:34:16+00:00","fetched_at":"2026-11-05T03:34:16+00:00","note":"Read VulDB entry and codes/run.py on master: override_config/main join --data_path (CLI arg, or config.json value from the --init_checkpoint dir) into os.path.join with no validation, then open entities.dict, relations.dict, train/valid/test.txt. No fix, no versions (rolling, affects up to 2e440e0); project silent per VulDB. No in-the-wild exploitation seen; no maintainer page, so nothing marked verified. I did not look for the public PoC or the issue thread. No X search done.","cites":["https://github.com/DeepGraphLearning/KnowledgeGraphEmbedding/blob/master/codes/run.py","https://vuldb.com/vuln/431162"]}],"documents":[{"id":72851,"url":"https://github.com/DeepGraphLearning/KnowledgeGraphEmbedding/blob/master/codes/run.py","title":"KnowledgeGraphEmbedding codes/run.py (master)","kind":"other","source":"analyst","publisher":null,"text":null,"published_at":null,"relation":"describes","confidence":null,"note":null},{"id":72852,"url":"https://vuldb.com/vuln/431162","title":"VDB-431162 KnowledgeGraphEmbedding override_config path traversal","kind":"advisory","source":"analyst","publisher":null,"text":null,"published_at":null,"relation":"advisory","confidence":null,"note":null}],"exploit_sources":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}