/

CVE-2026-109444

Severity:

CRITICAL RISK

(9.8)

Authorization Bypass (CWE-862) in OpenSRE Presenter

CVE-2026-109444

Deferred

Vulnerability type

Category:

Authorization Bypass

CWE:

CWE-862

Impact:

Unauthorized Command Execution and Credential Exposure

Severity:

CRITICAL RISK

(9.8)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

OpenSRE contains an approval gate bypass in its headless presenter, where the

execution_allowed() check always permits execution. An attacker who can place

instructions in alerts or Slack messages processed by the agent may cause shell

commands to run on the host without confirmation, potentially exposing sensitive

credentials.

OpenSRE contains an approval gate bypass in its headless presenter, where the

execution_allowed() check always permits execution. An attacker who can place

instructions in alerts or Slack messages processed by the agent may cause shell

commands to run on the host without confirmation, potentially exposing sensitive

credentials.

Affected context

The issue affects OpenSRE deployments that use the headless presenter to triage

alerts or Slack messages and invoke shell-related actions. It becomes risky when

externally influenced message content is processed by the agent and the presenter

relies on its execution authorization callback to enforce human approval.

The issue affects OpenSRE deployments that use the headless presenter to triage

alerts or Slack messages and invoke shell-related actions. It becomes risky when

externally influenced message content is processed by the agent and the presenter

relies on its execution authorization callback to enforce human approval.

Exploit preconditions

  • Attack surface: Alerts, Slack messages, or other content ingested by the agent
  • Required access: Ability to influence or submit content that OpenSRE will triage
  • Trigger point: Agent-generated shell command execution through the headless presenter
  • Why exploitation is possible: The presenter's execution_allowed() function

unconditionally returns True, bypassing the intended approval gate

  • Attack surface: Alerts, Slack messages, or other content ingested by the agent
  • Required access: Ability to influence or submit content that OpenSRE will triage
  • Trigger point: Agent-generated shell command execution through the headless presenter
  • Why exploitation is possible: The presenter's execution_allowed() function

unconditionally returns True, bypassing the intended approval gate

Why this happens

The vulnerability results from an authorization decision that is implemented as an

unconditional allow rather than as a policy- or user-controlled check. This means

the headless presenter treats a potentially untrusted agent request as approved

without verifying authorization or requiring confirmation. The behavior maps to

CWE-862: Missing Authorization, because a security-sensitive operation lacks an

effective access-control decision.

The vulnerability results from an authorization decision that is implemented as an

unconditional allow rather than as a policy- or user-controlled check. This means

the headless presenter treats a potentially untrusted agent request as approved

without verifying authorization or requiring confirmation. The behavior maps to

CWE-862: Missing Authorization, because a security-sensitive operation lacks an

effective access-control decision.

Potential impact

  • Attackers may cause unauthorized shell commands to run on the host
  • The OpenSRE runtime or connected systems could be compromised
  • LLM, Slack, and cloud credentials may be exposed or exfiltrated
  • Attackers could modify local data, configuration, or operational workflows
  • Further lateral movement may be possible depending on process privileges and network access
  • Attackers may cause unauthorized shell commands to run on the host
  • The OpenSRE runtime or connected systems could be compromised
  • LLM, Slack, and cloud credentials may be exposed or exfiltrated
  • Attackers could modify local data, configuration, or operational workflows
  • Further lateral movement may be possible depending on process privileges and network access

General mitigation guidance

Mitigation generally focuses on restoring an explicit authorization boundary around

command execution and reducing trust in agent-controlled content.

Common defensive patterns include:

  • Require affirmative, human-controlled approval for sensitive shell operations
  • Default authorization checks to deny unless a narrowly scoped policy permits execution
  • Separate message interpretation from privileged action execution
  • Treat alerts, Slack content, and model-generated instructions as untrusted input
  • Apply command allowlists, capability restrictions, and least-privilege runtime identities
  • Isolate command execution from credentials and network resources that are not required
  • Record authorization decisions and command activity for accountability and review

