Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach exposed llm_server port
-
DeliveryTrigger Werkzeug debugger error page
-
ExploitDerive debugger PIN
-
ExecutionExecute Python via debugger console
-
ImpactRun OS commands as llm_server
Vulnerability Assessment
| Weakness |
CWE
|
| Exploitation Conditions | The pre-patch code hardcodes app.run(host='0.0.0.0', threaded=True, debug=True, port=args.port) in llm_server/app.py, so the vulnerable Werkzeug debugger is enabled by default (not an opt-in misconfiguration) and the server is bound to all interfaces. Required for exploitation: (1) network reachability to the llm_server port - anyone able to route to the host, including LAN or internet exposure if not firewalled; (2) the attacker must obtain or derive the Werkzeug debugger PIN (reflected as AT:P in the CVSS 4.0 vector), which is the principal limiting factor on otherwise unauthenticated access. The primary deployment-level limiter is network exposure: instances bound only behind localhost/loopback or a firewall are not remotely reachable. No user interaction and no application authentication are required once the port is reachable and the PIN is obtained. |
| Impact | Multiple decision signals align toward high priority: CVSS 4.0 base score 9.2 (Critical) with AV:N/AC:L/PR:N/UI:N and VC:H/VI:H/VA:H, a vuln.today Decision label of act_now, a vendor patch available, and a dedicated VulnCheck advisory. The vulnerability class is well understood and reliably exploitable - a Flask application hardcoded with debug=True while binding to 0.0.0.0 exposes the Werkzeug interactive debugger, which grants arbitrary Python/OS command execution to anyone who can reach the port and present the correct debugger PIN. One mitigating nuance: the CVSS 4.0 vector sets AT:P (an attack requirement), reflecting that the attacker must obtain the 'derivable' Werkzeug PIN rather than execute entirely unconditionally; this is the one factor separating this from a trivial drive-by RCE. No EPSS probability score and no CISA KEV status were provided in the input, so widespread-exploitation likelihood cannot be quantified and active exploitation is not confirmed; the act_now label here derives from severity, exploitability, and patch availability rather than from observed in-the-wild use. Despite missing EPSS/KEV telemetry, the combination of unauthenticated network reach, full CIA impact, and a defaulted-on debug mode makes this a genuine priority for any exposed AgenticSeek instance rather than a high-CVSS-but-low-real-risk item. |
| Exploit ScenarioDerived | An AgenticSeek llm_server (pre-commit 409840c) is reachable on its network port because it binds to 0.0.0.0 with Flask debug mode hardcoded on. An attacker triggers an application error to surface the Werkzeug debugger, derives the debugger PIN from information the server exposes, and then uses the interactive console to run arbitrary Python and shell commands as the llm_server process. No public exploit was identified at time of analysis, but the technique is a well-documented, low-complexity attack pattern. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 23, 2026
Remote code execution in AgenticSeek's bundled llm_server component, which ships with Flask debug mode hardcoded on (app.run(host='0.0.0.0', ..., debug=True)) so the interactive Werkzeug debugger is exposed on every interface by default rather than through an opt-in misconfiguration. Any network-reachable instance running a build prior to commit 409840c033851d861c5c83a91c05fd4a2a75a096 is in scope; an unauthenticated remote attacker (CVSS PR:N, no user interaction) who can reach the llm_server port and obtain the derivable Werkzeug debugger PIN can execute arbitrary Python code and operating system commands with the llm_server process's privileges, giving high confidentiality, integrity and availability impact. The assessed vector (CVSS:3.1 AV:N/AC:H/PR:N/UI:N) reflects that PIN derivation, not application authentication, is the rate-limiting step, while CVSS 4.0 scores it 9.2 Critical with AT:P; no public exploit code and no confirmed active exploitation were identified at time of analysis, though a vuln.today decision label of act_now and a vendor-released fix make prompt patching the priority.
RemediationAI
Update AgenticSeek to commit 409840c033851d861c5c83a91c05fd4a2a75a096 or later, which is the vendor-released fix (patch references: https://github.com/Fosowl/agenticSeek/commit/409840c033851d861c5c83a91c05fd4a2a75a096 and https://github.com/Fosowl/agenticSeek/pull/558); no separately tagged release version is confirmed in the available data, so pin to that commit or a build that includes it. If immediate updating is not possible, edit llm_server/app.py to call app.run(host='0.0.0.0', threaded=True, debug=False, port=args.port) - which removes the debugger console and therefore the code-execution path but also removes interactive tracebacks for debugging - and additionally bind the service to 127.0.0.1 or firewall the llm_server port so only trusted hosts can route to it, at the cost of losing remote access to the LLM endpoint. Review the same commit's removal of verify=False in sources/tools/searxSearch.py, since leaving that in place keeps TLS verification disabled for SearXNG requests.
Affected VersionsENISA
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
AgenticSeek exposes a small Flask service in llm_server/app.py that is started directly through app.run() rather than a WSGI container. The pre-patch call hardcodes debug=True together with host='0.0.0.0', which enables the Werkzeug interactive debugger and publishes it on all interfaces; Werkzeug's debugger console accepts Python expressions over HTTP and is gated only by an authentication PIN that Werkzeug derives from host and machine attributes of the running process - hence 'derivable' rather than secret. CWE-489 (Active Debug Code) is the root-cause class: the shipped artifact contains debug functionality that should never be present in a deployed build, and here it is the default state. CVE-2026-115727 tracks the fix in commit 409840c033851d861c5c83a91c05fd4a2a75a096 (PR #558), which flips debug to False with an inline comment noting the debugger is remote code execution on 0.0.0.0; the same commit also drops verify=False from the SearXNG HTTP calls in sources/tools/searxSearch.py, a separate TLS-verification hardening change in the same release. The trigger path beyond 'reach the port, derive the PIN, submit code through the debugger console' is not further described in the available sources.
Know when Agenticseek 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
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network-reachable and unauthenticated (AV:N/PR:N/UI:N), but obtaining the derivable Werkzeug PIN is a required condition so AC:H; debugger console yields full code execution, so C:H/I:H/A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
AgenticSeek before commit 409840c contains a remote code execution vulnerability because llm_server/app.py hardcodes Flask debug mode while binding to all interfaces. Attackers who reach the server port and obtain the derivable Werkzeug debugger PIN can execute Python code and operating system commands with llm_server privileges.
Articles & Coverage 1
Executive ViewAI
A critical remote code execution vulnerability in AgenticSeek's bundled llm_server component exposes a Werkzeug debugger on all network interfaces due to a hardcoded debug mode, allowing unauthenticated attackers to execute arbitrary code with the service's privileges. This affects any organization running pre-patch builds of AgenticSeek's llm_server that are network-accessible, potentially leading to full system compromise, data breaches, and service disruption. Leadership should prioritize immediate patching due to the critical severity and the default exposure.
Apply vendor patch.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
More in Agenticseek
View allRemote code execution in Fosowl agenticSeek 0.1.0 allows unauthenticated attackers to inject arbitrary Python code via t
Unauthenticated remote code execution in AgenticSeek (commit fc242c7) lets any network-adjacent attacker run arbitrary O
EUVD-2026-108715
GHSA-r5cp-9ffr-m5mf
NVD
CVE.org
Vulnrichment
Exploit-DB