GHSA-rm67-g9ch-vxff: Poweradmin: Broken access control (IDOR): any zone owner can modify DNS records in zones they do not own
When you save a record edit, Poweradmin checks whether you’re allowed to touch the record by looking at a zone id you send in the POST body, but it then applies the change to a record id you also send in the POST body. Nothing checks that the record id actually belongs to that zone id. So you point the permission check at a zone you legitimately own, point the record id at somebody else’s record, and the update goes through.
A low-privilege “Editor” who only owns attacker.example was able to overwrite a record living in victim.example (owned by the admin), even though the same account gets a flat “you do not have permission to access this zone” if it tries to open that zone directly.
References
- github.com/advisories/GHSA-rm67-g9ch-vxff
- github.com/poweradmin/poweradmin/commit/12651facf49a6d9ebeb38f01e65f4aa5bfbc4da0
- github.com/poweradmin/poweradmin/commit/88f443d0bde9812ff8d00c094882c8b8e7303c49
- github.com/poweradmin/poweradmin/commit/e021067157491ea70b8e333dc3f6a1ddf7e8e746
- github.com/poweradmin/poweradmin/releases/tag/v3.9.11
- github.com/poweradmin/poweradmin/releases/tag/v4.2.5
- github.com/poweradmin/poweradmin/releases/tag/v4.3.4
- github.com/poweradmin/poweradmin/security/advisories/GHSA-rm67-g9ch-vxff
Code Behaviors & Features
Detect and mitigate GHSA-rm67-g9ch-vxff with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →