Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-9323— Insecure PRNG and Information Exposure in urwid Web Display Backend

Quick assessment

Affected
urwid urwid
Exploitation
Public or AI PoC available; prioritize validation
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

urwid Urwid是urwid团队的一款基于控制台的UI工具库,用于创建文本用户界面。 urwid 24acd12及之前版本存在加密问题漏洞,该漏洞源于Web显示后端生成会话标识符时使用非加密安全的Mersenne Twister PRNG,导致攻击者通过观察约334个会话ID可重构内部状态并预测所有历史及未来会话ID,且会话标识符也用作/tmp目录中FIFO文件名,使本地用户可直接枚举活跃会话令牌,进而读取受害者终端屏幕、注入按键实现OS级代码执行,或注入退出序列淹没FIFO导致会话终止或崩溃。

CVSS 8.1 · High EPSS 0.71% · P54

Affected Version Matrix 1

VendorProduct Version RangeStatus
urwid urwid ≤ 24acd12 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-9323

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Insecure PRNG and Information Exposure in urwid Web Display Backend
Source: CVE Program / CVE List V5
Vulnerability Description
The urwid web display backend (urwid/display/web.py) generates web session identifiers (urwid_id) in Screen.start() by concatenating two random.randrange(10**9) calls that use Python's Mersenne Twister PRNG, which is not cryptographically secure. Each call consumes approximately 30 bits of PRNG state, and the Mersenne Twister internal state is approximately 19,937 bits, so an attacker who observes approximately 334 session IDs (for example via the X-Urwid-ID HTTP response header) can fully reconstruct the internal state and predict all past and future session IDs (Path B). The same identifier is also used as the filename of a FIFO created in the world-listable /tmp directory (for example /tmp/urwid375487765176907690.in), so any local user on the host can list /tmp to enumerate active session tokens directly (Path A). With a valid session ID, an attacker can read the victim's terminal screen via the polling endpoint, inject keystrokes into the victim's session (yielding OS-level code execution with the session owner's privileges if the session runs a shell), and inject exit sequences or flood the FIFO to terminate or crash the session. A prior Bandit S311 warning on this usage was suppressed with # noqa: S311 rather than fixed
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
使用具有密码学弱点缺陷的PRNG
Source: CVE Program / CVE List V5
Vulnerability Title
urwid 加密问题漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
urwid Urwid是urwid团队的一款基于控制台的UI工具库,用于创建文本用户界面。 urwid 24acd12及之前版本存在加密问题漏洞,该漏洞源于Web显示后端生成会话标识符时使用非加密安全的Mersenne Twister PRNG,导致攻击者通过观察约334个会话ID可重构内部状态并预测所有历史及未来会话ID,且会话标识符也用作/tmp目录中FIFO文件名,使本地用户可直接枚举活跃会话令牌,进而读取受害者终端屏幕、注入按键实现OS级代码执行,或注入退出序列淹没FIFO导致会话终止或崩溃。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
urwid urwid 0 ~ 24acd12 -

II. Public POCs for CVE-2026-9323

# POC Description Source Link Shenlong Link
AI-Generated POC Premium
Qwen3.6-35B-A3B · 8663 chars
Pro+ exclusive includes:
Vulnerability reproduction recording (real sandbox build + trigger, exclusive)
In-depth vulnerability mechanism
Trigger conditions & impact
Full executable POC code
Exploit chain & mitigation
POC zip download
100+ AI POC generations per month

III. Intelligence Information for CVE-2026-9323

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-9323 (2)

Vendor Advisories for CVE-2026-9323 (3)

IV. Related Vulnerabilities