Search
Find a vulnerability
Search criteria
4 vulnerabilities found for inference by xorbitsai
CVE-2026-76841 (GCVE-0-2026-76841)
Vulnerability from nvd – Published: 2026-08-24 13:11 – Updated: 2026-08-24 13:11
VLAI
EPSS
VEX
Title
Xinference through 2.11.0 Remote Code Execution via Hardcoded trust_remote_code in Model Loaders
Summary
Xinference loads models with Hugging Face remote code execution unconditionally enabled, and before version 2.12.0 exposes no setting to disable it. Six loader call sites pass trust_remote_code=True as a literal or as an unconditional default: RerankModel._get_tokenizer in xinference/model/rerank/core.py, SentenceTransformerRerankModel.load in xinference/model/rerank/sentence_transformers/core.py, SentenceTransformerEmbeddingModel.load in xinference/model/embedding/sentence_transformers/core.py, FlagEmbeddingModel.load in xinference/model/embedding/flag/core.py, and two sites in xinference/model/llm/transformers/core.py where PytorchModel._sanitize_model_config and PytorchModel._get_components default the value to True. Because a caller with model launch access can register a model whose type is unknown and supply an arbitrary model path, the server reaches _auto_detect_type and then AutoTokenizer.from_pretrained, which imports and executes Python declared by the model directory's own tokenizer_config.json auto_map, running attacker-supplied code with the privileges of the worker process. Version 2.12.0 gates every site behind allow_trust_remote_code and the XINFERENCE_TRUST_REMOTE_CODE setting, permitting remote code only for bundled built-in models.
Severity
CWE
- CWE-94 - Improper Control of Generation of Code ('Code Injection')
Assigner
References
5 references
| URL | Tags |
|---|---|
| https://github.com/xorbitsai/inference | product |
| https://github.com/xorbitsai/inference/issues/5023 | issue-tracking |
| https://github.com/xorbitsai/inference/pull/5027 | issue-tracking |
| https://github.com/xorbitsai/inference/blob/v2.11… | technical-description |
| https://www.vulncheck.com/advisories/xinference-t… | third-party-advisory |
Impacted products
Date Public
2026-08-01 00:00
{
"containers": {
"cna": {
"affected": [
{
"collectionURL": "https://pypi.org/project/xinference/",
"defaultStatus": "unaffected",
"packageName": "xinference",
"product": "inference",
"vendor": "xorbitsai",
"versions": [
{
"lessThan": "2.12.0",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Fiona"
}
],
"datePublic": "2026-08-01T00:00:00.000Z",
"descriptions": [
{
"lang": "en",
"value": "Xinference loads models with Hugging Face remote code execution unconditionally enabled, and before version 2.12.0 exposes no setting to disable it. Six loader call sites pass trust_remote_code=True as a literal or as an unconditional default: RerankModel._get_tokenizer in xinference/model/rerank/core.py, SentenceTransformerRerankModel.load in xinference/model/rerank/sentence_transformers/core.py, SentenceTransformerEmbeddingModel.load in xinference/model/embedding/sentence_transformers/core.py, FlagEmbeddingModel.load in xinference/model/embedding/flag/core.py, and two sites in xinference/model/llm/transformers/core.py where PytorchModel._sanitize_model_config and PytorchModel._get_components default the value to True. Because a caller with model launch access can register a model whose type is unknown and supply an arbitrary model path, the server reaches _auto_detect_type and then AutoTokenizer.from_pretrained, which imports and executes Python declared by the model directory\u0027s own tokenizer_config.json auto_map, running attacker-supplied code with the privileges of the worker process. Version 2.12.0 gates every site behind allow_trust_remote_code and the XINFERENCE_TRUST_REMOTE_CODE setting, permitting remote code only for bundled built-in models."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 8.7,
"baseSeverity": "HIGH",
"privilegesRequired": "LOW",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH"
},
"format": "CVSS"
},
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 8.8,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-94",
"description": "Improper Control of Generation of Code (\u0027Code Injection\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-24T13:11:59.094Z",
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck"
},
"references": [
{
"tags": [
"product"
],
"url": "https://github.com/xorbitsai/inference"
},
{
"tags": [
"issue-tracking"
],
"url": "https://github.com/xorbitsai/inference/issues/5023"
},
{
"tags": [
"issue-tracking"
],
"url": "https://github.com/xorbitsai/inference/pull/5027"
},
{
"tags": [
"technical-description"
],
"url": "https://github.com/xorbitsai/inference/blob/v2.11.0/xinference/model/rerank/core.py"
},
{
"name": "VulnCheck Advisory: Xinference through 2.11.0 Remote Code Execution via Hardcoded trust_remote_code in Model Loaders",
"tags": [
"third-party-advisory"
],
"url": "https://www.vulncheck.com/advisories/xinference-through-remote-code-execution-via-hardcoded-trust-remote-code-in-model-loaders"
}
],
"title": "Xinference through 2.11.0 Remote Code Execution via Hardcoded trust_remote_code in Model Loaders",
"x_generator": {
"engine": "vulncheck-endgame"
}
}
},
"cveMetadata": {
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"assignerShortName": "VulnCheck",
"cveId": "CVE-2026-76841",
"datePublished": "2026-08-24T13:11:59.094Z",
"dateReserved": "2026-08-19T20:34:19.724Z",
"dateUpdated": "2026-08-24T13:11:59.094Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-61539 (GCVE-0-2026-61539)
Vulnerability from nvd – Published: 2026-08-21 20:37 – Updated: 2026-08-21 20:37
VLAI
EPSS
VEX
Title
Xinference: Remote code execution via unsafe `eval()` in Llama3 tool-call parsing
Summary
Xinference is an inference API for running open-source, speech, and multimodal models. In 2.5.0 and earlier, Xinference passes attacker-influenced Llama3 tool-call output to eval() in xinference/model/llm/tool_parsers/llama3_tool_parser.py and xinference/model/llm/utils.py. Requests to /v1/chat/completions with a tools field flow through xinference/api/restful_api.py, xinference/model/llm/transformers/core.py, handle_chat_result_non_streaming(), and _post_process_completion() before extract_tool_calls() or _eval_llama3_chat_arguments() evaluates the model-generated Python expression. An unauthenticated remote attacker can influence that output through a crafted prompt and execute commands in the Xinference server process context. This issue is fixed in version 2.7.0.
Severity
10 (Critical)
CWE
- CWE-95 - Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')
Assigner
References
4 references
| URL | Tags |
|---|---|
| https://github.com/xorbitsai/inference/security/a… | x_refsource_CONFIRM |
| https://github.com/xorbitsai/inference/pull/4786 | x_refsource_MISC |
| https://github.com/xorbitsai/inference/commit/1b3… | x_refsource_MISC |
| https://github.com/xorbitsai/inference/releases/t… | x_refsource_MISC |
{
"containers": {
"cna": {
"affected": [
{
"product": "inference",
"vendor": "xorbitsai",
"versions": [
{
"status": "affected",
"version": "\u003c 2.7.0"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Xinference is an inference API for running open-source, speech, and multimodal models. In 2.5.0 and earlier, Xinference passes attacker-influenced Llama3 tool-call output to eval() in xinference/model/llm/tool_parsers/llama3_tool_parser.py and xinference/model/llm/utils.py. Requests to /v1/chat/completions with a tools field flow through xinference/api/restful_api.py, xinference/model/llm/transformers/core.py, handle_chat_result_non_streaming(), and _post_process_completion() before extract_tool_calls() or _eval_llama3_chat_arguments() evaluates the model-generated Python expression. An unauthenticated remote attacker can influence that output through a crafted prompt and execute commands in the Xinference server process context. This issue is fixed in version 2.7.0."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 10,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-95",
"description": "CWE-95: Improper Neutralization of Directives in Dynamically Evaluated Code (\u0027Eval Injection\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-21T20:37:02.633Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/xorbitsai/inference/security/advisories/GHSA-x2rj-828p-hx9m",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/xorbitsai/inference/security/advisories/GHSA-x2rj-828p-hx9m"
},
{
"name": "https://github.com/xorbitsai/inference/pull/4786",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xorbitsai/inference/pull/4786"
},
{
"name": "https://github.com/xorbitsai/inference/commit/1b3d220f342ce68d34cec4586d9409d457dadc42",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xorbitsai/inference/commit/1b3d220f342ce68d34cec4586d9409d457dadc42"
},
{
"name": "https://github.com/xorbitsai/inference/releases/tag/v2.7.0",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xorbitsai/inference/releases/tag/v2.7.0"
}
],
"source": {
"advisory": "GHSA-x2rj-828p-hx9m",
"discovery": "UNKNOWN"
},
"title": "Xinference: Remote code execution via unsafe `eval()` in Llama3 tool-call parsing"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-61539",
"datePublished": "2026-08-21T20:37:02.633Z",
"dateReserved": "2026-07-10T16:27:03.093Z",
"dateUpdated": "2026-08-21T20:37:02.633Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-76841 (GCVE-0-2026-76841)
Vulnerability from cvelistv5 – Published: 2026-08-24 13:11 – Updated: 2026-08-24 13:11
VLAI
EPSS
VEX
Title
Xinference through 2.11.0 Remote Code Execution via Hardcoded trust_remote_code in Model Loaders
Summary
Xinference loads models with Hugging Face remote code execution unconditionally enabled, and before version 2.12.0 exposes no setting to disable it. Six loader call sites pass trust_remote_code=True as a literal or as an unconditional default: RerankModel._get_tokenizer in xinference/model/rerank/core.py, SentenceTransformerRerankModel.load in xinference/model/rerank/sentence_transformers/core.py, SentenceTransformerEmbeddingModel.load in xinference/model/embedding/sentence_transformers/core.py, FlagEmbeddingModel.load in xinference/model/embedding/flag/core.py, and two sites in xinference/model/llm/transformers/core.py where PytorchModel._sanitize_model_config and PytorchModel._get_components default the value to True. Because a caller with model launch access can register a model whose type is unknown and supply an arbitrary model path, the server reaches _auto_detect_type and then AutoTokenizer.from_pretrained, which imports and executes Python declared by the model directory's own tokenizer_config.json auto_map, running attacker-supplied code with the privileges of the worker process. Version 2.12.0 gates every site behind allow_trust_remote_code and the XINFERENCE_TRUST_REMOTE_CODE setting, permitting remote code only for bundled built-in models.
Severity
CWE
- CWE-94 - Improper Control of Generation of Code ('Code Injection')
Assigner
References
5 references
| URL | Tags |
|---|---|
| https://github.com/xorbitsai/inference | product |
| https://github.com/xorbitsai/inference/issues/5023 | issue-tracking |
| https://github.com/xorbitsai/inference/pull/5027 | issue-tracking |
| https://github.com/xorbitsai/inference/blob/v2.11… | technical-description |
| https://www.vulncheck.com/advisories/xinference-t… | third-party-advisory |
Impacted products
Date Public
2026-08-01 00:00
{
"containers": {
"cna": {
"affected": [
{
"collectionURL": "https://pypi.org/project/xinference/",
"defaultStatus": "unaffected",
"packageName": "xinference",
"product": "inference",
"vendor": "xorbitsai",
"versions": [
{
"lessThan": "2.12.0",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Fiona"
}
],
"datePublic": "2026-08-01T00:00:00.000Z",
"descriptions": [
{
"lang": "en",
"value": "Xinference loads models with Hugging Face remote code execution unconditionally enabled, and before version 2.12.0 exposes no setting to disable it. Six loader call sites pass trust_remote_code=True as a literal or as an unconditional default: RerankModel._get_tokenizer in xinference/model/rerank/core.py, SentenceTransformerRerankModel.load in xinference/model/rerank/sentence_transformers/core.py, SentenceTransformerEmbeddingModel.load in xinference/model/embedding/sentence_transformers/core.py, FlagEmbeddingModel.load in xinference/model/embedding/flag/core.py, and two sites in xinference/model/llm/transformers/core.py where PytorchModel._sanitize_model_config and PytorchModel._get_components default the value to True. Because a caller with model launch access can register a model whose type is unknown and supply an arbitrary model path, the server reaches _auto_detect_type and then AutoTokenizer.from_pretrained, which imports and executes Python declared by the model directory\u0027s own tokenizer_config.json auto_map, running attacker-supplied code with the privileges of the worker process. Version 2.12.0 gates every site behind allow_trust_remote_code and the XINFERENCE_TRUST_REMOTE_CODE setting, permitting remote code only for bundled built-in models."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 8.7,
"baseSeverity": "HIGH",
"privilegesRequired": "LOW",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH"
},
"format": "CVSS"
},
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 8.8,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-94",
"description": "Improper Control of Generation of Code (\u0027Code Injection\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-24T13:11:59.094Z",
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck"
},
"references": [
{
"tags": [
"product"
],
"url": "https://github.com/xorbitsai/inference"
},
{
"tags": [
"issue-tracking"
],
"url": "https://github.com/xorbitsai/inference/issues/5023"
},
{
"tags": [
"issue-tracking"
],
"url": "https://github.com/xorbitsai/inference/pull/5027"
},
{
"tags": [
"technical-description"
],
"url": "https://github.com/xorbitsai/inference/blob/v2.11.0/xinference/model/rerank/core.py"
},
{
"name": "VulnCheck Advisory: Xinference through 2.11.0 Remote Code Execution via Hardcoded trust_remote_code in Model Loaders",
"tags": [
"third-party-advisory"
],
"url": "https://www.vulncheck.com/advisories/xinference-through-remote-code-execution-via-hardcoded-trust-remote-code-in-model-loaders"
}
],
"title": "Xinference through 2.11.0 Remote Code Execution via Hardcoded trust_remote_code in Model Loaders",
"x_generator": {
"engine": "vulncheck-endgame"
}
}
},
"cveMetadata": {
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"assignerShortName": "VulnCheck",
"cveId": "CVE-2026-76841",
"datePublished": "2026-08-24T13:11:59.094Z",
"dateReserved": "2026-08-19T20:34:19.724Z",
"dateUpdated": "2026-08-24T13:11:59.094Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-61539 (GCVE-0-2026-61539)
Vulnerability from cvelistv5 – Published: 2026-08-21 20:37 – Updated: 2026-08-21 20:37
VLAI
EPSS
VEX
Title
Xinference: Remote code execution via unsafe `eval()` in Llama3 tool-call parsing
Summary
Xinference is an inference API for running open-source, speech, and multimodal models. In 2.5.0 and earlier, Xinference passes attacker-influenced Llama3 tool-call output to eval() in xinference/model/llm/tool_parsers/llama3_tool_parser.py and xinference/model/llm/utils.py. Requests to /v1/chat/completions with a tools field flow through xinference/api/restful_api.py, xinference/model/llm/transformers/core.py, handle_chat_result_non_streaming(), and _post_process_completion() before extract_tool_calls() or _eval_llama3_chat_arguments() evaluates the model-generated Python expression. An unauthenticated remote attacker can influence that output through a crafted prompt and execute commands in the Xinference server process context. This issue is fixed in version 2.7.0.
Severity
10 (Critical)
CWE
- CWE-95 - Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')
Assigner
References
4 references
| URL | Tags |
|---|---|
| https://github.com/xorbitsai/inference/security/a… | x_refsource_CONFIRM |
| https://github.com/xorbitsai/inference/pull/4786 | x_refsource_MISC |
| https://github.com/xorbitsai/inference/commit/1b3… | x_refsource_MISC |
| https://github.com/xorbitsai/inference/releases/t… | x_refsource_MISC |
{
"containers": {
"cna": {
"affected": [
{
"product": "inference",
"vendor": "xorbitsai",
"versions": [
{
"status": "affected",
"version": "\u003c 2.7.0"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Xinference is an inference API for running open-source, speech, and multimodal models. In 2.5.0 and earlier, Xinference passes attacker-influenced Llama3 tool-call output to eval() in xinference/model/llm/tool_parsers/llama3_tool_parser.py and xinference/model/llm/utils.py. Requests to /v1/chat/completions with a tools field flow through xinference/api/restful_api.py, xinference/model/llm/transformers/core.py, handle_chat_result_non_streaming(), and _post_process_completion() before extract_tool_calls() or _eval_llama3_chat_arguments() evaluates the model-generated Python expression. An unauthenticated remote attacker can influence that output through a crafted prompt and execute commands in the Xinference server process context. This issue is fixed in version 2.7.0."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 10,
"baseSeverity": "CRITICAL",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "NONE",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-95",
"description": "CWE-95: Improper Neutralization of Directives in Dynamically Evaluated Code (\u0027Eval Injection\u0027)",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-21T20:37:02.633Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/xorbitsai/inference/security/advisories/GHSA-x2rj-828p-hx9m",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/xorbitsai/inference/security/advisories/GHSA-x2rj-828p-hx9m"
},
{
"name": "https://github.com/xorbitsai/inference/pull/4786",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xorbitsai/inference/pull/4786"
},
{
"name": "https://github.com/xorbitsai/inference/commit/1b3d220f342ce68d34cec4586d9409d457dadc42",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xorbitsai/inference/commit/1b3d220f342ce68d34cec4586d9409d457dadc42"
},
{
"name": "https://github.com/xorbitsai/inference/releases/tag/v2.7.0",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/xorbitsai/inference/releases/tag/v2.7.0"
}
],
"source": {
"advisory": "GHSA-x2rj-828p-hx9m",
"discovery": "UNKNOWN"
},
"title": "Xinference: Remote code execution via unsafe `eval()` in Llama3 tool-call parsing"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-61539",
"datePublished": "2026-08-21T20:37:02.633Z",
"dateReserved": "2026-07-10T16:27:03.093Z",
"dateUpdated": "2026-08-21T20:37:02.633Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}