Date Published: Feb 24 2025
A Cross-Site Scripting (XSS) vulnerability has been identified in Apryse WebViewer versions up to and including 11.1. This vulnerability allows remote attackers to execute arbitrary JavaScript code by supplying a crafted PDF file. The issue arises due to improper sanitization of user-supplied input during PDF rendering.
- Product Name: Apryse WebViewer
- Affected Versions: All versions up to and including 11.1
- Component: PDF Rendering Engine
- Type: Cross-Site Scripting (XSS)
An attacker can exploit this vulnerability by creating a malicious PDF file containing embedded JavaScript code. When a user opens this PDF using Apryse WebViewer, the malicious code executes in the context of the user's browser. This can lead to:
- Arbitrary Code Execution: Execution of attacker-controlled scripts.
- Session Hijacking: Theft of session cookies, potentially compromising user accounts.
- Unauthorized Actions: Performing actions with the privileges of the affected user.
- Remote Attack: The attacker supplies a crafted PDF file to the victim.
- User Interaction: The victim needs to open the malicious PDF using Apryse WebViewer.
This vulnerability enables attackers to:
- Execute arbitrary code in the context of the user's browser.
- Access sensitive information, such as session cookies.
- Perform unauthorized actions on behalf of the user.
- Potentially escalate privileges within the application.
A crafted PDF file with embedded JavaScript demonstrates the vulnerability. When uploaded to showcase.apryse.com and rendered by WebViewer, the script executes, confirming the XSS flaw.
Note: Detailed exploit code and proof-of-concept files have been responsibly disclosed to the vendor to prevent misuse.
Payload Source: The payload was obtained from this repository. Original discovery & Credits go to @luigigubello , Also , Apryse have a well-written blog post on https://apryse.com/blog-regarding-xss-vulnerabilities-in-webviewer
Apryse has addressed this vulnerability in subsequent updates. Users should:
- Update Apryse WebViewer to the latest version where this vulnerability has been fixed.
- Implement Content Security Policy (CSP): Ensure CSP headers are properly configured to mitigate XSS attacks.
- Vendor Website: https://apryse.com
- Product Information: https://apryse.com/products/webviewer
This vulnerability was discovered and reported by Mahadev Subedi (X : @blinkms).
- Date of Discovery: October 22, 2024
- Reported to Vendor: October 22, 2024 via vulnerability reporting form
- Vendor Acknowledgment Received: *Nov 20, 2024 *
- Vendor Patch Released: * Jan 8, 2025 *
- **Public Disclosure:**Feb 24, 2025
- Base Score: 8.0 (High)
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N
The information provided in this report is intended to inform users of the vulnerability so they may take appropriate action to protect their systems. Any use of this information for malicious purposes is strictly prohibited.
LOL. Quite sure you just sent them my file
payload9.pdf
. Curious to read more details about the payload and why it works. If you found the bug you know why the payload works.