/

CVE-2026-123024

Severity:

HIGH RISK

(7.3)

Authentication Bypass (CWE-287) in AgentScope Service

CVE-2026-123024

Deferred

Vulnerability type

Category:

Authentication Bypass

CWE:

CWE-287, CWE-306

Impact:

Unauthorized access

Severity:

HIGH RISK

(7.3)

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

AgentScope's Agent Service may fail to properly authenticate requests when the X-User-ID argument is manipulated. Because the affected user ID handling can allow authentication checks to be bypassed, a remote attacker may gain access to functionality as an unauthenticated or unintended user.

AgentScope's Agent Service may fail to properly authenticate requests when the X-User-ID argument is manipulated. Because the affected user ID handling can allow authentication checks to be bypassed, a remote attacker may gain access to functionality as an unauthenticated or unintended user.

Affected context

The issue is reported in the get_current_user_id function in src/agentscope/app/deps.py, within the AgentScope Agent Service. Deployments may be at risk when this code handles remotely supplied X-User-ID values without reliably verifying the associated user or requiring authentication.

The issue is reported in the get_current_user_id function in src/agentscope/app/deps.py, within the AgentScope Agent Service. Deployments may be at risk when this code handles remotely supplied X-User-ID values without reliably verifying the associated user or requiring authentication.

Exploit preconditions

  • Attack surface: The Agent Service must be reachable by the attacker.
  • Required access: The reported behavior does not require prior authentication.
  • Trigger point: Processing of a request that supplies or manipulates the X-User-ID argument.
  • Why exploitation is possible: If the supplied identifier is trusted without an effective authentication check, the request may be treated as belonging to a user without verifying that identity.
  • Attack surface: The Agent Service must be reachable by the attacker.
  • Required access: The reported behavior does not require prior authentication.
  • Trigger point: Processing of a request that supplies or manipulates the X-User-ID argument.
  • Why exploitation is possible: If the supplied identifier is trusted without an effective authentication check, the request may be treated as belonging to a user without verifying that identity.

Why this happens

The reported flaw is an authentication-control weakness: identity information from a request may influence user resolution without sufficient verification. This aligns primarily with CWE-287: Improper Authentication and may also relate to CWE-306: Missing Authentication for Critical Function when protected functionality can be reached without an authentication step. The underlying insecure pattern is treating a caller-controlled identity value as proof of identity.

The reported flaw is an authentication-control weakness: identity information from a request may influence user resolution without sufficient verification. This aligns primarily with CWE-287: Improper Authentication and may also relate to CWE-306: Missing Authentication for Critical Function when protected functionality can be reached without an authentication step. The underlying insecure pattern is treating a caller-controlled identity value as proof of identity.

Potential impact

  • An attacker may access functionality intended for authenticated users.
  • Requests could be attributed to an unintended user identity.
  • Unauthorized actions or exposure of user-scoped information may occur, depending on the service's permissions and data boundaries.
  • An attacker may access functionality intended for authenticated users.
  • Requests could be attributed to an unintended user identity.
  • Unauthorized actions or exposure of user-scoped information may occur, depending on the service's permissions and data boundaries.

General mitigation guidance

Defensive approaches generally ensure that identity is established through a trusted authentication mechanism rather than a caller-controlled header.

Common patterns include:

  • Deriving user identity from a validated authentication context.
  • Treating X-User-ID as untrusted unless it is set or cryptographically verified by a trusted gateway.
  • Applying authorization checks to every protected operation, including checks that bind the requested identity to the authenticated principal.
  • Failing closed when authentication data is absent, invalid, or inconsistent.
  • Limiting service and user privileges to the minimum needed.

Defensive approaches generally ensure that identity is established through a trusted authentication mechanism rather than a caller-controlled header.

Common patterns include:

  • Deriving user identity from a validated authentication context.
  • Treating X-User-ID as untrusted unless it is set or cryptographically verified by a trusted gateway.
  • Applying authorization checks to every protected operation, including checks that bind the requested identity to the authenticated principal.
  • Failing closed when authentication data is absent, invalid, or inconsistent.
  • Limiting service and user privileges to the minimum needed.

How teams detect issues like this

Review authentication dependencies and request-handling code for identity values taken directly from headers or other caller-controlled inputs. Static analysis and code review can look for protected routes that rely on user identifiers without validating an authenticated principal. Policy checks can require authentication and authorization on sensitive endpoints; logs may also help identify requests where header identities do not match trusted authentication context.

Review authentication dependencies and request-handling code for identity values taken directly from headers or other caller-controlled inputs. Static analysis and code review can look for protected routes that rely on user identifiers without validating an authenticated principal. Policy checks can require authentication and authorization on sensitive endpoints; logs may also help identify requests where header identities do not match trusted authentication context.

Sources

SourceLink
github.comgithub.com/agentscope-ai/agentscope/
github.comgithub.com/agentscope-ai/agentscope/issues/3314
github.comgithub.com/agentscope-ai/agentscope/pull/3448
github.comgithub.com/ybyu-ieu/agent-security-advisories/blob/main/agentscope/agentscope-agent-service-x-user-id-missing-authentication.md
vuldb.comvuldb.com/cve/CVE-2026-123024
vuldb.comvuldb.com/submit/1033132
vuldb.comvuldb.com/vuln/431397
vuldb.comvuldb.com/vuln/431397/cti

Frequently asked

questions

The report describes remote exploitation through manipulation of X-User-ID, provided the affected Agent Service is reachable.

The reported issue involves missing authentication, so prior authentication may not be required. Actual exposure depends on deployment configuration and access controls.

Establish identity from a validated authentication context, and do not treat a caller-controlled user ID as proof of identity.

Require authentication and authorization checks on protected operations, validate identity at trust boundaries, and test that missing or inconsistent credentials fail closed.

The report describes remote exploitation through manipulation of X-User-ID, provided the affected Agent Service is reachable.

The reported issue involves missing authentication, so prior authentication may not be required. Actual exposure depends on deployment configuration and access controls.

Establish identity from a validated authentication context, and do not treat a caller-controlled user ID as proof of identity.

Require authentication and authorization checks on protected operations, validate identity at trust boundaries, and test that missing or inconsistent credentials fail closed.

Find out what's already
exploitable in your codebase.