Security

How to Check What Joomla Version a Site Is Running

Joomla's meta tag tells you it's Joomla and nothing more. The version is hiding in an XML file anyone can read - here's where, and why it matters.

A
Andrew - Admin
about 1 month ago
2 min read

Joomla is the awkward one. Most CMSs stamp their version into the generator meta tag - Joomla stamps in its name and nothing else. So the trick here isn't reading the meta tag, it's knowing where Joomla does leak the version. Spoiler: it's a file anyone can open.

Quickest way: run a full scan

Point ScanTower's full scan at the URL and it goes straight for the source that actually has the number:

SignalSourceConfidenceValue
Version manifest/administrator/manifests/files/joomla.xml98 / 100Joomla 4.2.7

That manifest is the most reliable Joomla tell there is, and the scan then checks the release against published CVEs.

What the meta tag does and doesn't say

View source and you'll find this on almost every Joomla site:

<meta name='generator' content='Joomla! - Open Source Content Management' />

Useful for confirming it's Joomla. Useless for the version - there isn't one in there.

Where the version actually leaks

The reliable spot, readable without logging in despite the path, is the install manifest:

curl -s https://example.com/administrator/manifests/files/joomla.xml | grep -i version

That returns a <version> tag with the exact release. On Joomla 4 and 5 the /language/en-GB/langmetadata.xml file is a good backup, and older sites often still have /README.txt with the version at the top.

Why confidence isn't 100

A careful admin can block access to the manifest and language files. When they do, you fall back to fingerprinting the core JavaScript and template behaviour - less precise, but enough for a version range. The full scan handles that fallback automatically.

Why the version matters: CVEs

Joomla's version is really one question - has it been patched? A few that have done real damage:

CVETypeAffectedFixed in
CVE-2023-23752Unauthenticated info disclosure (leaks DB credentials via the API)4.0.0 - 4.2.74.2.8
CVE-2017-8917Pre-auth SQL injection3.7.03.7.1
CVE-2015-8562Unauthenticated remote code execution (object injection)1.5.0 - 3.4.53.4.6

CVE-2023-23752 is the one to take seriously today - it was mass-scanned within days and hands attackers the site's database credentials with a single unauthenticated request. And note that Joomla 3.x is end of life, so anything still on it gets no fixes. Confirm the exact range against the Joomla Security Centre before acting.

If it's your site

  • Update. Use the built-in Joomla Updater (System → Update). On Joomla 3, plan the move to 5 - it's past EOL.
  • Block the manifest and language XML files, or at least don't leave them world-readable.
  • Re-scan to confirm the version moved and the CVE flags cleared.

While you're at it, the security headers checker and HTTP security checker catch the misconfigurations that tend to come with an out-of-date CMS. On something else? Same write-ups for Drupal, Ghost and WordPress.

Frequently Asked Questions

1How do I check what version of Joomla a website is using?

The generator meta tag only confirms it's Joomla, not the version. The reliable source is /administrator/manifests/files/joomla.xml, which is readable without logging in and contains a <version> tag. ScanTower's full scan reads it for you and checks the version against known CVEs.

2Why doesn't Joomla's meta tag show the version?

By default Joomla's generator meta tag is just 'Joomla! - Open Source Content Management' with no version number. To find the actual release you need the joomla.xml manifest, the langmetadata.xml file (Joomla 4/5), or an old README.txt.

3What if joomla.xml is blocked?

Some admins restrict access to the manifest and language files. When that happens you can still estimate the version by fingerprinting Joomla's core JavaScript and template behaviour, which is what an automated scan falls back to - enough for a version range even without the manifest.

4Is an outdated Joomla site really at risk?

Yes. CVE-2023-23752 leaks database credentials to an unauthenticated attacker and was mass-exploited, and Joomla 3.x is end of life with no further security fixes. An unpatched Joomla site is a frequent target - confirm the specific advisory before treating it as exploitable.

Protect Your Website Today

Run a comprehensive security scan to detect malware, vulnerabilities, and security issues before they impact your business.