☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2026-3023

CVE-2026-3023 SQL Injection in Wakyma
📅 PUBLISHED: 2026-03-16 10:12 UTC 🔄 UPDATED: 2026-08-18 17:14 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.33%
👁️
0.33% probability
8.2× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Country: Spain
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
5.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-3023 is a critical NoSQL injection vulnerability discovered in the Wakyma web application, specifically within the endpoint vets.wakyma.com/pets/print-tags. This flaw allows an authenticated attacker to manipulate a POST request to inject arbitrary NoSQL commands, leading to unauthorized disclosure of sensitive data, including pet names and owner names. The vulnerability is currently unpatched, and no public proof-of-concept (PoC) or exploit code has been released. The attack vector is network-based, requires low complexity, and only requires authentication, making it a significant threat to the confidentiality of the Wakyma platform.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

CVSS Breakdown & Threat Level

While a CVSS score of 0.0 is listed in the NVD data, this is likely a placeholder or error. Based on the technical description, a realistic CVSS v3.1 vector would be:

  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): Low (L) – requires authentication
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H) – sensitive data exposed
  • Integrity (I): None (N)
  • Availability (A): None (N)

Estimated CVSS Score: 6.5 (Medium)

Threat Level: High – due to the ease of exploitation and the sensitivity of the data exposed (pet and owner names).

Deep Dive & Mechanics

The vulnerability resides in the vets.wakyma.com/pets/print-tags endpoint, which processes POST requests to generate printable tags for pets. The application uses a NoSQL database (likely MongoDB) and fails to properly sanitize or parameterize user-supplied input within the POST body. An authenticated attacker can inject NoSQL operators (e.g., $ne, $regex, $gt) into the request parameters to manipulate the database query logic.

For example, a normal request might look like:

{"petId": "12345"}

An attacker could inject:

{"petId": {"$ne": ""}}

This would cause the query to return all pets where petId is not empty, effectively bypassing the intended filter and listing all records. By chaining operators, the attacker can enumerate the entire database, extracting pet names and owner names.

The vulnerability is classified under CWE-943: Improper Neutralization of Special Elements in Data Query Logic, which is the standard for NoSQL injection.

Vulnerable vs. Patched Code

Since no patch is available, the vulnerable code pattern is described below. A patched version would use parameterized queries or input validation.

Vulnerable Code (Node.js / MongoDB example):

app.post('/pets/print-tags', (req, res) => {
  const petId = req.body.petId;
  // Directly using user input in query
  db.collection('pets').find({ petId: petId }).toArray((err, pets) => {
    // process and return tags
  });
});

Patched Code (using parameterized queries):

app.post('/pets/print-tags', (req, res) => {
  const petId = req.body.petId;
  // Validate input is a string
  if (typeof petId !== 'string') {
    return res.status(400).send('Invalid input');
  }
  // Use parameterized query (MongoDB driver handles this)
  db.collection('pets').find({ petId: new ObjectId(petId) }).toArray((err, pets) => {
    // process and return tags
  });
});

Exploitation & Lab Setup

Red Team (Offensive)

Lab Setup:

  1. Deploy a local instance of Wakyma (if available) or use a test environment with a similar NoSQL backend.
  2. Authenticate as a valid user to obtain a session token.
  3. Use Burp Suite or curl to craft malicious POST requests.

Exploitation Steps:

  1. Intercept a legitimate POST request to /pets/print-tags.
  2. Modify the JSON body to inject NoSQL operators:
    {"petId": {"$ne": ""}}
    
  3. Send the request and observe the response containing all pet records.
  4. To extract owner names, inject:
    {"petId": {"$regex": ".*"}}
    
  5. Use blind injection techniques to enumerate data character by character if needed.

Example curl command:

curl -X POST https://vets.wakyma.com/pets/print-tags \
  -H "Content-Type: application/json" \
  -H "Cookie: session=valid_session_token" \
  -d '{"petId": {"$ne": ""}}'

Blue Team (Defensive)

Detection:

  • Monitor for POST requests to /pets/print-tags containing JSON objects with keys like $ne, $regex, $gt, $lt, $in, etc.
  • Alert on unusual response sizes (e.g., returning all records instead of a single pet).

Mitigation:

  • Implement strict input validation: reject any JSON keys starting with $.
  • Use parameterized queries or ORM frameworks that prevent injection.
  • Apply Web Application Firewall (WAF) rules to block NoSQL injection patterns.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • POST requests to /pets/print-tags with JSON body containing $ne, $regex, $gt, $lt, $in, or other MongoDB operators.
    • Unusually large response payloads from the endpoint.
  • Log IOCs:
    • Database query logs showing $ne or $regex operators in the petId field.
    • Repeated failed authentication attempts followed by successful exploitation.
  • File IOCs:
    • No specific file IOCs as this is a server-side injection.

Detection Engineering

YARA Rule

rule NoSQL_Injection_Wakyma {
  meta:
    description = "Detects NoSQL injection attempts targeting Wakyma print-tags endpoint"
    author = "Valters IT"
    date = "2026-01-01"
    reference = "CVE-2026-3023"
  strings:
    $json_operator = /\$\w+/  // Matches $ne, $regex, etc.
    $endpoint = "/pets/print-tags"
  condition:
    $endpoint and $json_operator
}

Sigma Rule

title: NoSQL Injection Attempt on Wakyma Print Tags Endpoint
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects POST requests to /pets/print-tags containing NoSQL operators
author: Valters IT
logsource:
  category: webserver
  product: apache
detection:
  selection:
    cs-method: 'POST'
    cs-uri-stem: '/pets/print-tags'
    cs-uri-query|contains: 
      - '$ne'
      - '$regex'
      - '$gt'
      - '$lt'
      - '$in'
  condition: selection
falsepositives:
  - Legitimate use of special characters in pet names (unlikely)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
  msg:"CVE-2026-3023 NoSQL Injection Attempt on Wakyma Print Tags";
  flow:to_server,established;
  content:"POST"; http_method;
  content:"/pets/print-tags"; http_uri;
  content:"$ne"; http_client_body;
  sid:1000001;
  rev:1;
)

Remediation & Mitigation

  1. Immediate Action: Disable the /pets/print-tags endpoint if not critical, or restrict access to trusted IPs only.
  2. Input Validation: Implement strict whitelist validation for all POST parameters. Reject any input containing $ or . characters.
  3. Parameterized Queries: Use MongoDB's built-in parameterized query methods or an ORM to prevent injection.
  4. WAF Rules: Deploy a Web Application Firewall with rules to block NoSQL injection patterns.
  5. Monitoring: Enable detailed logging for the endpoint and set up alerts for suspicious query patterns.
  6. Patch: Monitor Wakyma's official channels for a security patch and apply it immediately upon release.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-3023/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.