---
id: "CVE-2026-118192"
kind: "vulnerability"
aliases: ["CVE-2026-118192"]
title: "JoomSport WordPress plugin: SQL injection lets contributors read database contents"
severity: "medium"
cvss: 6.5
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["joomsport", "package", "self-hosted", "wordpress"]
not_affected_if: ["patched-version", "plugin-not-installed"]
published_at: "2026-10-29T10:17:03+00:00"
first_seen_at: "2026-10-29T10:24:25+00:00"
updated_at: "2026-10-29T10:25:20+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-118192", "first_seen_at": "2026-10-29T10:24:25+00:00"}]
---

# JoomSport WordPress plugin: SQL injection lets contributors read database contents

The JoomSport sports league plugin for WordPress fails to escape the team_id parameter before using it in a SQL query. An authenticated contributor can append their own SQL to existing queries and extract sensitive data from the site database.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed JoomSport version in the WordPress plugins list or the plugin's main file header.
- Confirm whether any user has the contributor role or higher on the site.

## Fix

- JoomSport for WordPress: move to a version later than `5.7.11`.

## Timeline

- 2026-10-29T10:24:25+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-118192

## From the sources

The JoomSport – for Sports: Team & League, Football, Hockey & more plugin for WordPress is vulnerable to generic SQL Injection via the 'team_id' parameter in all versions up to, and including, 5.7.11 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with contributor-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. The vulnerable code path is reached when the season has no associated joomsport_tournament term, which is the default state for newly created seasons.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
