CVE-2025-7781
📋 TL;DR
The WP JobHunt plugin for WordPress (used by JobCareer theme) has a stored XSS vulnerability in the 'cs_job_title' parameter. Authenticated attackers with Candidate-level access or higher can inject malicious scripts that execute when users view compromised pages. All WordPress sites using WP JobHunt plugin versions up to 7.6 are affected.
💻 Affected Systems
- WP JobHunt WordPress plugin
- JobCareer WordPress theme
⚠️ Manual Verification Required
This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.
Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).
🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Attackers could steal admin credentials, deface websites, redirect users to malicious sites, or install backdoors for persistent access.
Likely Case
Attackers with candidate accounts inject malicious scripts to steal session cookies or user data from visitors viewing job listings.
If Mitigated
With proper input validation and output escaping, malicious scripts would be neutralized before execution.
🎯 Exploit Status
Requires authenticated access (Candidate-level or higher). Attackers need to understand WordPress plugin structure and XSS payloads.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Version 7.7 or later
Vendor Advisory: https://themeforest.net/item/jobcareer-job-board-responsive-wordpress-theme/14221636
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find WP JobHunt plugin. 4. Click 'Update Now' if update available. 5. If no update available, download latest version from vendor. 6. Deactivate old plugin. 7. Upload and activate new version.
🔧 Temporary Workarounds
Input Sanitization Filter
WordPressAdd custom sanitization filter for cs_job_title parameter
Add to theme's functions.php: add_filter('pre_update_option_cs_job_title', 'sanitize_text_field');
🧯 If You Can't Patch
- Disable WP JobHunt plugin and use alternative job board functionality
- Implement Content Security Policy (CSP) headers to restrict script execution
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins → WP JobHunt version number
Check Version:
wp plugin list --name=wp-jobhunt --field=version
Verify Fix Applied:
Verify plugin version is 7.7 or higher. Test cs_job_title field with basic XSS payload like <script>alert('test')</script> to ensure sanitization.
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to job submission endpoints
- cs_job_title parameter containing script tags or JavaScript code
- Multiple failed login attempts followed by job submissions
Network Indicators:
- HTTP requests with encoded script tags in cs_job_title parameter
- Outbound connections to suspicious domains after viewing job listings
SIEM Query:
source="wordpress.log" AND ("cs_job_title" AND ("<script" OR "javascript:" OR "onerror="))