CVE-2026-27822
Received Received - Intake
Stored XSS in RustFS Console Enables Admin Account Takeover

Publication date: 2026-02-25

Last updated on: 2026-02-25

Assigner: GitHub, Inc.

Description
RustFS is a distributed object storage system built in Rust. Prior to version 1.0.0-alpha.83, a Stored Cross-Site Scripting (XSS) vulnerability in the RustFS Console allows an attacker to execute arbitrary JavaScript in the context of the management console. By bypassing the PDF preview logic, an attacker can steal administrator credentials from `localStorage`, leading to full account takeover and system compromise. Version 1.0.0-alpha.83 fixes the issue.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-02-25
Last Modified
2026-02-25
Generated
2026-05-07
AI Q&A
2026-02-25
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 82 associated CPEs
Vendor Product Version / Range
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
rustfs rustfs 1.0.0
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

[{'type': 'paragraph', 'content': 'CVE-2026-27822 is a critical Stored Cross-Site Scripting (XSS) vulnerability in the RustFS Console, a Rust-based management interface for S3-compatible storage.'}, {'type': 'paragraph', 'content': "The vulnerability arises because the console's file preview feature identifies PDF files by extension or metadata but does not validate the actual content type. This allows an attacker to upload a malicious HTML file disguised as a PDF (with Content-Type set to text/html)."}, {'type': 'paragraph', 'content': "Since the RustFS Console and the S3 API share the same origin (same IP and port), scripts running in the preview iframe can access the parent window's localStorage, which stores sensitive administrator credentials."}, {'type': 'paragraph', 'content': 'When an administrator previews the malicious file, the embedded script executes, stealing credentials such as AccessKey, SecretKey, and SessionToken, leading to full administrative account takeover and system compromise.'}] [1]


How can this vulnerability impact me? :

[{'type': 'paragraph', 'content': 'This vulnerability can lead to a full administrative account takeover in the RustFS system.'}, {'type': 'paragraph', 'content': "An attacker who exploits this flaw can steal administrator credentials stored in the browser's localStorage, allowing them to perform any administrative actions."}, {'type': 'list_item', 'content': 'Deleting data'}, {'type': 'list_item', 'content': 'Creating backdoors'}, {'type': 'list_item', 'content': 'Downloading the entire filesystem via the S3 API'}, {'type': 'paragraph', 'content': 'Overall, this leads to complete system compromise with high impact on confidentiality, integrity, and availability.'}] [1]


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

I don't know


How can this vulnerability be detected on my network or system? Can you suggest some commands?

[{'type': 'paragraph', 'content': 'This vulnerability can be detected by checking if your RustFS Console version is prior to 1.0.0-alpha.83 and by verifying if the file preview feature improperly handles PDF files by content type.'}, {'type': 'paragraph', 'content': 'A practical detection method involves attempting to upload a file named with a .pdf extension but with a Content-Type of text/html containing a script payload. If the preview modal executes the script, the vulnerability is present.'}, {'type': 'paragraph', 'content': 'There are no specific commands provided, but you can use tools like curl or HTTP clients to upload a test file with a manipulated Content-Type header to the S3-compatible storage and then preview it in the console to observe if script execution occurs.'}, {'type': 'list_item', 'content': 'Example curl command to upload a malicious file: curl -X PUT --data-binary @malicious.html -H "Content-Type: text/html" https://your-rustfs-s3-endpoint/bucket/xss.pdf'}, {'type': 'list_item', 'content': 'Then, preview the uploaded xss.pdf file in the RustFS Console to see if the script executes.'}] [1]


What immediate steps should I take to mitigate this vulnerability?

The immediate mitigation step is to upgrade RustFS to version 1.0.0-alpha.83 or later, where this vulnerability is fixed.

Additional mitigation measures include:

  • Serve user-uploaded content from a separate domain (origin separation) to enforce the Same-Origin Policy and isolate potentially malicious content from the management console.
  • Implement strict security headers on the backend, such as Content-Security-Policy (CSP) to disallow inline scripts and restrict script execution.
  • Use the X-Content-Type-Options: nosniff header to prevent browsers from interpreting files as a different MIME type than declared.

Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart