Executive brief
GamiPress is a WordPress plugin that manages gamification features like points, achievements, and ranks within a website. The plugin's video watch-tracking functionality fails to properly restrict access, allowing any user with Subscriber role (the lowest standard role) to award these points and achievements to other users, including site administrators, without proper authorization. This could be exploited to manipulate game progress and site reputation.
Technical details
The vulnerability is an Insecure Direct Object Reference (IDOR) in the video watch-tracking AJAX handlers (gamipress_youtube_track_watch_video and gamipress_vimeo_track_watch_video). The plugin fails to verify that the requesting user is authorized to award points to the user_id parameter, instead only checking authentication status and (in recent versions) a nonce. An attacker with Subscriber role can bypass the authorization check by directly specifying an arbitrary user_id in the AJAX request, allowing them to award configured points, achievements, and ranks to any user. The vulnerability requires the administrator to have configured a video watch reward, and affects versions before 7.9.9.6. A fix has been released in version 7.9.9.6.
Affected products
- GamiPress GamiPress before 7.9.9.6
Timeline
- 2026-08-31: disclosed: Vulnerability publicly disclosed
- 2026-09-02: patched: Fix released in version 7.9.9.6