Description
Magistrala (formerly Mainflux)'s message-readers API reads a value from the HTTP query string (readers/api/http/transport.go) with no validation and interpolates it directly into raw SQL queries via fmt.Sprintf in both the PostgreSQL reader (readers/postgres/messages.go: ) and the TimescaleDB reader (readers/timescale/messages.go, same pattern), enabling SQL injection by any authenticated user able to query channel messages.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| absmach | magistrala | — | — |
References
- https://github.com/absmach/magistrala third-party-advisory
- https://github.com/absmach/magistrala/blob/main/readers/postgres/messages.go third-party-advisory