{"id":"CVE-2026-63630","summary":"BentoPDF: Workflow Import Allows Unvalidated TSA URL Leading to PDF Hash Exfiltration via RFC 3161 Requests","details":"BentoPDF is a client-side PDF toolkit that is self hostable. In 2.8.6 and earlier, deserializeWorkflow() accepts the Timestamp node's tsaUrl control from imported JSON without schema or destination validation. When a user imports the crafted workflow and runs it against a PDF, timestampPdf() sends an RFC 3161 TimeStampReq containing the PDF's SHA-256 MessageImprint to the attacker-selected endpoint. The default self-hosted configuration does not set VITE_CORS_PROXY_URL, so the request bypasses the proxy's ALLOWED_TSA_HOSTS checks and is sent directly. The disclosed digest can confirm that a document matches a known file and can correlate the same document across users without revealing its contents. This vulnerability is fixed in 2.8.7.","aliases":["GHSA-cx8x-7rrr-r9x8"],"modified":"2026-09-25T03:48:41.912498450Z","published":"2026-09-24T15:33:44.489Z","database_specific":{"cwe_ids":["CWE-201","CWE-502"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63630.json","cna_assigner":"GitHub_M"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63630.json"},{"type":"FIX","url":"https://github.com/alam00000/bentopdf/commit/b21f602cca972320bfffbf72e37df535313a6e48"},{"type":"WEB","url":"https://github.com/alam00000/bentopdf/releases/tag/v2.8.7"},{"type":"ADVISORY","url":"https://github.com/alam00000/bentopdf/security/advisories/GHSA-cx8x-7rrr-r9x8"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-63630"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/alam00000/bentopdf","events":[{"introduced":"0"},{"fixed":"55915a29017a5090a6ea61e61b0f4d899f032923"}],"database_specific":{"source":"AFFECTED_FIELD","extracted_events":[{"introduced":"0"},{"fixed":"2.8.7"}]}}],"versions":["v2.8.6","v2.8.5","v2.8.4","v2.8.3","v2.8.2","v2.8.1","v2.8.0","v2.7.0","v2.6.0","v2.5.0","v2.4.1","v2.4.0","v2.3.3","v2.3.1","v2.3.0","v2.2.1","v2.2.0","v2.1.0","v2.0.0","v1.16.1","v1.16.0","v1.15.4","v1.15.3","v1.15.1","v1.14.0","v1.11.2","v1.11.1","v1.11.0","v1.10.5","v1.10.4","v1.10.3","v1.10.1","v1.10.0","v1.9.0","v1.8.1","v1.8.0","v1.7.9","v1.7.8","v1.7.7","v1.7.6","v1.7.5","v1.7.4","v1.7.3","v1.7.1","v1.7.0","v1.6.2","v1.6.1","v1.6.0","v1.5.1","v1.5.0","v1.4.0","v1.3.2","v1.3.1","v1.3.0","v1.2.0","v1.1.5","v1.1.4","v1.1.3","v1.1.2","v1.1.1","v1.1.0","v1.0.2","v1.0.1","v1.0.0","v0.0.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-63630.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:N/A:N"}]}