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

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-55891— PrivateBin: Reflected JSON injection in backend responses via unescaped REQUEST_URI

Quick assessment

Affected
PrivateBin PrivateBin
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

PrivateBin 是一个在线代码/文本粘贴(pastebin)服务,服务器端对粘贴的数据采用“零知识”(zero-knowledge)设计。在 2.0.5 版本之前, 中的 方法会对 应用 过滤器,但该过滤器并不会移除引号、尖括号或撇号(apostrophes)。随后, 会将这个由攻击者控制且未完全净化的值存储到 中。 接着, 中的 方法使用 将该值直接插入到 JSON-LD 模板(如 、 以及 和 使用的其他 JSON-LD 模板)中,且插入时没有进行 JSON 转义。 如果一个 HTTP 客户端、代理或结构

Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-55891

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
PrivateBin: Reflected JSON injection in backend responses via unescaped REQUEST_URI
Source: CVE Program / CVE List V5
Vulnerability Description
PrivateBin is an online pastebin where the server has zero knowledge of pasted data. Prior to 2.0.5, Request::getRequestUri() in lib/Request.php passes $_SERVER['REQUEST_URI'] through FILTER_SANITIZE_URL, which does not remove quotation marks, angle brackets, or apostrophes, and Controller::_init() stores the attacker-controlled value in Controller::$_urlBase. Controller::_jsonld() in lib/Controller.php then uses str_replace() to insert that value without JSON escaping into js/types.jsonld, js/paste.jsonld, and the other JSON-LD templates used by /?jsonld= and /?pasteid. A raw quotation mark delivered by an HTTP client, proxy, or structured-data crawler that does not normalize the request target can break out of the JSON string and inject arbitrary key-value data into a CORS-open application/ld+json response. The jsonld branch in Controller::__construct() returns before _setCacheHeaders(), so the response also lacks X-Content-Type-Options: nosniff, Content Security Policy, X-Frame-Options, and Referrer-Policy. Direct script execution was not demonstrated, but manipulated responses can affect structured-data consumers or combine with less strict clients. This issue is fixed in version 2.0.5.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
对输出编码和转义不恰当
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
PrivateBin PrivateBin < 2.0.5 -

II. Public POCs for CVE-2026-55891

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-55891

登录查看更多情报信息。

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

Vendor Advisories for CVE-2026-55891 (1)

IV. Related Vulnerabilities

V. Comments for CVE-2026-55891

No comments yet


Leave a comment