Mitigation generally focuses on restoring an explicit authorization boundary around

command execution and reducing trust in agent-controlled content.

Common defensive patterns include:

  • Require affirmative, human-controlled approval for sensitive shell operations
  • Default authorization checks to deny unless a narrowly scoped policy permits execution
  • Separate message interpretation from privileged action execution
  • Treat alerts, Slack content, and model-generated instructions as untrusted input
  • Apply command allowlists, capability restrictions, and least-privilege runtime identities
  • Isolate command execution from credentials and network resources that are not required
  • Record authorization decisions and command activity for accountability and review

How teams detect issues like this

Organizations can look for this class of issue through:

  • Static analysis for authorization callbacks that unconditionally return an allow value
  • Code review checks covering approval gates before shell, filesystem, and network actions
  • Tests that verify unapproved agent requests cannot invoke privileged operations
  • Policy enforcement requiring explicit approval for high-impact tools
  • Runtime monitoring for shell commands initiated from alert or messaging workflows
  • Audit correlation between incoming messages, authorization decisions, and executed commands

Automated code review and security scanning tools may help identify unconditional

authorization paths, but behavioral tests and policy validation are also important.

Organizations can look for this class of issue through:

  • Static analysis for authorization callbacks that unconditionally return an allow value
  • Code review checks covering approval gates before shell, filesystem, and network actions
  • Tests that verify unapproved agent requests cannot invoke privileged operations
  • Policy enforcement requiring explicit approval for high-impact tools
  • Runtime monitoring for shell commands initiated from alert or messaging workflows
  • Audit correlation between incoming messages, authorization decisions, and executed commands

Automated code review and security scanning tools may help identify unconditional

authorization paths, but behavioral tests and policy validation are also important.

Sources

SourceLink
github.comgithub.com/Tracer-Cloud/opensre/blob/8eba8c9301fa954d9eecb1693b7e2021215ec2ec/gateway/transports/slack/processing/dispatcher.py#L276
github.comgithub.com/Tracer-Cloud/opensre/blob/8eba8c9301fa954d9eecb1693b7e2021215ec2ec/tools/interactive_shell/subprocess_presenter.py#L41
lasso.securitylasso.security/vulnerability-database/cve-2026-109444
vulncheck.comvulncheck.com/advisories/opensre-through-0.1.2026.10.19-approval-gate-bypass-via-shell-run-prompt-injection

Frequently asked

questions

It may be exploitable through remotely influenced alerts or Slack messages when those

messages are processed by an OpenSRE agent with access to the vulnerable presenter.

The exact scope depends on message ingestion, authentication, and network controls.

An attacker generally needs a way to influence content that the agent will triage.

That may involve authenticated access to an integrated messaging or alerting system,

or another trusted source accepted by the deployment.

Make command execution deny-by-default and require an explicit, independently enforced

approval decision before allowing sensitive actions. Agent-generated instructions and

incoming message content should not serve as authorization.

Use least-privilege execution identities, strict tool policies, approval-state tests,

input trust boundaries, and audit monitoring for actions initiated from external

messages. Ensure security-sensitive authorization logic cannot silently default to allow.

It may be exploitable through remotely influenced alerts or Slack messages when those

messages are processed by an OpenSRE agent with access to the vulnerable presenter.

The exact scope depends on message ingestion, authentication, and network controls.

An attacker generally needs a way to influence content that the agent will triage.

That may involve authenticated access to an integrated messaging or alerting system,

or another trusted source accepted by the deployment.

Make command execution deny-by-default and require an explicit, independently enforced

approval decision before allowing sensitive actions. Agent-generated instructions and

incoming message content should not serve as authorization.

Use least-privilege execution identities, strict tool policies, approval-state tests,

input trust boundaries, and audit monitoring for actions initiated from external

messages. Ensure security-sensitive authorization logic cannot silently default to allow.

Find out what's already
exploitable in your codebase.