Read the docs
TI-2026-40492 Aliases CVE-2026-56104GHSA-c39v-8hrw-h448

Chainlit < 2.10.1 Session Hijacking via WebSocket Session Restoration

Priority MEDIUM 40CWE-862Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
High
Attack requirements
None
Impact type
Security bypass
Confidentiality · integrity · availability
High · High · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-862.

Summary

Chainlit before 2.10.1 contains a session hijacking vulnerability that allows unauthenticated attackers to restore and inherit authenticated user sessions by presenting a valid sessionId during WebSocket session restoration without ownership verification. Attackers can exploit the restore_existing_session path to assume a victim's permissions and roles, enabling unauthorized invocation of tools and access to data restricted to the authenticated victim.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00417 36th percentileScored 2026-11-07
Fix Fixed chainlit (Chainlit): 2.10.1chainlit (PyPI): 2.10.1

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
Chainlitchainlitbefore 2.10.12.10.1Patch availableCNA
—chainlit (PyPI)before 2.10.12.10.1Patch availableGHSA-c39v-8hrw-h448
  • chainlit VendorChainlit Affected before 2.10.1 Fixed in 2.10.1 Patch available CNA
  • chainlit (PyPI) Vendor— Affected before 2.10.1 Fixed in 2.10.1 Patch available GHSA-c39v-8hrw-h448

Remediation

  • Fix · CNA chainlit (Chainlit) Fixed in 2.10.1
  • Fix · GHSA-c39v-8hrw-h448 chainlit (PyPI) Fixed in 2.10.1 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-56104
  2. 2026-10-03 Alias added: GHSA-c39v-8hrw-h448

References

  • TI-2026-32874 Chainlit: Command injection via MCP stdio transport allows unauthenticated remote code execution CVSS 3.1CRITICAL 9.8
  • TI-2026-17828 Chainlit < 2.9.4 Arbitrary File Read via /project/element CVSS 4.0HIGH 7.1
  • TI-2026-83858 Chainlit SSRF via Semicolon Path Segment in MCP allowed_urls CVSS 4.0MEDIUM 6.3
  • TI-2026-56755 Chainlit Feedback Endpoints Missing Ownership Validation CVSS 4.0MEDIUM 6.0
  • TI-2026-17829 Chainlit < 2.9.4 SQLAlchemy Data Layer SSRF via /project/element CVSS 4.0HIGH 8.3
  • TI-2026-58900 Chainlit through 2.12.0 Path Traversal via socket.io sessionId CVSS 4.0HIGH 8.8
See all 8 →

Sources