Summary
CVE-2026-82453 affects rust-iot-platform, an open-source IoT platform maintained by iot-ecology. The application stores user passwords in cleartext and exposes them via API responses on user retrieval and listing routes, allowing any party able to reach these endpoints to obtain plaintext credentials for every account in the system. The issue is rated HIGH severity (CVSS v4.0 base score 8.7) and is remotely exploitable over the network with no authentication or user interaction required to view the exposed data via the affected endpoints.
Technical details
- Root cause: User passwords are persisted in the database without cryptographic hashing (e.g., bcrypt, Argon2). Password comparisons during authentication are also performed directly against cleartext values in
user_biz.rs, confirming that hashing is never applied anywhere in the credential lifecycle. - Trigger conditions: No special preconditions are required beyond the ability to invoke the platform’s user-retrieval or user-listing API routes; any response returned by these routes includes the plaintext password field for the affected user records.
- Attack vector: Network — an attacker (or any principal with access to these API endpoints) can read plaintext credentials directly from HTTP responses without needing to crack or decrypt anything.
- Impact: Full disclosure of plaintext passwords for all user accounts stored by the platform, enabling direct account takeover, credential reuse attacks against other systems, and lateral movement — with no need for offline password cracking since the credentials are never hashed in the first place.
- Weakness classification: CWE-256 (Plaintext Storage of a Password).
Affected software
- iot-ecology/rust-iot-platform — all versions/commits up to and including commit
5df942ab6bc46a3bf83dbee8c7970554f92c972dare affected.
Severity
- CVSS v4.0 Base Score: 8.7 (High) —
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N - CVSS v3.1 Base Score: 7.5 (High) —
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Mitigation and recommended actions
- Immediate: Upgrade to a version/commit of rust-iot-platform later than
5df942ab6bc46a3bf83dbee8c7970554f92c972dthat removes plaintext password storage and exposure from user retrieval/listing responses, once such a fix is published by the maintainers. - If no patch is yet available:
- Restrict network access to the affected user retrieval and listing API routes (e.g., via firewall rules, VPN, or API gateway allow-listing) to trusted administrative sources only.
- Audit application code to ensure passwords are hashed with a strong, salted algorithm (bcrypt, scrypt, or Argon2) at rest, and remove password fields from any API response payloads.
- Force a password reset for all existing accounts once hashing is implemented, since any previously exposed plaintext credentials should be considered compromised.
- Monitor authentication logs for signs of credential reuse or unauthorized login attempts using potentially leaked passwords.

