Sceawere
Vulnerability Detail
CVE-2026-85687UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV
Surya Unauthenticated Arbitrary File Read
Vulnerability Metadata
- Severity
- High
- Score / CVSS
- 7.5
- Creation Date
- 4h ago
- Vendor
- datalab-to
- Product
- surya
- Attack Type
- External Control of File Name or Path
- Vector String
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- Attack Complexity
- LOW
Narrative and Response
Description
surya 0.22.1 screenshot server contains an unauthenticated arbitrary file read vulnerability in the /info, /page, and /process routes that accept raw file_path parameters. Attackers can read any image or PDF file on the host by supplying arbitrary file paths to Image.open or pypdfium2.PdfDocument, obtaining rendered contents as base64 and using /info as an existence oracle.
Executive Summary
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Technical Details
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Mitigations
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
References
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Additional Metadata
{
"score": "7.5",
"pubDate": "2026-09-04T15:17:46.507Z",
"pubdate": "2026-09-04T15:17:46.507Z",
"executiveSummary": "The surya 0.22.1 screenshot server is susceptible to an unauthenticated arbitrary file read vulnerability originating from insecure handling of user-supplied file paths.\nThis vulnerability exists within the /info, /page, and /process routes, which fail to validate or sanitize raw input parameters before passing them to file-processing functions.\nThe primary impact involves the unauthorized disclosure of sensitive system files, specifically images and PDF documents accessible to the service's execution context.\nThe vulnerability allows remote attackers to perform file existence checks and retrieve base64-encoded renderings of arbitrary files from the host filesystem.\nAs the flaw requires no authentication, it presents a critical risk for internal data exposure, potentially leading to the leakage of system configurations, documentation, or other sensitive assets contained within accessible storage.\nExploitation is trivial, requiring only the submission of crafted HTTP requests containing arbitrary target paths, necessitating immediate restriction of access and input validation remediation.",
"technicalDetails": "The vulnerability resides in the request handling logic of the surya 0.22.1 screenshot server, specifically in the implementation of the /info, /page, and /process API endpoints.\nThese endpoints are designed to accept raw user-provided input parameters as file paths without implementing strict directory traversal prevention or path sanitization. Consequently, the application passes these unsanitized strings directly into backend processing routines.\nSpecifically, the application utilizes the Image.open function (likely from the Pillow library) for image files and the pypdfium2.PdfDocument class for PDF files to handle incoming requests. By manipulating the file_path parameter, an attacker can coerce the application into accessing files outside the intended scope.\nThe exploitation flow begins with an attacker identifying the service's accessible routes. Through the /info route, an attacker can utilize the endpoint as a file-existence oracle; by observing the server's response to various path inputs, the attacker can verify the presence or absence of specific files on the underlying filesystem.\nOnce a target file path is identified, the attacker can leverage the /page or /process endpoints to force the server to ingest and process the specified file. Because the application processes these files and returns the rendered contents as a base64-encoded string, the attacker successfully exfiltrates the content of the target file through the HTTP response payload.\nThe vulnerability is essentially a server-side path injection that circumvents any logical constraints typically expected in a secure document processing service. Given that the service operates with the privileges of the user account running the process, the attacker is limited only by the filesystem permissions assigned to that account.\nNo authentication or specific privileges are required to initiate this request, and the vulnerability is directly reachable via standard network access to the screenshot server instance.\nSuccessful exploitation results in the unauthorized reading of arbitrary image and PDF files from the server's host, which may contain sensitive business or system information."
}