CVE-2026-48821
Description
Shaarli is a personal bookmarking service. Versions 0.16.1 and prior contain a DOM-based Cross-Site Scripting (XSS) vulnerability in the Thumbnail Synchronizer feature. When an administrator runs the thumbnail update process, malicious bookmark titles are returned via an AJAX response and inserted into the DOM using innerHTML without proper sanitization. The issue originates from the interaction between the backend thumbnail update endpoint and the frontend JavaScript responsible for rendering update progress. On the backend, the ThumbnailsController::ajaxUpdate method returns bookmark data formatted using the 'raw' formatter. This includes the unescaped bookmark title in the JSON response. On the client side, the script thumbnails-update.js processes this AJAX response and dynamically updates the progress interface. Administrators using the thumbnail synchronization feature are affected and exploitation could lead to session hijacking, privilege escalation, backdoor injection and full compromise. This issue has been fixed in version 0.16.2.
Summary dbcve.org
Shaarli versions 0.16.1 and prior contain a DOM-based XSS vulnerability in the Thumbnail Synchronizer feature. The backend ThumbnailsController::ajaxUpdate method returns bookmark titles using a 'raw' formatter that does not escape HTML entities. The frontend thumbnails-update.js then uses innerHTML to insert these titles into the DOM without sanitization, allowing injected malicious scripts to execute in the administrator's browser.
Mitigation
Upgrade Shaarli to version 0.16.2 or later. The fix changes the backend formatter to escape output and/or modifies the frontend to use textContent instead of innerHTML.