CVE-2026-55891
CVE-2026-55891 · PrivateBin: Reflected JSON injection in backend responses via unescaped REQUEST_URI
Здесь приведены факты из открытых источников об уязвимостях. Перед обновлением ознакомьтесь с исходным сообщением.
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.
CVSS 0.0 · Низкий · EPSS 0,5% · Есть исправление
- Опубликовано
- Обновлено
Стек: php
Затронутые продукты и версии
privatebin
- Версии
- < 2.0.5: Затронуто
Нет опубликованного исправления
privatebin/privatebin Packagist
- Версии
- 1.0
- 1.1
- 1.1.1
- 1.2
- 1.2.1
- 1.2.2
- 1.2.3
- 1.3
- 1.3.1
- 1.3.2
- 1.3.3
- 1.3.4
- 1.3.5
- 1.4.0
- 1.5.0
- 1.5.1
- 1.5.2
- 1.6.0
- 1.6.1
- 1.6.2
- 1.7.0
- 1.7.1
- 1.7.2
- 1.7.3
- 1.7.4
- 1.7.5
- 1.7.6
- 1.7.7
- 1.7.8
- 1.7.9
- 2.0.0
- 2.0.1
- 2.0.2
- 2.0.3
- 2.0.4
- Затронутые диапазоны версий
- ECOSYSTEM: < 2.0.5
Обновитесь до 2.0.5