Updated Jul 14, 2026

Scanners

Scan confirmed Joomla hosts for CMS-specific flaws

OWASP Joomla vulnerability scanner for CMS flaws and misconfigurations.

Agent

overview

What joomscan does

joomscan is the OWASP Joomla scanner. Point --url at a Joomla install to fingerprint the version, enumerate components, and check known flaws plus admin and directory misconfigurations.

Enable --enumerate-components for third-party extensions. Pass a URL list with --mass. Soften traffic with --random-agent, --proxy, --cookie, or --timeout.

Trickest provides joomscan as a managed Scanners node. FILE and FOLDER reports out (text and HTML). Fingerprint with cmseek first; use wpscan for WordPress, nuclei for broad templates.

source github.com/OWASP/joomscan

use cases

Where joomscan fits

Scan a Joomla site for known flaws

Point joomscan at a Joomla URL to fingerprint the install and check it against known vulnerabilities and misconfigurations specific to the CMS.

Enumerate vulnerable components

Enable component enumeration so the scanner lists installed third-party extensions, the common source of exploitable Joomla bugs, and flags versions with known CVEs.

Sweep many Joomla installations

Pass a file of URLs with --mass so joomscan cycles through every host and reports per-site findings across an estate of Joomla deployments.

Blend in with agent and proxy controls

Rotate a random user agent and route through a proxy so the scan stays low-profile and you can inspect the requests it sends.

reference

joomscan inputs and flags

8 inputs
NameTypeFlagDescription
urlSTRING--urlThe Joomla URL or domain to scan.
enumerate-componentsBOOLEAN--enumerate-componentsTry to enumerate installed components.
urls-fileFILE--massCycle through URLs provided in a txt file.
random-agentBOOLEAN--random-agentUse a random User-Agent.
proxySTRING--proxyUse a proxy to connect to the target URL.
cookieSTRING--cookieSet a cookie to send with requests.
timeoutSTRING--timeoutSet the request timeout.

Showing key inputs. joomscan exposes 8 inputs in total.

Full flag reference (8 inputs)
NameTypeFlagDescription
urlSTRING--urlThe Joomla URL/domain to scan.
proxySTRING--proxyUse a proxy to connect to the target URL.
cookieSTRING--cookieSet cookie.
timeoutSTRING--timeoutSet timeout.
urls-fileFILE--massCycle through URLs provided in txt file.
user-agentSTRING--user-agentUse the specified User-Agent.
random-agentBOOLEAN--random-agentUse a random User-Agent.
enumerate-componentsBOOLEAN--enumerate-componentsTry to enumerate components.

example

Run joomscan

joomscan · command
# fingerprint the version and enumerate components with a random agentjoomscan --url https://example.com --enumerate-components --random-agent
sample output
Processing http://example.com ...[+] Detecting Joomla Version[++] Joomla 3.9.24[+] Core Joomla Vulnerability[++] Target Joomla core is not vulnerable[+] Checking Directory Listing[++] directory has directory listing: http://example.com/administrator/components[+] Enumerating Components ...[++] com_content, com_contact enumeratedYour Report : reports/example.com/

guidance

Choosing joomscan

Reach for joomscan when the target is confirmed Joomla and you want CMS-specific checks, not a generic web scan. Fingerprint first. Prefer wpscan for WordPress and cmseek when you still need to identify the CMS.

wpscan

WordPress-focused scanner. Use joomscan for Joomla, wpscan for WordPress.

cmseek

Detects which CMS a site runs. Confirm Joomla with cmseek before joomscan.

nuclei

Template-driven scanner with some Joomla templates. joomscan goes deeper on Joomla structure and components.

faq

joomscan questions

Pass the target with --url, for example `joomscan --url https://example.com`. On Trickest, set the node's url input instead of typing the flag.

Run joomscan yourself

A URL is fingerprinted by cmseek, then joomscan scans the confirmed Joomla host and writes a text and HTML report for triage.

Facts on this page come from the live Trickest tool library.