Matches Security & Risk Analysis

wordpress.org/plugins/matches

This plugin makes it easy to administer and display matches (sports or otherwise) with a neat widget.

10 active installs v0.5 PHP + WP 3.0.1+ Updated Jan 26, 2012
gamesmatchessports
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Matches Safe to Use in 2026?

Generally Safe

Score 85/100

Matches has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 14yr ago
Risk Assessment

The "matches" v0.5 plugin presents a mixed security profile. On the positive side, it has a very small attack surface, with no apparent entry points like AJAX handlers, REST API routes, shortcodes, or cron events. The absence of known CVEs and a clean vulnerability history suggests a history of secure development or a lack of targeted analysis. However, significant concerns arise from the static code analysis. A critical weakness is the extremely poor output escaping, with only 1% of outputs being properly escaped. This, combined with two high-severity taint flows with unsanitized paths, indicates a strong potential for cross-site scripting (XSS) vulnerabilities, especially if user-supplied data can reach these unsanitized paths. Furthermore, while the majority of SQL queries use prepared statements, 43% do not, posing a risk of SQL injection if these queries handle user input without proper sanitization.

The lack of documented vulnerabilities is a strength, but the code analysis highlights areas that require immediate attention. The identified taint flows and inadequate output escaping are major red flags that could be exploited even without historical CVEs. The plugin's minimal attack surface is a benefit, but it doesn't negate the risks posed by the insecure coding practices observed. Therefore, while the plugin has a clean history, the current code analysis reveals significant potential vulnerabilities that need to be addressed.

Key Concerns

  • Unsanitized taint flows (high severity)
  • Poor output escaping (1% proper)
  • SQL queries without prepared statements (43%)
  • No nonce checks
Vulnerabilities
None known

Matches Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

Matches Code Analysis

Dangerous Functions
0
Raw SQL Queries
9
12 prepared
Unescaped Output
68
1 escaped
Nonce Checks
0
Capability Checks
3
File Operations
0
External Requests
0
Bundled Libraries
0

SQL Query Safety

57% prepared21 total queries

Output Escaping

1% escaped69 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

2 flows2 with unsanitized paths
<admin_matches> (admin_matches.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Matches Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 4
actioninitmatches.php:31
actionadmin_menumatches.php:104
actionadmin_initmatches.php:105
actionwp_print_stylesmatches.php:159
Maintenance & Trust

Matches Maintenance & Trust

Maintenance Signals

WordPress version tested3.2.1
Last updatedJan 26, 2012
PHP min version
Downloads4K

Community Trust

Rating0/100
Number of ratings0
Active installs10
Developer Profile

Matches Developer Profile

nemrod

1 plugin · 10 total installs

84
trust score
Avg Security Score
85/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Matches

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/matches/widget.css

HTML / DOM Fingerprints

HTML Comments
Copyright 2010-2012 Anders Mårtensson <anders@nemrod.se>This file is part of Matches.Matches is free software: you can redistribute it and/or modifyit under the terms of the GNU General Public License as published by+17 more
FAQ

Frequently Asked Questions about Matches