CVE-2026-90583: kagisearch smallweb Query String Rendering sw.py index cross site scripting
A security flaw has been discovered in kagisearch smallweb up to 0ecb9c48edbf98dc7e934b54fbac43869e64b4cf. The affected element is the function index of the file app/sw.py of the component Query String Rendering. Performing a manipulation of the argument qs results in cross site scripting. The attack is possible to be carried out remotely. This product adopts a rolling release strategy to maintain continuous delivery. Therefore, version details for affected or updated releases cannot be specified. The patch is named 00b68144e583f20a6b67e29cf01bc07f57979ffb. It is recommended to apply a patch to fix this issue. Exploitability requires a raw HTTP request carrying unencoded double-quote characters in the query string - Werkzeug's request.querystring returns the raw request-target, and ordinary browsers percent-encode " as %22, so the payload only lands via netcat/curl-style raw sockets.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
kagisearch smallweb Query String Rendering (app/sw.py index)to a version that resolves this vulnerability.Patch 00b68144e583f20a6b67e29cf01bc07f57979ffb - Compensating control
Mitigate remote exploitation while patching by restricting network access to the kagisearch smallweb service endpoint (Query String Rendering in app/sw.py) to trusted clients only (e.g., via firewall/ACL).
Event History
Frequently Asked Questions
Can this be triggered through an ordinary browser-generated URL?
Ordinary browsers percent-encode double quotes as %22, so they do not normally send the raw double-quote characters required for the payload. Exploitation requires a raw HTTP request, such as one sent through curl-style tooling or a raw socket.
Does exploitation require an authenticated account?
No. The supplied vector lists no privileges required, and the issue can be attacked remotely. User interaction is listed as required.
How can I determine whether my deployment is affected?
Version-based determination is not available because the product uses a rolling release strategy. Check whether the deployed code includes patch commit 00b68144e583f20a6b67e29cf01bc07f57979ffb.
What is the available remediation?
Apply patch 00b68144e583f20a6b67e29cf01bc07f57979ffb. No alternative workaround is provided in the available data.