| Title | ThingsGateway v12 Unauthorized Download Vulnerability |
|---|
| Description | ThingsGateway is an open-source Industrial Internet of Things (IIoT) edge computing gateway focused on efficient data collection, edge processing, and reliable forwarding for industrial field devices. The project is designed for real-world industrial scenarios, emphasizing stability, high performance, scalability, and engineering maintainability, making it suitable for various application environments such as industrial automation, energy, power, manufacturing, and building automation.
The system's defense logic (fileName.StartsWith(@"../Logs")) && filePath.Contains("..") was intended to allow access if the path starts with the ../Logs directory (for log reading) while generally disallowing cross-directory access (Contains("..")). However, due to short-circuit evaluation characteristics, if an attacker constructs a fileName starting with ../Logs, the first part of the logical expression !(...) becomes false. This causes the entire && condition to fail, completely bypassing the filePath.Contains("..") validation. |
|---|
| Source | ⚠️ https://github.com/SourByte05/SourByte-Lab/issues/11 |
|---|
| User | sourbyte (UID 94279) |
|---|
| Submission | 03/04/2026 09:40 (5 months ago) |
|---|
| Moderation | 03/15/2026 19:49 (11 days later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 351156 [ThingsGateway 12 /api/file/download fileName path traversal] |
|---|
| Points | 20 |
|---|