CVE-2024-50423
Executive Summary
CVE-2024-50423 is a Missing Authorization vulnerability in the WordPress plugin Templately by WPDeveloper, affecting versions from n/a through 3.1.5. This flaw allows an unauthenticated attacker to exploit incorrectly configured access control security levels, potentially leading to unauthorized data access or modification. The vulnerability has a CVSS score of 5.4 (Medium) and an EPSS score of 0.0%, indicating low exploitation likelihood at this time. No public proof-of-concept or patch details are currently available.
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.
No signup required
Supply Chain & Package Security
This vulnerability affects the WordPress plugin ecosystem. Since Templately is distributed via the WordPress plugin repository, any site running version 3.1.5 or earlier is at risk. The lack of a patch from the vendor (WPDeveloper) means users must rely on manual mitigation or disabling the plugin until an update is released.
CVSS Breakdown & Threat Level
- CVSS Score: 5.4 (Medium)
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
The vulnerability is exploitable remotely without authentication, making it a potential entry point for attackers. However, the low impact on confidentiality and integrity, combined with no availability impact, reduces the overall severity.
Deep Dive & Mechanics
The vulnerability stems from a Missing Authorization check (CWE-862) in Templately's REST API endpoints or AJAX handlers. The plugin fails to verify that the current user has the necessary permissions before executing sensitive operations. This allows unauthenticated attackers to:
- Access or modify plugin settings
- Retrieve or delete stored data (e.g., templates, API keys)
- Perform actions intended only for administrators
The flaw is present in all versions up to and including 3.1.5. Since no patch is available, the exact vulnerable function is not publicly documented, but typical patterns involve missing current_user_can() checks in WordPress plugin code.
Vulnerable vs. Patched Code
Since no patch is available, we can only hypothesize the vulnerable code pattern. A typical missing authorization vulnerability in WordPress plugins looks like:
Vulnerable Code (example):
add_action('wp_ajax_nopriv_templately_save_template', 'templately_save_template');
function templately_save_template() {
// No permission check
$template_data = $_POST['template'];
// Save template to database
update_option('templately_template', $template_data);
}
Patched Code (hypothetical):
add_action('wp_ajax_templately_save_template', 'templately_save_template');
function templately_save_template() {
if (!current_user_can('manage_options')) {
wp_die('Unauthorized');
}
$template_data = $_POST['template'];
update_option('templately_template', $template_data);
}
The patched version would add a capability check (current_user_can('manage_options')) and remove the nopriv_ prefix to restrict access to authenticated administrators.
Exploitation & Lab Setup
Red Team
To exploit this vulnerability, an attacker would:
- Identify a WordPress site running Templately <= 3.1.5.
- Send a crafted HTTP request to a vulnerable endpoint (e.g.,
/wp-admin/admin-ajax.php?action=templately_save_template). - Include malicious payload in POST data to modify plugin settings or extract data.
Example exploit request (using curl):
curl -X POST http://target.com/wp-admin/admin-ajax.php \
-d "action=templately_save_template&template=malicious_data"
Since no public exploit code exists, this is a generic example. The attacker would need to reverse-engineer the plugin to find the exact vulnerable endpoint.
Blue Team
To detect exploitation attempts:
- Monitor for unusual AJAX requests to
admin-ajax.phpwithactionparameters starting withtemplately_. - Look for requests from unauthenticated users (no
wpnonceor cookie) to admin-only actions. - Check for unexpected changes to
wp_optionstable entries related to Templately.
Detection rule (Sigma):
title: Templately Missing Authorization Exploitation
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects unauthenticated AJAX requests to Templately endpoints
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: POST
c-uri|contains: '/wp-admin/admin-ajax.php'
cs-uri-query|contains: 'action=templately_'
condition: selection
falsepositives:
- Legitimate admin actions (if authenticated)
level: medium
Indicators of Compromise (IOCs)
Network IOCs:
- POST requests to
/wp-admin/admin-ajax.phpwithaction=templately_*parameters from unauthenticated sources - Unusual outbound connections from the WordPress server to unknown IPs (if data exfiltration occurs)
- POST requests to
Host IOCs:
- Modified
wp_optionsentries with keys liketemplately_* - Unexpected files in
/wp-content/plugins/templately/directory - New admin users created (if privilege escalation is possible)
- Modified
File IOCs:
- Suspicious entries in WordPress debug log (
wp-content/debug.log) - Modified plugin files with timestamps outside normal update cycles
- Suspicious entries in WordPress debug log (
Detection Engineering
YARA Rule
rule Detect_Templately_Missing_Auth {
meta:
description = "Detects exploitation attempts of CVE-2024-50423 in Templately plugin"
author = "Valters IT"
date = "2025-04-10"
hash = "d41d8cd98f00b204e9800998ecf8427e"
strings:
$ajax_action = "action=templately_" nocase
$admin_ajax = "admin-ajax.php" nocase
$post_method = "POST" nocase
condition:
all of them
}
Sigma Rule
title: Templately Missing Authorization Exploitation
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects unauthenticated AJAX requests to Templately endpoints
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: POST
c-uri|contains: '/wp-admin/admin-ajax.php'
cs-uri-query|contains: 'action=templately_'
condition: selection
falsepositives:
- Legitimate admin actions (if authenticated)
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-50423 Templately Missing Authorization Exploitation"; flow:to_server,established; content:"POST"; http_method; content:"/wp-admin/admin-ajax.php"; http_uri; content:"action=templately_"; http_uri; classtype:attempted-admin; sid:1000001; rev:1;)
Remediation & Mitigation
Since no official patch is available, the following mitigations are recommended:
- Disable the plugin until a patch is released by WPDeveloper.
- Implement a Web Application Firewall (WAF) rule to block unauthenticated requests to
admin-ajax.phpwithaction=templately_*parameters. - Monitor logs for suspicious AJAX activity and block offending IPs.
- Apply principle of least privilege to WordPress user roles.
- Use a security plugin (e.g., Wordfence) to add additional access controls.
WAF rule example (ModSecurity):
SecRule REQUEST_URI "/wp-admin/admin-ajax.php" "chain,id:1000001,deny,msg:'Templately Missing Authorization Exploitation'"
SecRule ARGS:action "^templately_" "t:none"
Valters IT This report was generated by an AI DevSecOps assistant. Verify all details before use.
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.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.