CVE-2024-10104 is a critical Stored Cross-Site Scripting (XSS) vulnerability affecting the Jobs for WordPress plugin, widely used to manage and display job postings on WordPress sites. This vulnerability allows users with Contributor or higher permissions to inject malicious JavaScript (JS) code into the job posting settings, specifically in the “Working Hours” field. Once exploited, the vulnerability can lead to admin account takeovers, unauthorized backdoor installations, and long-term control over the WordPress site.

CVECVE-2024-10104
PluginJobs for WordPress < 2.7.8
CriticalHigh
All Time182 878
Active installations10 000+
Publicly PublishedOctober 28, 2024
Last UpdatedOctober 28, 2024
ResearcherArtyom Krugov
OWASP TOP-10A7: Cross-Site Scripting (XSS)
PoCYes
ExploitNo
Reference https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-10104
https://wpscan.com/vulnerability/f0a9c8ae-f2cf-4322-8216-4778b0e37a48/
Plugin Security Certification by CleanTalk
Logo of the plugin

Timeline

September 24, 2024Plugin testing and vulnerability detection in the  Jobs for WordPress have been completed
September 24, 2024I contacted the author of the plugin and provided a vulnerability PoC with a description and recommendations for fixing
October 28, 2024Registered CVE-2024-10104

Discovery of the Vulnerability

During testing of the Jobs for WordPress plugin, a vulnerability was discovered, due to which users with author rights can enter malicious JavaScript into certain fields. This discovery shows that low-privilege roles can still reveal serious security gaps on WordPress sites. After entering malicious code in the “Opening Hours” field, the payload is activated during the preview, which can lead to the compromise of administrator accounts and other confidential site data.

Understanding of XSS attack’s

Stored XSS code occurs when malicious scripts are permanently stored on the server. After saving, the code runs on any page where it is embedded. In WordPress, XSS attacks with data retention often occur due to plugins that allow you to enter custom code, which allows attackers to enter malicious code that is then used by the site for other users. Real-world examples demonstrate how attackers used similar vulnerabilities to install backdoors, steal session cookies, or distort web pages. Vulnerability CVE-2024-10104 of the Job for WordPress plugin allows for similar exploitation, since users can inject malicious JavaScript that can be executed by unsuspecting administrators.

Exploiting the XSS Vulnerability

Exploiting the vulnerability CVE-2024-10104 includes the following steps:

POC:

  1. A user logs in with Contributor rights and accesses the Jobs panel.
  2. The user creates a new job posting, adding text and a malicious payload encoded in HTML to the “Working Hours” field.
  3. Once saved, the payload is stored in the WordPress database.
  4. When an administrator previews the job listing, the payload is executed, enabling an attacker to gain unauthorized access or perform actions on behalf of the administrator.

Proof of Concept (PoC) Payload:

"&gt;&lt;script&gt;&lt;/script&gt;&lt;img src=x onerror=alert(1)&gt;

____

Successful exploitation of the CVE-2024-10104 vulnerability from the Contributor+ role can lead to the interception of the administrator account, the constant creation of a backdoor or unauthorized manipulation of the site content. For businesses or websites that use Jobs for WordPress to manage user interaction, this vulnerability can lead to data theft, site corruption, or even the spread of malware.

In real-world situations, attackers can exploit this vulnerability to completely hijack a website and then. Creating permanent backdoors allows attackers to maintain control over the site even after the initial vulnerability has been eliminated.

Recommendations for Improved Security

To prevent exploitation of the CVE-2024-10104 vulnerability, WordPress administrators should update the Jobs for WordPress plugin to the latest version as soon as the patch is released.

Administrators should review user roles and permissions by limiting the ability of authors or editors to insert unfiltered HTML or JavaScript. Installing a security plugin that monitors hacking attempts and blocks suspicious scripts can provide an additional layer of protection. Regular security checks and plugin updates are necessary to prevent similar vulnerabilities in the future.

By taking proactive measures to address Stored XSS vulnerabilities like CVE-2024-10104, WordPress website owners can enhance their security posture and safeguard against potential exploitation. Stay vigilant, stay secure.

#WordPressSecurity #StoredXSS #WebsiteSafety #StayProtected #HighVulnerability

Use CleanTalk solutions to improve the security of your website

Artyom k.
CVE-2024-10104 – Jobs for WordPress – Stored XSS to Backdoor Creation – POC

Leave a Reply

Your email address will not be published. Required fields are marked *