Skip to main content

RAE EUVDEUVD-2026-98203

| CVE-2026-108944 LOW
Code Injection (CWE-94)
2026-10-13 VulDB GHSA-4wcr-46q5-cp73
2.4
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain local low-priv access
  2. Delivery
    Supply crafted config 'target' string
  3. Exploit
    Victim loads config via get_obj_from_str
  4. Execution
    Malicious object instantiated
  5. Impact
    Arbitrary Python code executes

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the attacker to control the 'target' argument within a model configuration consumed by the Config-Driven Model Instantiation component, specifically the get_obj_from_str function in src/utils/model_utils.py, which dynamically resolves and instantiates arbitrary Python objects from the config string. Limiting factors: the attack must be performed locally (AV:L), the attacker must already hold at least low-level privileges (PR:L), and a user must actively load/run the malicious configuration (UI:P) - i.e., it is not remotely reachable and is primarily a risk when loading untrusted config files. There is no default-configuration remote unauthenticated path.

Impact

This is a low-priority, low-real-risk issue despite the alarming 'code injection' (CWE-94) and 'RCE' framing. All signals point the same direction: the CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:L/UI:P) requires LOCAL access, already-held privileges (PR:L), and active user interaction (UI:P), and all three impact metrics are only Low (VC:L/VI:L/VA:L), yielding a base score of just 2.4. There is no CISA KEV listing and no public proof-of-concept referenced, so exploitation status is 'no public exploit identified at time of analysis.' The vulnerability is the classic config-driven instantiation pattern (get_obj_from_str resolving a 'target' string to an importable Python object), where the attacker must already control the configuration that the victim loads and runs - meaning the 'injection' is largely self-inflicted code execution rather than a remotely reachable flaw. The only non-aligned nuance is the 'RCE' tag, which overstates severity relative to the Local attack vector and Low impacts; treat 'RCE' as aspirational labeling, not network-exploitable remote code execution. The report originates solely from VulDB and the upstream project has not yet acknowledged the GitHub issue, so vendor confirmation is absent.

Exploit ScenarioDerived

An attacker who can supply or tamper with a model configuration file crafts a malicious 'target' value that get_obj_from_str resolves and instantiates, causing attacker-chosen Python code to execute when the victim loads that config locally. Because exploitation requires local access, prior low-level privileges, and the victim actively loading the poisoned config (UI:P), this is realistic only against someone who ingests untrusted config files. No public exploit code was identified at the time of analysis.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 13, 2026

Code injection in RAE, through its Config-Driven Model Instantiation component, allows a local attacker with low-level privileges to cause arbitrary Python object resolution and potentially code execution when a user loads or runs a crafted model configuration. Exploitation is constrained to local access with required user interaction and only low confidentiality, integrity, and availability impact, so despite the RCE and code-injection tags this is assessed as a low-priority, low-real-risk issue. No public exploit code has been identified at time of analysis, and no vendor-released patch has been identified.

RemediationAI

No vendor-released patch identified at time of analysis; the project was reportedly informed early via an issue report but has not responded. Until a fix is available, do not load or execute model configuration files from untrusted or user-writable locations, restrict write access to configuration directories so low-privileged users cannot tamper with them, and run RAE in a sandbox or container with minimal privileges, no unnecessary network access, and no access to sensitive credentials or file systems. Review get_obj_from_str and replace arbitrary string-to-object resolution with an explicit allowlist of permitted classes and functions; this may break legitimate configurations that rely on dynamic class resolution and must be tested before deployment. Sandboxing can also degrade performance and limit integrations. Monitor https://github.com/bytetriper/RAE/issues/82 and the VulDB advisory https://vuldb.com/vuln/416769 for a vendor update.

Affected VersionsENISA

RAE a4d18c4db766419cbe7cb8c02cd9f7ceb0ec9041

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The flaw is CWE-94 code injection in the get_obj_from_str function of src/utils/model_utils.py. That function dynamically resolves a string from a model configuration into an arbitrary Python object, typically by importing a module and retrieving a callable or class, so an attacker who controls the Target argument in the configuration can influence which object is instantiated. The CPE cpe:2.3:a:repository:rae:*:*:*:*:*:*:*:* identifies the affected product as the RAE repository, which uses rolling releases, so no fixed version is identified. The attack surface is local configuration loading rather than a remote network service. The independent assessment assigns CVSS:3.1 AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L, meaning local access, low privileges, user interaction, and limited impact; there is no default-configuration remote unauthenticated path.

Know when Rae gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulDB) PRIMARY 2.4 LOW
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 4.8 MEDIUM

Local config-driven instantiation needs local access and existing privileges (AV:L, PR:L) plus the victim loading the malicious config (UI:R); impacts kept Low as control over config largely equals self-execution.

3.1 AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L
4.0 AV:L/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A security vulnerability has been detected in repository RAE up to a4d18c4db766419cbe7cb8c02cd9f7ceb0ec9041. Affected by this vulnerability is the function get_obj_from_str of the file src/utils/model_utils.py of the component Config-Driven Model Instantiation. Such manipulation of the argument Target leads to code injection. The attack must be carried out locally. This product utilizes a rolling release system for continuous delivery, and as such, version information for affected or updated releases is not disclosed. The project was informed of the problem early through an issue report but has not responded yet.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Rare
obscure single-maintainer research repo (bytetriper/RAE), no enterprise footprint
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Low

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy