Skip to main content

Animated Number Counters EUVDEUVD-2026-94181

| CVE-2026-104667 MEDIUM
SQL Injection (CWE-89)
2026-10-07 WPScan GHSA-pjg3-7vq5-jcg3
6.8
CVSS 3.1 · Vendor: WPScan
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as Editor-level user
  2. Delivery
    Store SQLi payload in counter value
  3. Exploit
    Unauthenticated visitor renders counter page
  4. Execution
    Injected query executes against database
  5. Impact
    Exfiltrate arbitrary data and password hashes

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an attacker to already hold an Editor-level (or higher) WordPress account on the target site in order to store the malicious counter value - this is the primary limiting factor and means the flaw is only reachable on multi-author/multi-user deployments where Editors are not fully trusted. The second stage requires no authentication: the injected SQL executes automatically whenever any unauthenticated visitor renders a public page containing the affected Animated Number Counters element, so no further interaction or special configuration beyond using the plugin's counter feature is needed. Affected versions are all releases before 3.1; upgrading to 3.1 removes the condition.

Impact

This is a moderate-priority issue rather than an emergency, and the signals are largely consistent. The provided CVSS 3.1 vector (AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N, base 6.8) correctly reflects a second-order flaw: the network attack vector and scope change capture that an authenticated Editor plants a payload which later executes for unauthenticated visitors, while PR:H encodes the real barrier - attacker must already hold an Editor-level account. Publicly available exploit code exists (WPScan), which raises practical risk, but this must NOT be conflated with active exploitation: the CVE is NOT in CISA KEV, so there is no evidence of in-the-wild use. No EPSS score was provided, so statistical exploitation probability cannot be weighed here - a data gap worth noting. The dominant factor limiting real-world risk is the PR:H prerequisite: on single-author or tightly-controlled sites there is no untrusted Editor, whereas on multi-author/agency/membership sites where Editors are semi-trusted, this becomes a privilege-escalation-to-data-theft path yielding password hashes. Net: credible and patch-worthy given confirmed POC and a vendor fix, but gated by the need for an existing privileged account, so prioritize on multi-author WordPress deployments.

Exploit ScenarioDerived

On a multi-author WordPress site, a malicious or compromised Editor creates or edits an Animated Number Counters entry, embedding a SQL injection payload in an unsanitised counter value that is stored in the database. When any unauthenticated visitor later loads a public page rendering that counter, the payload is concatenated into a live SQL query and executed, letting the attacker exfiltrate arbitrary database contents including user password hashes. A public proof-of-concept is available via WPScan, lowering the effort required.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 07, 2026

Second-order SQL injection in the Animated Number Counters WordPress plugin before version 3.1 allows an attacker with an Editor-level account to store a crafted counter value that is later concatenated into an SQL query and executed when any unauthenticated visitor loads a page containing the counter, enabling extraction of arbitrary database contents including password hashes. The flaw requires an existing Editor account (authenticated, high privileges) for the initial injection, but the malicious SQL runs without further authentication. A vendor patch (version 3.1) is available, and publicly available exploit code exists; the assessed CVSS vector (6.8, PR:H, scope changed) reflects the privileged prerequisite and high confidentiality impact.

RemediationAI

Upgrade to Animated Number Counters version 3.1 or later; this is the vendor-released patch that removes the SQL injection condition. If immediate upgrade is not possible, restrict the ability to create or edit counter elements to fully trusted users only - for example, remove the Editor role's capability to manage the plugin's custom post type or shortcode, or downgrade untrusted Editors to a lower role. Note that this mitigation is incomplete because any user with the required capability can still inject, and it may break legitimate multi-author workflows. Additionally, consider using a web application firewall (WAF) rule to detect and block SQL injection patterns in requests that store counter values, though WAF bypasses are possible and this should not be the sole control. Refer to the WPScan advisory at https://wpscan.com/vulnerability/ccaedf47-6a6b-429b-aae9-3b4254181dd9/ for further details.

Affected VersionsENISA

Animated Number Counters 0 <3.1

Affected Packages

euvd animated_number_counters fix: 3.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability is a CWE-89 SQL injection (second-order) in the WordPress plugin Animated Number Counters. The plugin stores a counter value (e.g., a number or label) supplied by an Editor-level user without sanitisation or escaping, then concatenates that stored value directly into an SQL query that is executed whenever the counter is rendered on a public-facing page. Because the injection occurs in a second-order fashion - the malicious payload is persisted first and triggered later - the SQL statement runs in the context of the WordPress database user with the privileges of the web application. The CPE string cpe:2.3:a:unknown:animated_number_counters:*:*:*:*:*:*:*:* indicates the affected product is the plugin itself, with all versions below 3.1 vulnerable per EUVD. The changed scope (S:C) in the CVSS vector reflects that the vulnerable component (the plugin) can impact resources beyond its security scope (the database).

Know when Animated Number Counters gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (WPScan) PRIMARY 6.8 MEDIUM
AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 6.8 MEDIUM

PR:H because a stored payload requires an existing Editor account; S:C as injection into the DB reaches data beyond the plugin; C:H for hash disclosure, I:N/A:N as impact is read-only.

3.1 AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (WPScan).

CVSS VectorVendor: WPScan

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

4
CVSS changed
Oct 07, 2026 - 10:22 NVD
6.8 (MEDIUM)
Patch available
Oct 07, 2026 - 08:16 EUVD
CVE Published
Oct 07, 2026 - 06:00 cve.org
UNKNOWN (no severity yet)
CVE Published
Oct 07, 2026 - 06:00 cve.org
MEDIUM 6.8

DescriptionCVE.org

The Animated Number Counters WordPress plugin before 3.1 does not sanitise or escape a value stored by an Editor-level user before concatenating it into a SQL query that runs when any unauthenticated visitor renders a page containing the counter, leading to second-order SQL injection that can read arbitrary data including password hashes.

Threat Intelligence Overview

EPSS Score
0.2%
Top 87% exploitable
Prevalence
Low
niche WordPress counter plugin, limited install footprint
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

54
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy