This report is part of a comprehensive documentation on the responsible disclosure of security findings on the Inleo platform. The vulnerabilities described here were identified around May 2024 and immediately reported to the development team.
Purpose of the Documentation
The goal of this audit is to provide transparency regarding past risks and to ensure the continuous improvement of the platform鈥檚 integrity. In the world of Web3 technologies, a proactive culture of accountability is essential to securing the community鈥檚 trust in the long term.
Risk Assessment and All-Clear
Although the identified vulnerabilities theoretically posed a risk to sensitive user data and cryptographic keys, an objective assessment of the situation is crucial:
Conclusion
These reports serve to document and provide evidence of a successful collaboration between independent security researchers and platform operators. They underscore the shared goal of making Inleo one of the most secure gateways in the Hive ecosystem.
Security Vulnerability Report: Unauthorized Arbitrary File Upload
Report Date: May 3rd, 2024
Researcher: louis88
Status: Resolved
Severity: Critical
Product: Inleo.io Web Platform
Module: Image Upload Feature
A critical vulnerability was identified in the image upload module of the Inleo.io web platform (Threads and Post-Creation sections). The system lacked sufficient server-side validation, allowing users to upload and host arbitrary file types beyond standard image formats. This included executable scripts (.sh, .py), binaries (.exe), and web files (.html, .svg) capable of executing malicious JavaScript in the context of the platform's image domain.
The Flaw
The upload feature was designed to handle images but failed to enforce strict file-type restrictions. By monitoring network traffic (Fetch/XHR), it was determined that the server accepted any file extension and MIME type.
While the image server did not execute the files server-side (e.g., executing a .py file on the host), it served them with original headers, allowing client-side execution.
Proof of Concept (PoC)
To demonstrate the risk, a file named inleo.html containing embedded JavaScript was uploaded.
Upload Path: Post-Creation / Threads Image Upload.
Result: The file was successfully accepted, stored, and assigned a public URL:
https://img.inleo.io/DQmNsGnKUfrS8YYq792kPBjrpwqDpyVzaX76TNDoMcMF44C/inleo.html
Observation: When accessed, the browser rendered the HTML and executed the embedded JavaScript, confirming a Stored XSS vector via file upload.
The ability to host arbitrary files on an official domain poses several severe risks:
.exe), malicious scripts (.sh), or phishing documents, damaging the domain鈥檚 reputation and triggering browser "Deceptive Site" warnings.img.inleo.io to harvest user credentials under the guise of an official link.